使用XGBoost根据输入预测重要性或百分比

时间:2017-05-30 16:05:22

标签: python pandas machine-learning xgboost

我正致力于解释我的XGBoost模型。例如,下面的两个数据集trainInputtrainOutput分别为:

df.trainInputs
    input1 input2 input3
0      1     0      0
1      1     1      0
2      0     1      1
..

df.trainOutputs
      output
0       1   
1       0
2       1
...

用户输入已经过热编码,输出数据是用户输出模式列表。我正在使用这些模型训练我的XGBoost模型,然后根据来自另一个数据集的单热编码用户输入数据的另一个矩阵进行预测。我希望检索列的每个元素的百分比分数,但在运行我的模型时,我只接收二进制输出。在构建我的模型时是否有一些我缺少的东西?相关代码:

df.predictInputs
    input1 input2 input3
0      1     1      0
1      1     0      0
2      1     0      1
..

model = xgb.XGBClassifier()
model.fit(trainInputs, trainOutput)
y_pred = model.predict(predictOutput)

1 个答案:

答案 0 :(得分:3)

如果您想获得结果概率(每个元素的百分比分数),请使用predict_proba代替predict