二分類模型的預測結果分為四種情況(正類為1,反類為0):
- TP(True Positive):預測為正類,且預測正確(真實為1,預測也為1)
- FP(False Positive):預測為正類,但預測錯誤(真實為0,預測為1)
- TN(True Negative):預測為負類,且預測正確(真實為0,預測也為0)
- FN(False Negative):預測為負類,但預測錯誤(真實為1,預測為0)

TP+FP+TN+FN=測試集所有樣本數量。
分類模型的性能評價指標(Performance Evaluation Metric)有:
准確率(Accuracy):所有分類正確的樣本數量除以總樣本數量

錯誤率(Error Rate):所有分類錯誤的樣本數量除以總樣本數量
(其中
為指示函數,滿足要求則為1,不滿足為0)
錯誤率等於一減准確率:
。
混淆矩陣(Confusion Matrix):把真實值和預測值相對應的樣本數量列出來的一張交叉表。這樣,所有正確的預測結果都在其對角線上,所以從混淆矩陣中可以很直觀地看出哪里有錯誤。


准確率或錯誤率是最基本的分類模型性能評價指標。但是有時候各類別樣本數量不均衡,比如說,在一共100個測試樣本中,正類樣本有98個,負類樣本只有2個,那么我們只需要把模型做成把所有樣本都判為正類即可,這樣准確率可以達到98%。但是這樣的模型毫無意義。
即使各類別樣本數量比較均衡,但如果我們更關心其中某個類別,那么我們就需要選擇我們感興趣的類別的各項指標來評價模型的好壞。因此,人們又發明出了查全率和查准率等指標。
精確度(Precision):在所有預測為正類的樣本中,預測正確的比例,也稱為查准率

召回率(Recall):在所有實際為正類的樣本中,預測正確的比例,也稱為查全率

查准率和查全率是一對矛盾的度量。一般來說,查准率高時,查全率往往偏低;而查全率高時,查准率往往偏低。如果對這兩個指標都有要求,那么可以計算模型的F1值或查看PR曲線。
F1值(F1 Score):查准率和查全率的調和平均值
P-R曲線(Precision-Recall Curve):以precision為y軸,以recall為x軸,取不同的分類閾值,在此基礎上畫出來的一條曲線就叫做PR曲線。PR曲線越接近右上角(precision=1, recall=1),代表模型越好。若一個模型的PR曲線被另一個模型的PR曲線完全“包住”,則可斷言后者的性能優於前者;但若二者的曲線發生了交叉,則難以一般性地斷言兩者孰優孰劣,只能在具體查准率或查全率條件下比較。一般而言,比較 P-R 曲線下面積的大小,可一定程度上表征模型在查准率和查全率上取得相對 “雙高”的比例,但該值不太容易計算。因此其它相對容易計算的性能度量被提出。

真正率(True Positive Rate,TPR):TPR = TP/(TP+FN),TPR越大越好,1為理想狀態
假正率(False Positive Rate,FPR):FPR = FP/(TN+FP),FPR越小越好,0為理想狀態
靈敏性(Sensitivity): True Positive Rate,等同於召回率
特異性(Specificity): True Negative Rate,Specificity = 1- False Positive Rate,SPC = TN/(FP + TN)
這幾個性能指標不受不均衡數據的影響。若要綜合考慮TPR和FPR,那么可以查看ROC曲線。
ROC曲線(Receiver Operating Characteristic Curve):全稱“受試者工作特征”曲線。以“真正率”(True Positivate Rate,簡稱 TPR)為y軸,以“假正例”(False Positive Rate,簡稱 FPR)為x軸,取不同的分類閾值,在此基礎上畫出來的一條曲線就叫做ROC曲線。ROC曲線越接近左上角(true positive rate=1, false positive rate=0),代表模型性能越好。與 P-R 曲線一樣,若一個模型的 ROC 曲線被另一個模型的曲線完全“包住”,則斷言后者的性能優於前者;若有交叉,則難以一般斷言,此時可通過比較ROC曲線下的面積來判斷。

AUC(Area Under Curve):曲線下面積。AUC越大,代表模型性能越好。若AUC=0.5,即ROC曲線與上圖中的虛線重合,表示模型的區分能力與隨機猜測沒有差別。
以上說的是二分類的場景。對於多分類問題,有兩種方法計算其性能評價指標:
方法一:將多分類問題拆解成n個一對其余的二分類問題,這樣可以得到n個混淆矩陣,分別計算出每個類別的precision和recall,再將其平均,即得到”宏查准率“(macro-P),”宏查全率“(macro-R),相應計算出的的F1值稱為”宏F1“(macro-F1)。對每個類別計算出樣本在各個閾值下的假正率(FPR)和真正率(TPR),從而繪制出一條ROC曲線,這樣總共可以繪制出n條ROC曲線,對n條ROC曲線取平均,即可得到最終的ROC曲線。

方法二:將多分類問題拆解成n個一對其余的二分類問題,這樣可以得到n個混淆矩陣,把所有混淆矩陣中的TP,NP,FP,FN計算平均值 ,再用這些平均值計算出查准率和查全率,稱為”微查准率“(micro-P),”微查全率“(micro-R),由微查准率和微查全率計算出的F1值稱為 ”微 F1“(micro-F1)。

對於多分類問題,macro-average(宏平均) 要比 micro-average(微平均) 好,因為宏平均受樣本數量少的類別影響較大。
參考:https://www.zhihu.com/question/30643044
