美文网首页
xgboost4j-spark中碰到not found key:

xgboost4j-spark中碰到not found key:

作者: NatsuYori | 来源:发表于2020-09-10 20:09 被阅读0次

先说解决方案:把xgboost model的num_worker参数调小。

这个问题是在本地测试xgb时候碰到的,之前code在分布式集群上面测试过了,并没有问题。
bug诡异,所以查了一波几乎没有答案,只有一个,说可能是某个partition上data size为0。于是把问题定位在partition不合适上,但是本地partition不合适…emm觉得可能是df的partition分的太大了,而本地测试为了run起来只用了很少量的数据导致的,于是拼命在repartition的时候设置超小的值,but it doesn't work...
调了好半天发现是xgb的num_worker这个参数设置太大了。xgb中num_worker这个参数是表示模型在run的时候,会并行跑多少个worker,而每个worker起码是会分配到一个partition的。所以partition设置的越小,反而越多worker没有数据,嗷嗷待哺。

相关文章

网友评论

      本文标题:xgboost4j-spark中碰到not found key:

      本文链接:https://www.haomeiwen.com/subject/hbfmektx.html