分类算法中的ROC与PR指标
本文轉(zhuǎn)自:http://blog.csdn.net/xiahouzuoxin/article/details/43165253
做過圖像識別、機器學(xué)習(xí)或者信息檢索相關(guān)研究的人都知道,論文的實驗部分都要和別人的算法比一比。可怎么比,人多嘴雜,我說我的方法好,你說你的方法好,各做各的總是不行——沒規(guī)矩不成方圓。于是慢慢的大家就形成了一種約定,用ROC曲線和PR曲線來衡量算法的優(yōu)劣。關(guān)于ROC曲線和PR曲線的詳細(xì)介紹可參考資料:
有這3份資料足以,應(yīng)用分析和理論分析都講得很不錯。
基本概念
接著往下做做小學(xué)的計算題:
- TP+FP+FN+FN:特征總數(shù)(樣本總數(shù))
- TP+FN:實際正樣本數(shù)
- FP+TN:實際負(fù)樣本數(shù)
- TP+FP:預(yù)測結(jié)果為正樣本的總數(shù)
- TN+FN:預(yù)測結(jié)果為負(fù)樣本的總數(shù)
有些繞,為做區(qū)分,可以這樣記:相同的后綴(P或N)之和表示__預(yù)測__正樣本/負(fù)樣本總數(shù),前綴加入T和F;實際樣本總數(shù)的4個字母完全不同,含TP(正正得正)表示實際正樣本,含F(xiàn)P(負(fù)正得負(fù))表示實際負(fù)樣本。
ROC曲線和PR曲線
True Positive Rate(TPR)和False Positive Rate(FPR)分別構(gòu)成ROC曲線的y軸和x軸。
實際學(xué)習(xí)算法中,預(yù)測率100%的話,TPR=100%和FPR=0,所以TPR越大而FPR越小越好。僅用其中一個作為衡量指標(biāo)可以嗎?考慮這么一種情況,一幅圖片假如600x480個像素,其中目標(biāo)(正樣本)僅有100個像素,假如有某種算法,預(yù)測的目標(biāo)為包含所有像素600x480,這種情況下TPR的結(jié)果是TPR=100%,但FPR卻也接近于100%。明顯,TPR滿足要求但結(jié)果卻不是我們想要的,因為FPR太高了。
Precision和Recall(有人中文翻譯成召回率)則分別構(gòu)成了PR曲線的y軸和x軸。
同理,Precision和Recall同時考慮才能確定算法好壞。好了,原來一切盡在盡在下圖中,
圖:Confusion Matrix
既然ROC和PR都是同時要考慮兩個指標(biāo),一個我好一個你好,到底誰好?畫到ROC空間一看便知,如下圖,將TPR和FPR分別畫在兩個坐標(biāo)軸上,則沿著對角線的方向,離右上角越近,算法效果越好。(由于ROC和PR類似,以下僅討論ROC空間和ROC曲線。)
圖:ROC空間
一個分類算法,找個最優(yōu)的分類效果,對應(yīng)到ROC空間中的一個點。通常分類器的輸出都是Score,比如SVM、神經(jīng)網(wǎng)絡(luò),有如下的預(yù)測結(jié)果:
| 1 | p | Y | 0.99999 |
| 2 | p | Y | 0.99999 |
| 3 | p | Y | 0.99993 |
| 4 | p | Y | 0.99986 |
| 5 | p | Y | 0.99964 |
| 6 | p | Y | 0.99955 |
| 7 | n | Y | 0.68139 |
| 8 | n | Y | 0.50961 |
| 9 | n | N | 0.48880 |
| 10 | n | N | 0.44951 |
True表示實際樣本屬性,Hyp表示預(yù)測結(jié)果樣本屬性,第4列即是Score,Hyp的結(jié)果通常是設(shè)定一個閾值,比如上表就是0.5,Score>0.5為正樣本,小于0.5為負(fù)樣本,這樣只能算出一個ROC值,為更綜合的評價算法的效果,通過取不同的閾值,得到多個ROC空間的值,將這些值描繪出ROC空間的曲線,即為ROC曲線。
圖:ROC曲線繪制
我們只要明白這個基本的點,詳細(xì)的ROC曲線繪制已經(jīng)有很多代碼了,資料1就提供了Prel直接根據(jù)Score繪制ROC曲線的代碼,Matlab也有,下載鏈接:
有了ROC曲線,更加具有參考意義的評價指標(biāo)就有了,在ROC空間,算法繪制的ROC曲線越凸向西北方向效果越好,有時不同分類算法的ROC曲線存在交叉,因此很多文章里用AUC(即Area Under Curve曲線下的面積)值作為算法好壞的評判標(biāo)準(zhǔn)。關(guān)于這里的凸理論可參考文章開頭的[資料2]。
與ROC曲線左上凸不同的是,PR曲線是右上凸效果越好,下面是兩種曲線凸向的簡單比較:
圖:算法在ROC空間與PR空間的不同比較
作為衡量指標(biāo),選擇ROC或PR都是可以的。但是資料3顯示,ROC和PR雖然具有相同的出發(fā)點,但并不一定能得到相同的結(jié)論,在寫論文的時候也只能參考著別人已有的進行選擇了。
R2 評價指標(biāo)
準(zhǔn)確測量機器學(xué)習(xí)模型的誤差
Accurately Measuring Model Prediction Error
總結(jié)
以上是生活随笔為你收集整理的分类算法中的ROC与PR指标的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: stm32的RCC系统时钟配置 以及RC
- 下一篇: 从服务器上传和下载文件方法