3. 線性模型性能分析--混淆矩陣(Confusion Matrix)

1. 什麼是混淆矩陣

在人工智能中,混淆矩陣(confusion matrix)是可視化工具,特別用於監督學習,在無監督學習一般叫做匹配矩陣。在圖像精度評價中,主要用於比較分類結果和實際測得值,可以把分類結果的精度顯示在一個混淆矩陣裏面。混淆矩陣是通過將每個實測像元的位置和分類與分類圖像中的相應位置和分類像比較計算的[1]

通過分析混淆矩陣,我們可以得到:
* TPR (True Positive Rate), FPR (False Positive Rate) 並畫出ROC (Receiver Operating Characteristic)曲線和求出AUC (Area Under Curve)
* 準確率(Accuracy), 精確率(Precision), 召回率(Recall), F1值(F1 Score)
下面我們來分析混淆矩陣。



2. 混淆矩陣分析

Confusion Matrix

Confusion Matrix[2]

分析:
TP:模型判定爲P,實際上也是P,即判斷正確
FP:模型判定爲N,實際上卻是P,即判斷錯誤
FN:模型判定爲P,實際上卻是N,即判斷錯誤
TN:模型判定爲N,實際上也是N,即判斷正確


存在關係:
TPR=TPTP+FP

FPR=FPTN+FN

Accuracy=TP+TNTP+FP+TN+FN

Precision=TPTP+FP

Recall=TPTP+FN

F1Measure=21Precision+1Recall



3. Accuracy, Precision, Recall,F1-Measure的分析

舉例:要對癌症患者分類:良性和惡性。現在有200個患者,剛好100個良性,100個惡性,訓練之後的預測50個良性,150個惡性,即:預測50個良性正確,有50個良性被預測爲惡性,100個惡性預測全部正確。
此時:
TP: 50
FP: 50
FN: 0
TN: 100
TPR: 0.5
FPR: 0.5
Accuracy: 75%
Precision: 50%
Recall: 100%
F1-Measure: 66.7% 即(23 )

關於精確率和召回率,要根據具體情境去判斷,那個高才好,參考知乎第一條回答精確率、召回率、F1 值、ROC、AUC 各自的優缺點是什麼?



4. ROC,AUC的分析:

4.1. ROC分析

關於ROC,先看下圖,
ROC

根據剛剛上面對TPR,FPR的分析,容易發現:

  • 在(0,0)點,TP和FP都爲0(FN和TN都爲1),也就是說,對於所有值,預測模型都預測爲Negative,即判斷爲Positive的閾值過高。
  • 在(1,1)點,TP和FP都爲1(FN和TN都爲0),也就是說,對於所有值,預測模型都預測爲Positive,即判斷爲Positive的閾值過低。

4.2. AUC分析

AUC(Area Under Curve),我覺得原名應爲(Area Under roc Curve)更好,其定義爲ROC曲線下的面積,面積的數值不會大於1。
ROC曲線一般都處於y=x 這條直線的上方,沒有人希望模型在y=x 的線以下,所以AUC的取值範圍在0.5和1之間。使用AUC值作爲評價標準是因爲很多時候ROC曲線並不能清晰的說明哪個分類器的效果更好,但對應一個數據來說,AUC往往越大越好。



參考

[1]百度百科:https://baike.baidu.com/item/%E6%B7%B7%E6%B7%86%E7%9F%A9%E9%98%B5/10087822?fr=aladdin&fromid=18082441&fromtitle=Confusion+Matrix
[2]維基百科:https://en.wikipedia.org/wiki/Confusion_matrix
[3]精確率、召回率、F1 值、ROC、AUC 各自的優缺點是什麼?https://www.zhihu.com/question/30643044/answer/48955833

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章