我正在尝试通过多类分类问题(Kaggle 的 Otto Group 产品分类)来学习 XGB。我不断收到以下错误
XGBoostError: [04:49:48] ../include/xgboost/objective.h:98: multioutput is not supported by current objective function
这是我的代码:
import xgboost as xgb
params = {
'objective': 'multi:softmax',
'num_class': 9,
'max_depth': 5,
'learning_rate': 0.1,
'subsample': 0.8,
'colsample_bytree': 0.8,
'seed': 42
}
dtrain = xgb.DMatrix(X_train, label=y_train)
num_rounds = 100
xgb_model = xgb.train(params, dtrain, num_rounds)
X_train 是一个 50,000 x 93 的数据框,y_train 是一个 50,000 x 9 的 numpy 区域。此外,y_train 是代表 9 个类别的单热编码数组。
我不确定为什么会出现多输出错误,因为这不是多输出问题。