就我而言,XGBoost支持使用softmax等目标函数进行多类预测。
在我的情况下,我希望它输出几个标签(浮点数)并最小化它们的MAPE。它可行吗?我该怎么做才能实现这一目标? (比方说,如何在第一时间构建带有多个标签的DMatrix。)
答案 0 :(得分:0)
data = numpy.array([[1,2,3],[3,4,5]])
label = numpy.array([[0.2,0.1], [0.3,0.4]])
dtrain = xgb.DMatrix(data, label=label)
param = {'gamma':2.0,'nthread':8, 'max_depth':15, 'eta':0.000000003, 'silent':1, 'objective':'multi:softprob', 'eval_metric':'auc' ,'num_class':105}
bst = xgb.train(param, dtrain, num_round)