【发布时间】:2019-12-01 15:33:19
【问题描述】:
我正在尝试使用此方法https://stackoverflow.com/a/44117716/11102206 预测 24 个变量,但我收到 ValueError: Multioutput target data is not supported with label binarization。任何帮助
X_train, X_val, y_train, y_val = train_test_split(X, y, test_size = 0.2,
random_state = 669)
params = {
'n_estimators': 10,
'max_depth': 8,
}
xgbc = xgb.XGBClassifier(**params)
ova_xgbc = OneVsRestClassifier(xgbc)
ova_xgbc.fit(X_train, y_train)
ova_preds = ova_xgbc.predict(X_val)
【问题讨论】:
-
能否给出y_train/y_val的数据(格式)?
-
嗨 Zealseeker 它是 pandas.core.frame.DataFrame
-
没有。我只是怕你没有区分多类和多标签。我猜你的一个样本的 y 就像 [2,4] 或 [0,1,0,1,...]。它是多标签的。请看我的回答
-
它是 Multilabel ,但据我所知 OneVsRest 也可以用于 Multilabel 问题,但我肯定在这里做了一些愚蠢的事情,我对此一无所知。不过还是谢谢你...
标签: python xgboost multilabel-classification