深度學習模型評估指標

2021-10-18 23:13:09 字數 3527 閱讀 5616

3. f1 score(f1-measure值)

4. 混淆矩陣

5. roc曲線與auc指標

6. tar,frr,far

標籤為正樣本,分類為正樣本的數目為true positive,簡稱tp;

標籤為正樣本,分類為負樣本的數目為false negative,簡稱fn;

標籤為負樣本,分類為正樣本的數目為false positive,簡稱fp;

標籤為負樣本,分類為負樣本的數目為true negative,簡稱tn。

單標籤分類任務中每乙個樣本都只有乙個確定的類別,**到該類別就是分類正確,沒有**到就是分類錯誤,因此最直觀的指標就是accuracy,也就是準確率。

accuracy=(tp+tn)/(tp+fp+tn+fn),表示的就是所有樣本都正確分類的概率,可以使用不同的閾值t。

在imagenet中使用的accuracy指標包括top_1 accuracy和top_5 accuracy,top_1 accuracy就是前面計算的accuracy。

記樣本xi的類別為yi,類別種類為(0,1,…,c),**類別函式為f,則top-1的計算方法如下:

如果給出概率最大的5個**類別,只要包含了真實的類別,則判定**正確,計算出來的指標就是top-5。目前在imagenet上,top-5的指標已經超過95%,而top-1的指標還在80%左右。

判斷為正例中真正為正例佔的比例

所有的正例中判斷為正例所佔的比例

如果只考慮正樣本的指標,有兩個很常用的指標,精確度和召回率。

正樣本精確率為:precision=tp/(tp+fp),表示的是召回為正樣本的樣本中,到底有多少是真正的正樣本

正樣本召回率為:recall=tp/(tp+fn),表示的是有多少樣本被召回類。當然,如果對負樣本感興趣的,也可以計算對應的精確率和召回率,這裡記得區分精確率和準確率的分別。

通常召回率越高,精確度越低,根據不同的值可以繪製recall-precision曲線,如下圖:

橫軸就是recall,縱軸就是precision,曲線越接近右上角,說明其效能越好,可以用該曲線與座標軸包圍的面積來定量評估,值在0~1之間。

有的時候關注的不僅僅是正樣本的準確率,也關心其召回率,但是又不想用accuracy來進行衡量,乙個折中的指標是採用f-score。

f1 score=2·precision·recall/(precision+recall),只有在召回率recall和精確率precision都高的情況下,f1 score才會很高,因此f1 score是乙個綜合性能的指標。

如果對於每一類,若想知道類別之間相互誤分的情況,檢視是否有特定的類別之間相互混淆,就可以用混淆矩陣畫出分類的詳細**結果。對於包含多個類別的任務,混淆矩陣很清晰的反映出各類別之間的錯分概率,如下圖:

上圖表述的是乙個包含20個類別的分類任務,混淆矩陣為20*20的矩陣,其中第i行第j列,表示第i類目標被分類為第j類的概率,越好的分類器對角線上的值更大,其他地方應該越小。

以上的準確率accuracy,精確度precision,召回率recall,f1 score,混淆矩陣都只是乙個單一的數值指標,如果想觀察分類演算法在不同的引數下的表現情況,就可以使用一條曲線,即roc曲線,全稱為receiver operating characteristic。

roc曲線可以用於評價乙個分類器在不同閾值下的表現情況。在roc曲線中,每個點的橫座標是false positive rate(fpr),縱座標是true positive rate(tpr),描繪了分類器在true positive和false positive間的平衡,兩個指標的計算如下:

tpr=tp/(tp+fn),代表分類器**的正類中實際正例項佔所有正例項的比例。(召回率)

fpr=fp/(fp+tn),代表分類器**的正類中實際負例項佔所有負例項的比例,fpr越大,**正類中實際負類越多。

roc曲線通常如下:

其中有4個關鍵的點:

點(0,0):fpr=tpr=0,分類器**所有的樣本都為負樣本;

點(1,1):fpr=tpr=1,分類器**所有的樣本都為正樣本;

點(0,1):fpr=0, tpr=1,此時fn=0且fp=0,所有的樣本都正確分類;

點(1,0):fpr=1,tpr=0,此時tp=0且tn=0,最差分類器,避開了所有正確答案。

roc曲線相對於pr曲線有個很好的特性:

當測試集中的正負樣本的分布變化的時候,roc曲線能夠保持不變,即對正負樣本不均衡問題不敏感。比如負樣本的數量增加到原來的10倍,tpr不受影響,fpr的各項也是成比例的增加,並不會有太大的變化。所以不均衡樣本問題通常選用roc作為評價標準。

roc曲線越接近左上角,該分類器的效能越好,若乙個分類器的roc曲線完全包住另乙個分類器,那麼可以判斷前者的效能更好。

如果想通過兩條roc曲線來定量評估兩個分類器的效能,就可以使用auc指標。

auc(area under curve)為roc曲線下的面積,它表示的就是乙個概率,這個面積的數值不會大於1。隨機挑選乙個正樣本以及乙個負樣本,auc表徵的就是有多大的概率,分類器會對正樣本給出的**值高於負樣本,當然前提是正樣本的**值的確應該高於負樣本。

這幾個指標在人臉驗證中被廣泛使用,人臉驗證即匹配兩個人是否是同乙個人,通常用特徵向量的相似度進行描述,如果相似度概率大於閾值t,則被認為是同乙個人。

tar(true accept rate)表示正確接受的比例,多次取同乙個人的兩張影象,統計該相似度值超過閾值t的比例。frr(false reject rate)就是錯誤拒絕率,把相同的人的影象當做不同人的了,它等於1-tar。

與之類似,far(false accept rate)表示錯誤接受的比例,多次取不同人的兩張影象,統計該相似度值超過t的比例。

增大相似度閾值t,far和tar都減小,意味著正確接受和錯誤接受的比例都降低,錯誤拒絕率frr會增加。減小相似度閾值t,far和tar都增大,正確接受的比例和錯誤接受的比例都增加,錯誤拒絕率frr降低。

深度學習 常用的模型評估指標

沒有測量,就沒有科學。這是科學家門捷列夫的名言。在電腦科學中,特別是在機器學習的領域,對模型的測量和評估同樣至關重要。只有選擇與問題相匹配的評估方法,我們才能夠快速的發現在模型選擇和訓練過程中可能出現的問題,迭代地對模型進行優化。本文將總結機器學習最常見的模型評估指標,其中包括 看一看下面這個例子 ...

機器學習 模型評估指標

from sklearn.metrics import accuracy score print 準確率 accuracy score y true,y pred,normalize true print 正確分類的數量 accuracy score y true,y pred,normalize ...

模型評估指標

模型的評價指標和評價體系是建模過程中的乙個重要環節,針對不同型別的專案和模型,要合理選擇不同的評價指標和體系。下面先給出二分類模型中 值和實際值的混淆矩陣 confusion matrix 和定義,然後介紹幾種評價指標。二分類模型的 值與實際值的結果 tp true positive 模型 為正例 ...