作者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/m.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