開始使用免費開始

Precision、ROI 與 AUC

投資報酬率(ROI)可以拆解為精確率乘上回報與成本的比值。如同先前討論,即便 ROC 曲線的 AUC 很高,模型的精確率仍可能很低。若精確率低,ROI 也會偏低。在這個練習中,你會使用 MLP 來計算一個範例 ROI。假設 r 為每一定曝光次數的每次點擊回報、cost 為每一定曝光次數的成本,並搭配精確率與 ROC 曲線的 AUC 值,來檢視三者如何變動。

你的工作環境中已提供 X_trainy_trainX_testy_test,以及作為 MLP 分類器的 clf、儲存在 y_score 的機率分數與 y_pred 的預測標的。pandas 已以 pd 載入,sklearn 也可使用。

本練習屬於課程

用 Python 透過機器學習預測 CTR

檢視課程

練習說明

  • 計算 MLP 分類器的精確率 prec
  • 依據精確率 prec 計算總 ROI。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Get precision and total ROI
prec = ____(y_test, ____, average = 'weighted')
r = 0.2
cost = 0.05 
roi = ____ * r / cost

# Get AUC
roc_auc = roc_auc_score(y_test, y_score[:, 1])

print("Total ROI: %s, Precision: %s, AUC of ROC curve: %s" %(
  roi, prec, roc_auc))
編輯並執行程式碼