gpt4 book ai didi

python - XGBClassifier num_class 无效

转载 作者:太空狗 更新时间:2023-10-29 23:58:08 30 4
gpt4 key购买 nike

我正在使用 XGBClassifier(在 xgboost 中)进行多类分类。执行分类器后,我收到一条错误消息:

unexpected keyword argument 'num_class'

导致此错误的代码如下(params 是 xgb 的一组有效参数):

xgb.XGBClassifier(params, num_class=100)

我搜索了一下,发现“num_class”参数被命名为“n_classes”,用于 XGBClassifier 的 scikit 实现。我尝试了此更改并收到了类似的错误:

unexpected keyword argument 'n_classes'

下面列出了导致此错误的代码:

xgb.XGBClassifier(params, num_class=100)

感谢任何修复此错误的帮助!

最佳答案

在 Sklearn XGB API 中,您不需要明确指定 num_class 参数。如果目标超过 2 个级别,XGBClassifier 会自动切换到多类分类模式。

evals_result = {}
self.classes_ = list(np.unique(y))
self.n_classes_ = len(self.classes_)

if self.n_classes_ > 2:
# Switch to using a multiclass objective in the underlying XGB instance
xgb_options["objective"] = "multi:softprob"
xgb_options['num_class'] = self.n_classes_

在这里查看完整的源代码:https://github.com/dmlc/xgboost/blob/master/python-package/xgboost/sklearn.py

关于python - XGBClassifier num_class 无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35384977/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com