python多分类画混淆矩阵_【AI基础】分类器评估一:混淆矩阵、准确率、精确率、召回率、灵敏度、特异度、误诊率、漏诊率...
混淆矩陣
????????在機器學習中尤其是統計分類中,混淆矩陣(confusion matrix),也被稱為錯誤矩陣(error matrix)。之所以叫做混淆矩陣,是因為能夠很容易的看到機器學習有沒有將樣本的類別給混淆了。都是基于混淆矩陣的。混淆矩陣結構如下圖。
混淆矩陣結構
????????矩陣的每一列表達了分類器對于樣本的類別預測,矩陣的每一行則表達了版本所屬的真實類別。每個元素名稱都由兩部分組成:1.真或假,2.正例或反例。真和假是預測結果是否正確,正例反例是預測的結果。可以看出,對角線的元素是預測正確的元素。
? ? ? ? 下面還是以前文錘哥的例子講混淆矩陣。假設錘哥在鑒寶節目鑒別了100個瓷器。其中真品(正例)80個,贗品(反例)20個。錘哥大部分都看準了,但也有的看走了眼。錯把3個贗品當成了真品,錯把5個真品當成了贗品。這樣錘哥鑒定結果為真品78個,其中75個是真真品,3個是假真品;贗品22個,其中17個是真贗品,5個是假贗品。畫出混淆矩陣如下。
錘哥的混淆矩陣
????????混淆矩陣用最簡潔的性質準確刻畫了分類器的優劣,是大多數分類器評估指標的基礎,多數指標都是從混淆矩陣衍生出來的。
準確率/accuracy
????????從混淆矩陣看出,對角線是預測正確的樣本數,反對角線是預測錯誤的樣本數。將對角線元素加和得到所有預測正確的個數,除以總樣本數就得到了準確率。公式:accuracy = (TP+TN) / (TP+TN+FP+FN)。
????????準確率是全部樣本中預測正確的比例,沒有將正例和反例分開考察。
????????錘哥的例子中,accuracy = (75 + 17) / 100 = 0.92。代表錘哥每做一個鑒定,有92%的概率鑒定對。
查準率/精確率/precision/P
? ? ? ? 查準率是預測為正例的樣本中,實際為正例的占比。是錘哥所有鑒定中,鑒定對的比例。
????????公式:P = TP / (TP+FP)。是對預測正例的預測準確性的一種度量。
????????錘哥的例子中,P = 75 / (75 + 3) = 0.9372。代表如果一個瓷器是正品,錘哥有93.75%的概率也鑒定為正品。(與R的交換)
查全率/召回率/recall/R
????????查全率是實際為正例的樣本中,預測為正例的占比。是實際為正品中,被錘哥鑒定為正品的瓷器占比。
????????公式:R = TP / (TP+FN)。是對真實正例的預測覆蓋面的一種度量。
????????錘哥的例子中,R = 75 / (75 + 5) = 0.9615。代表如果錘哥將一個瓷器鑒定為正品,這個瓷器有96.15%的概率確實為正品。
靈敏度/真正例率/sensitivity/TPR
????????召回率的另一種叫法。公式:TPR = TP / (TP+FN)。
特異度/真反例率/specificity/TNR
????????特異度是實際為反例的樣本中,預測為反例的占比。是實際為贗品的瓷器中,被錘哥鑒定為贗品的占比。
????????公式:TNR = TN / (FP+TN)。是對真實反例的預測覆蓋面的一種度量。
????????錘哥的例子中,TNR = 17 / (3 + 17) = 0.85。代表如果錘哥將一個瓷器鑒定為贗品,這個瓷器有85%的概率確實為贗品。
誤診率/假正例率/FPR
????????誤診率是實際為反例的樣本中,預測為正例的占比。是實際為贗品的瓷器中,被錘哥鑒定為正品的瓷器占比。
????????公式:FPR = 1 -?TNR = FP / (FP+TN)。和TNR一樣,是對真實反例的預測覆蓋面的一種度量。
????????錘哥的例子中,FPR = 3 / (3 + 17) = 0.15。代表如果錘哥將一個瓷器鑒定為贗品,這個瓷器有15%的概率實際為正品。
漏診率/假反例率/FNR
????????漏診率是實際為正例的樣本中,預測為反例的占比。是實際為正品的瓷器中,被錘哥鑒定為贗品的占比。
????????公式:FNR = 1 - TPR = TP / (TP+FN)。和TPR 一樣,是對真實正例的預測覆蓋面的一種度量。
????????錘哥的例子中,FNR = 3 / (75 + 3) = 0.0385。代表如果錘哥將一個瓷器鑒定為正品,這個瓷器有3.85%的概率實際為贗品。
總結
????????準確率是整體刻畫預測準確性的指標。查準率和查全率是從正例預測角度的一對度量指標。靈敏度和特異度,漏診率和誤診率是從預測覆蓋面角度的一對度量指標。前五個指標,分子都是預測正確個數。后兩個指標,分子都是預測錯誤的個數。
????????查準率和查全率是負相關的關系,一般此消彼長(P-R曲線圖形)。要提升查準率,必然將條件設置的嚴格一些,以盡可能將反例排除,這就導致了部分正例也被排除,查全率下降;要提升查全率,必然將條件設置的寬松一些,以盡可能將正例包含,這就導致了部分反例也被包含,查準率下降。
????????真正例率和假正例率以正相關的關系,一般變化方向相同(ROC曲線圖形)。要提升真正例率(查全率)必然將條件設置的寬松一些,以盡可能將正例包含,這就導致了部分反例也被包含,假正利率升高。真反例率和假反例率的關系相同。
本文作者:曲曲菜(微信公眾號:曲曲菜)
原創作品,未標明作者不得轉載。
更多AI和金融知識,長按圖片關注作者公眾號
總結
以上是生活随笔為你收集整理的python多分类画混淆矩阵_【AI基础】分类器评估一:混淆矩阵、准确率、精确率、召回率、灵敏度、特异度、误诊率、漏诊率...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 量产超1600架经典战机被自家军方嫌弃
- 下一篇: 美军最得意的隐形战机比歼20高明在哪里