繪製 ROC 曲線
正如你在影片中看到的,ROC 曲線是一個非常實用的捷徑,可以彙整分類器在所有可能閾值下的表現。這能省去你為許多不同閾值計算類別預測,並逐一檢視混淆矩陣的繁瑣工作。
我最喜歡用來計算 ROC 曲線的套件是 caTools,其中包含一個叫做 colAUC() 的函式。這個函式相當好用,甚至可以一次為多個預測變數計算 ROC 曲線。在這裡,你只需要為一個預測變數計算 ROC 曲線,例如:
colAUC(predicted_probabilities, actual, plotROC = TRUE)
這個函式會回傳稱為 AUC 的分數(稍後會再介紹),而 plotROC = TRUE 參數會繪出 ROC 曲線,方便你視覺化檢查。
本練習屬於課程
使用 R 的 caret 進行 Machine Learning
練習說明
使用上個練習中的 sonar 資料所建立的 model、test 和 train 已載入到你的工作空間。
- 在測試集上預測機率(也就是
type = "response"),並將結果存成p。 - 使用測試集的預測機率繪製 ROC 曲線。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Predict on test: p
# Make ROC curve