Python XGBoost-在多点之后获取概率:softmax函数

Python XGBoost-在多点之后获取概率:softmax函数,python,xgboost,xgbclassifier,Python,Xgboost,Xgbclassifier,我有一个关于xgboost和multiclass的问题。我没有使用sklearn包装器,因为我总是在处理一些参数。我正在研究是否有可能得到概率向量加上softmax输出。以下是我的代码: param = {} param['objective'] = 'multi:softmax' param['booster'] = 'gbtree' param['eta'] = 0.1 param['max_depth'] = 30 param['silent'] = 1 param['nthread']

我有一个关于xgboost和multiclass的问题。我没有使用sklearn包装器,因为我总是在处理一些参数。我正在研究是否有可能得到概率向量加上softmax输出。以下是我的代码:

param = {}
param['objective'] = 'multi:softmax'
param['booster'] = 'gbtree'
param['eta'] = 0.1
param['max_depth'] = 30
param['silent'] = 1
param['nthread'] = 4
param['num_round'] = 40
param['num_class'] = len(np.unique(label)) + 1   
model = xgb.train(param, dtrain)                                    
# predict                                                                                   
pred = model.predict(dtest)

我希望能够调用像
predict\u proba
这样的函数,但我不知道这是否可行。许多答案(例如:)建议使用sklearn包装器,但是,我希望使用常规的训练方法。

如果使用
param['objective']='multi:prob'
而不是
param['objective']='multi:softmax'
,则分类器的结果是每个类的概率

请参阅此处的文档: