混淆矩陣和ROC的個人理解

以下都是個人得到的認識,不一定正確!

混淆矩陣

肯定類別 否定類別
陽性判斷 真陽性(TP) 假陽性(FP)
陰性判斷 假陰性(FN) 真陰性(TN)

這是我自己對上面混淆矩陣的理解:

  • 真陽性:

    真:表示我預測的結果是陽性的,而實際結果也是陽性的,所以我預測對了,從而爲真。

    陽性 : 表示我預測的結果爲陽性。

    從而簡稱爲真陽性

  • 假陽性:

    假:表示我預測的結果是陽性的,而實際結果是陰性的,所以我預測錯了,從而爲假。

    陽性:表示我預測的結果爲陽性。

    從而簡稱爲假陽性。

準確率(accuracy):

accuracy=TP+TNTP+TN+FP+FN=TP+TNallData accuracy = \frac{TP + TN}{TP + TN + FP + FN} = \frac{TP + TN}{all Data}

positive class的精確率(查準率)

precision=TPTP+FP=TPpositive precision = \frac{TP}{TP + FP} = \frac{TP}{預測爲positive的樣本}

positive class的召回率(recall),也成爲查全率

recall=TPTP+FN=TPpositive recall = \frac{TP}{TP + FN} = \frac{TP}{真實爲positive的樣本}

ROC曲線和AUC值:

AUC : area under curve

在這裏插入圖片描述
ROC曲線的縱座標的計算公式爲:

TruePositiveRate(TPR)=positiveclassrecall=TPTP+FN=TPpositive True Positive Rate(TPR) = positive class的recall = \frac{TP}{TP + FN} = \frac{TP}{真實爲positive的樣本}

ROC曲線的橫座標的計算公式爲:

FalsePositiveRate(FPR)=negativeClassrecall=FPFP+TN=FP+TNTNFP+TN=1TNFP+TN=1recallnegativeFalse Positive Rate(FPR) = negative Class的recall = \frac{FP}{FP + TN} = \frac{FP + TN - TN}{FP + TN} =1 - \frac{TN}{FP + TN} = 1 - recall_{negative}

關於ROC曲線的理解:

在處理分類問題時,根據不同的分類閾值(如閾值爲0.4,大於0.4的爲壞樣本,大於0.4爲好樣本),我們可以得到多個TPR和TPR值,由每一個閾值構成的點(FPR,TPR),可以繪一條曲線,該條曲線就是ROC曲線。

或者說:

關於ROC圖像的理解:一般ROC曲線的是一個二分類模型畫出來的曲線。ROC的橫座標爲FPR值,縱座標爲TPR值,其中圖像的每一條ROC曲線對應一個模型。ROC曲線上的每一個點,是由(FPR,TPR)組成,在模型的不同閾值[0,1]下,就可以得到多個(FPR,TPR)組成的點,從而就得到了一條曲線,這個就是ROC曲線。

此時我們來觀測極端情況下的(FPR,TPR)構成的點:

1.(0,0):fpr=tpr=0 ,即所有樣本都被預測爲負樣本;(理解可參考FPR和TPR的計算公式)

FPR(預測錯誤的查全率) : 因爲 FPR = FP / (FP + TN) ,而FPR = 0,那麼就是FP爲0 ,就是說預測爲假陽性的樣本的個數爲0個。

TPR(預測正確的查全率) : 因爲 TPR = TP / (TP + FN),而TPR = 0,那麼就是TP=0,就是說預測爲真陽性的樣本個數爲0。

既然預測爲假陽性的樣本個數爲0,預測爲真陽性的樣本個數爲0,即模型預測爲陽性的個數爲0,即模型預測結果全爲負的。

如圖說明:

肯定類別 否定類別 說明
陽性判斷 真陽性(TP)樣本個數=0 假陽性(FP)樣本個數=0 預測爲正樣本的樣本數爲0
陰性判斷 假陰性(FN)樣本個數 真陰性(TN)樣本個數 預測爲負樣本的樣本數爲整體樣本

2.(1,1):fp=tp=1,所有樣本都被預測爲正樣本;(理解可參考FPR和TPR的計算公式)

FPR(預測錯誤的查全率) : 因爲 FPR = FP / (FP + TN) ,而FPR = 1,那麼就是TN=0 ,這表示預測爲真陰性的樣本個數爲0。

TPR(預測正確的查全率) : 因爲 TPR = TP / (TP + FN),而TPR = 1,那麼就是FN=0,這表示預測爲假陰性的樣本個數爲0。

既然預測爲假陽性的樣本個數爲0,預測爲真陽性的樣本個數爲0,即模型預測爲陽性的個數爲0,即模型預測結果全爲負的。

如下表格所示

肯定類別 否定類別 說明
陽性判斷 真陽性(TP)樣本個數 假陽性(FP)樣本個數 預測爲正樣本的樣本數爲整體樣本
陰性判斷 假陰性(FN)樣本個數=0 真陰性(TN)樣本個數=0 預測爲負樣本的樣本數爲0

3.(1,0):fp=1,tp=0,所有正例都被預測爲負例,而所有正例都沒被預測出來,這時最糟糕的分類器,因爲它成功的避開了所有正確答案。

如下表格所示

肯定類別 否定類別 說明
陽性判斷 真陽性(TP)樣本個數=0 假陽性(FP)樣本個數 所有正樣本都被預測錯誤
陰性判斷 假陰性(FN)樣本個數 真陰性(TN)樣本個數=0 所有負樣本都被預測錯誤

如下表格所示

4.(0,1):fp=0,tp=1,這是一個完美的分類器,它將所有樣本都正確分類。

如下表格所示

肯定類別 否定類別 說明
陽性判斷 真陽性(TP)樣本個數 假陽性(FP)樣本個數=0 所有正樣本都被預測正確
陰性判斷 假陰性(FN)樣本個數=0 真陰性(TN)樣本個數 所有負樣本都被預測正確

那麼,從這四個極端值可以看出,當ROC曲線越靠近(0,1)點時,預測效果越好。同時曲線和對角線的面積也會越大,這個面積就是AUC。

ROC理解的參考:https://blog.csdn.net/yinyu19950811/article/details/81288287

https://www.cnblogs.com/wuliytTaotao/p/9285227.html

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