TypeError: XGBClassifier.predict() got an unexpected keyword argument ‘ntree_limit‘ 的解决方案记录

报错代码及提示如下图:

       查阅了各类问答和博客没有找到具体的报错解决方法,没有找到同样的问题博客,意识到可能是安装xgboost版本的问题。查看了安装的版本对应的版本说明,发现是安装的新版本2.0.3已将 ntree_limit 数参删除。

       查阅版本信息Python API Reference — xgboost 2.0.3 documentation,如下:

       可以看到ntree_limit已被删除。

       ntree_limit (默认: 0),限制用于预测的树的数量。若设为 0(默认),则使用所有已训练的树进行预测。非零值表示只使用前 ntree_limit 棵树进行预测。

       iteration_range (默认: (0, num_boosted_rounds),限制用于预测的树的范围。(start, end) 表示从第 start 棵树开始,直到第 end - 1 棵树结束(包含 start,不包含 end)。

       用iteration_range=(0, result.best_iteration)代替ntree_limit=result.best_iteration,问题解决。

猜你喜欢

转载自blog.csdn.net/linghyu/article/details/138821635