機器學習ROC圖解讀


1. 分類器評估指標

對於二分類問題,可將樣例根據其真實類別和分類器預測類別划分為:
真正例(True Positive,TP):真實類別為正例,預測類別為正例。
假正例(False Positive,FP):真實類別為負例,預測類別為正例。
假負例(False Negative,FN):真實類別為正例,預測類別為負例。
真負例(True Negative,TN):真實類別為負例,預測類別為負例。

2. 精確度,召回率,真陽性,假陽性

精確度( precision ):TP / ( TP+FP ) = TP / P  

召回率(recall):TP / (TP + FN ) = TP / T

真陽性率(True positive rate):TPR = TP / ( TP+FN ) = TP / T  (敏感性 sensitivity)

假陽性率(False positive rate):FPR = FP / ( FP + TN ) = FP / F  (特異性:specificity)

准確率(Accuracy):Acc = ( TP + TN ) / ( P +N )

F-measure:2*recall*precision / ( recall + precision )

ROC曲線:FPR為橫坐標,TPR為縱坐標

PR曲線:recall為橫坐標,precision 為縱坐標

 

3. ROC圖

 

  • 縱坐標是true positive rate(TPR)  = TP / (TP+FN=P) (分母是橫行的合計)直觀解釋:實際是1中,猜對多少
  • 橫坐標是false positive rate(FPR) = FP / (FP+TN=N)  直觀解釋:實際是0中,錯猜多少

4. AUC

AUC(Area Under Curve),就是這條ROC曲線下方的面積了。越接近1表示分類器越好。 但是,直接計算AUC很麻煩,但由於其跟Wilcoxon-Mann-Witney Test等價,所以可以用這個測試的方法來計算AUC。Wilcoxon-Mann-Witney Test指的是,任意給一個正類樣本和一個負類樣本,正類樣本的score有多大的概率大於負類樣本的score(score指分類器的打分)。

隨着FPR的上升,ROC曲線從原點(0, 0)出發,最終都會落到(1, 1)點。ROC便是其右下方的曲線面積。下圖展現了三種AUC的值:

AUC = 1,是完美分類器,采用這個預測模型時,不管設定什么閾值都能得出完美預測。絕大多數預測的場合,不存在完美分類器。

0.5 < AUC < 1,優於隨機猜測。這個分類器(模型)妥善設定閾值的話,能有預測價值。

AUC = 0.5,跟隨機猜測一樣(例:丟銅板),模型沒有預測價值。

AUC < 0.5,比隨機猜測還差;但只要總是反預測而行,就優於隨機猜測,因此不存在AUC < 0.5的情況

AUC對於每一個做機器學習的人來說一定不陌生,它是衡量二分類模型優劣的一種評價指標,表示正例排在負例前面的概率。其他評價指標有精確度、准確率、召回率,而AUC比這三者更為常用。因為一般在分類模型中,預測結果都是以概率的形式表現,如果要計算准確率,通常都會手動設置一個閾值來將對應的概率轉化成類別,這個閾值也就很大程度上影響了模型准確率的計算。

 我們不妨舉一個極端的例子:一個二類分類問題一共10個樣本,其中9個樣本為正例,1個樣本為負例,在全部判正的情況下准確率將高達90%,而這並不是我們希望的結果,尤其是在這個負例樣本得分還是最高的情況下,模型的性能本應極差,從准確率上看卻適得其反。而AUC能很好描述模型整體性能的高低。這種情況下,模型的AUC值將等於0(當然,通過取反可以解決小於50%的情況,不過這是另一回事了)。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM