作者ctr1 (【积π】)
看板Python
标题[问题] XGBoost 绘制 ROC Curve
时间Wed May 27 09:18:56 2020
使用sklearn的xgboost绘制
ROC Curve没问题
#XGBoost
xgb = xgb.fit(X_train,y_train)
#预测分类的概率
y_pred_xgb = xgb.predict_proba(X_test)[:, 1]
fpr_xgb, tpr_xgb, _ = roc_curve(y_test, y_pred_gbdt)
想请问若是使用
import xgboost as xgb
训练是用bst = xgb.train(param, dtrain, num_round)
这种的xgboost要怎麽计算出他每个分类的概率
而不是预测出的结果
才可以绘制ROC Curve
感谢了
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.137.208.158 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1590542338.A.D5A.html
1F:→ tsoahans: 不是一样吗? 多类别就改成predict_proba(X_test)[:,i] 05/27 12:39
2F:→ ctr1: 'Booster' object has no attribute 'predict_proba' 05/27 14:00
3F:→ ctr1: 原生的xgboost非sklearn下的 05/27 14:00
4F:→ mirror0227: 就用 sklearn API 不就好了 05/27 14:21
5F:→ tsoahans: 那直接呼叫predict就是机率了 05/27 14:57
6F:推 cspy: 建模用的输入x去预测y 在跟实际y结果比对就可以算机率 05/28 07:29
7F:推 aidansky0989: 跟画pr一样,tp, fp,sns 05/28 07:58