ROC 曲線
ROC 曲線 (接收器工作特性曲線) 圖表會顯示所有分類門檻的所有分類模型效能。此曲線繪製了兩個參數:
- 真陽率
- 偽陽率
真陽率 (TPR) 是喚回度的同義詞,定義如下:
偽陽率 (FPR) 的定義如下:
ROC 曲線會在不同的分類門檻中繪製 TPR 和 FPR 的比較。降低分類門檻後,系統會將更多項目分類為正數,同時增加偽陽性和真陽性。下圖顯示一般 ROC 曲線。
圖 4. 各個分類門檻的 TP 和 FP 費率。
如要計算 ROC 曲線中的點,我們可以用不同的分類門檻多次評估邏輯迴歸模型,但這樣做效率不彰。幸好,有一種效率極高的排序型演算法可以為我們提供這些資訊,稱為 AUC。
AUC:ROC 曲線下的區域
AUC 代表 ROC 曲線下的「區域」。也就是說,AUC 會測量從 0,0 到 (1,1) 的整個 ROC 曲線下方的整個二維面積 (考慮為積分計算)。
圖 5. AUC (ROC 曲線下的區域)。
AUC 可針對所有可能的分類門檻進行效能匯總測量。解讀 AUC 的一種方式,是模型將隨機正向排名高於隨機排除範例的機率。例如,假設以下範例按照邏輯迴歸預測的順序從左到右排列:
圖 6. 預測結果會按照邏輯迴歸分數的遞增順序排序。
AUC 代表隨機正值 (綠色) 範例放置於隨機負值 (紅色) 範例右側的機率。
AUC 的值範圍介於 0 到 1 之間。預測值為 100% 的模型的 AUC 為 0.0;預測為 100% 的模型的 AUC 為 1.0。
AUC 非常適合以下兩種原因:
- AUC 是 scale-invariant。用於衡量預測的排名,而非其絕對值。
- AUC 為 classification-threshold-invariant。無論選擇何種分類閾值,該模型都會測量模型預測的品質。
但是,這兩個原因都提醒了這一點,這可能會導致 AUC 在特定用途中的實用性受限:
體重計的不變性不一定是您想要的。例如,我們有時需要經過大量校正的輸出輸出,而 AUC 無法告訴我們這些資訊。
分類閾值不見得是最佳選擇。如果偽陰性費用與偽陽性的費用差距很大,則最好盡量減少一種分類錯誤。舉例來說,在偵測垃圾電子郵件時,您可能會想要盡量減少偽陽性 (即使最終導致誤判情況大幅增加)。AUC 不是這類最佳化的實用指標。