作者:努力的孔子
對模型進行評估時,可以選擇很多種指標,但不同的指標可能得到不同的結(jié)果,如何選擇合適的指標,需要取決于任務(wù)需求。
正確率與錯誤率
正確率:正確分類的樣本數(shù)/總樣本數(shù),accuracy
錯誤率:錯誤分類的樣本數(shù)/總樣本數(shù),error
正確率+錯誤率=1
這兩種指標最簡單,也最常用
缺點
不一定能反應(yīng)模型的泛化能力,如類別不均衡問題。
不能滿足所有任務(wù)需求
如有一車西瓜,任務(wù)一:挑出的好瓜中有多少實際是好瓜,任務(wù)二: 所有的好瓜有多少被挑出來了,顯然正確率和錯誤率不能解決這個問題。
查準率與查全率
先認識幾個概念
正樣本/正元組:目標元組,感興趣的元組
負樣本/負元組:其他元組
對于二分類問題,模型的預(yù)測結(jié)果可以劃分為:真正例 TP、假正例 FP、真負例 TN、 假負例 FN,
真正例就是實際為正、預(yù)測為正,其他同理
顯然 TP+FP+TN+FN=總樣本數(shù)
混淆矩陣
把上面四種劃分用混淆矩陣來表示
從而得出如下概念
查準率:預(yù)測為正里多少實際為正,precision,也叫精度
查全率:實際為正里多少預(yù)測為正,recall,也叫召回率
查準率和查全率是一對矛盾的度量。通常來講,查準率高,查全率就低,反之亦然。
例如還是一車西瓜,我希望將所有好瓜盡可能選出來,如果我把所有瓜都選了,那自然所有好瓜都被選了,這就需要所有的瓜被識別為好瓜,此時查準率較低,而召回率是100%,
如果我希望選出的瓜都是好瓜,那就要慎重了,寧可不選,不能錯選,這就需要預(yù)測為正就必須是真正例,此時查準率是100%,查全率可能較低。
注意我說的是可能較低,通常如果樣本很好分,比如正的全分到正的,負的全分到負的,那查準率、查全率都是100%,不矛盾。
P-R曲線
既然矛盾,那兩者之間的關(guān)系應(yīng)該如下圖
這條曲線叫 P-R曲線,即查準率-查全率曲線。
這條曲線怎么畫出來的呢?可以這么理解,假如我用某種方法得到樣本是正例的概率(如用模型對所有樣本進行預(yù)測),然后把樣本按概率排序,從高到低
如果模型把第一個預(yù)測為正,其余預(yù)測為負,此時查準率為1,查全率接近于0,
如果模型把前2個預(yù)測為正,其余預(yù)測為負,此時查準率稍微降低,查全率稍微增加,
依次...
如果模型把除最后一個外的樣本預(yù)測為正,最后一個預(yù)測為負,那么查準率很低,查全率很高。
此時我把數(shù)據(jù)順序打亂,畫出來的圖依然一樣,即上圖。
既然查準率和查全率互相矛盾,那用哪個作為評價指標呢?或者說同時用兩個指標怎么評價模型呢?
兩種情形
如果學(xué)習(xí)器A的P-R曲線能完全“包住”學(xué)習(xí)器C的P-R曲線,則A的性能優(yōu)于C
如果學(xué)習(xí)器A的P-R曲線與學(xué)習(xí)器B的P-R曲線相交,則難以判斷孰優(yōu)孰劣,此時通常的作法是,固定查準率,比較查全率,或者固定查全率,比較查準率。
通常情況下曲線會相交,但是人們?nèi)韵M褍蓚€學(xué)習(xí)器比出個高低,一個合理的方式是比較兩條P-R曲線下的面積。
但是這個面積不好計算,于是人們又設(shè)計了一些其他綜合考慮查準率查全率的方式,來替代面積計算。
平衡點:Break-Event Point,簡稱BEP,就是選擇 查準率=查全率 的點,即上圖,y=x直線與P-R曲線的交點
這種方法比較暴力
F1 與 Fβ 度量
更常用的方法是F1度量
即 F1 是 P 和 R 的調(diào)和平均數(shù)。
與算數(shù)平均數(shù) 和 幾何平均數(shù)相比,調(diào)和平均數(shù)更重視較小值。
在一些應(yīng)用中,對查準率和查全率的重視程度有所不同。
例如商品推薦系統(tǒng),為了避免騷擾客戶,希望推薦的內(nèi)容都是客戶感興趣的,此時查準率比較重要,
又如資料查詢系統(tǒng),為了不漏掉有用信息,希望把所有資料都取到,此時查全率比較重要。
此時需要對查準率和查全率進行加權(quán)
即 P 和 R 的加權(quán)調(diào)和平均數(shù)。
β>0,β度量了查全率對查準率的重要性,β=1時即為F1
β>1,查全率更重要,β<1,查準率更重要
多分類的F1
多分類沒有正例負例之說,那么可以轉(zhuǎn)化為多個二分類,即多個混淆矩陣,在這多個混淆矩陣上綜合考慮查準率和查全率,即多分類的F1
方法1
直接在每個混淆矩陣上計算出查準率和查全率,再求平均,這樣得到“宏查準率”,“宏查全率”和“宏F1”
方法2
把混淆矩陣中對應(yīng)元素相加求平均,即 TP 的平均,TN 的平均,等,再計算查準率、查全率、F1,這樣得到“微查準率”,“微查全率”和“微F1”
ROC 與 AUC
很多學(xué)習(xí)器是為樣本生成一個概率,然后和設(shè)定閾值進行比較,大于閾值為正例,小于為負例,如邏輯回歸。
而模型的優(yōu)劣取決于兩點:
這個概率的計算準確與否
閾值的設(shè)定
我們把計算出的概率按從大到小排序,然后在某個點劃分開,這個點就是閾值,可以根據(jù)實際任務(wù)需求來確定這個閾值,比如更重視查準率,則閾值設(shè)大點,若更重視查全率,則閾值設(shè)小點,
這里體現(xiàn)了同一模型的優(yōu)化,
不同的模型計算出的概率是不一樣的,也就是說樣本按概率排序時順序不同,那切分時自然可能分到不同的類,
這里體現(xiàn)了不同模型之間的差異,
所以ROC可以用來模型優(yōu)化和模型選擇,理論上講 P-R曲線也可以。
ROC曲線的繪制方法與P-R曲線類似,不再贅述,結(jié)果如下圖
橫坐標為假正例率,縱坐標為真正例率,曲線下的面積叫 AUC
如何評價模型呢?
若學(xué)習(xí)器A的ROC曲線能包住學(xué)習(xí)器B的ROC曲線,則A優(yōu)于B
若學(xué)習(xí)器A的ROC曲線與學(xué)習(xí)器B的ROC曲線相交,則難以比較孰優(yōu)孰劣,此時可以比較AUC的大小
總結(jié)
模型評估主要考慮兩種場景:類別均衡,類別不均衡
模型評估必須考慮實際任務(wù)需求
P-R 曲線和 ROC曲線可以用于模型選擇
ROC曲線可以用于模型優(yōu)化
參考資料:
周志華《機器學(xué)習(xí)》
本文由博客一文多發(fā)平臺 OpenWrite 發(fā)布!
審核編輯 黃昊宇
-
模型
+關(guān)注
關(guān)注
1文章
3268瀏覽量
48926 -
機器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8425瀏覽量
132773 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5507瀏覽量
121298
發(fā)布評論請先 登錄
相關(guān)推薦
評論