1. 程式人生 > >理解分類模型評價指標AUC

理解分類模型評價指標AUC

 

ROC(Receiver Operating Characteristic)   受試者工作特性曲線

縱軸TPR(真正例率)和橫軸FPR(假正例率)分別為

TPR=\frac{TP}{TP+FN}

FPR=\frac{FP}{FP+TN}

對於二分類問題,預測模型會對每一個樣本預測一個概率p。 然後,可以選取一個閾值t,讓p>t的樣本預測為正,反之為負。 這樣一來,根據預測的結果和實際的樣本標籤可以把樣本分為4類

  實際正樣本 實際負樣本
預測為正 TP(真正例) FP(假正例)
預測為負 FN(假負例) TN(真負例)

 

若一個學習器的ROC曲線被另一個學習器的曲線完全“包住”,則可以斷言後者的效能優於前者;若兩個學習器發生交叉,則難以斷言哪個好哪個差,此時較為合理的評判標準是ROC下的面積,即AUC。

 

AUC(Area Under ROC Curve)   ROC曲線下的面積

AUC的幾何意義:

對ROC曲線下的各部分面積求和得到。

AUC的概率意義:

隨機取出一個正樣本和一個負樣本,放入分類器中進行判別輸出相應的為正的概率。

那麼(正樣本為正的概率)>(負樣本為正的概率)的可能性即AUC。

記P為出現(正樣本為正的概率)>(負樣本為正的概率)的可能的次數

一堆已知正負的樣本(假設正樣本M個,負樣本N個)

隨機取一對正負樣本的可能性有M*N對,則AUC=P/M*N。

 

接下來就是求P。

求出所有樣本放入分類器後產生其可能為正的概率,對這個概率進行降序排列

記rank_x為在整個(M+N)中輸出概率排名為rank_x的正樣本的秩,x是單純在正樣本輸出概率中進行升序排列的秩。

則在這個樣本排名

之後(比此樣本概率小)正樣本有M-X個,

之前(比此樣本概率大)有M-(M-X)-1=X-1個;

之前的負樣本有(M+N-rank_x)-(X-1),

之後的負樣本有N-[(M+N-rank_x)-(X-1)]=rank_x-(M-X+1)。

P就是所有(正樣本為正的概率)>(負樣本為正的概率)的可能組合個數,

以上訴例子來講,就是對M個正樣本而言,每次比較排名在它之後的樣本個數

P=\sum_{X=1}^{M}rank_x-(M-X+1)

後面那項是等差數列,代入AUC公式化簡一下就是知乎博主小小丘貼出的最後公式

AUC=\frac{\sum_{ins_{i}\in positiveclass}rank_{ins_{i}}-\frac{M*(M+1)}{2}}{M*N}

 

 

參考:

小小丘知乎答案

周志華的西瓜書