很多分類器根據測試樣本產生乙個概率**,然後將該**值與閾值進行比較,高於閾值則被分類為正類,低於閾值則被分為負類。
auc值是評價分類器的乙個指標,全稱是area under curve,直譯就是曲線下的面積。什麼曲線呢,就是roc曲線。
真實值和**值的混淆矩陣
**值**值0
1真實值0tn
fp真實值1fn
tp0代表負例 1代表正例
tn:true negative 真實的負例第乙個字母t和f分別代表**正確還是錯誤,第二個字母n和p分別代表**為正類還是負類tp:true positive 真實的正例
fp:false positive 錯誤的正例
fn:false negative 錯誤的負例
roc曲線
fpr = fp / (fp+tn)
tpr = tp / (tp+fn)
想必以上的內容已經把你看暈了,繞來繞去的很不好記,於是有乙個好一點的方法。假設有一組0&1序列,在序列中加入乙個分割線,表示為閾值,在分割線左邊的為劃分的負類,在分割線右邊的表示為劃分的正類。
fpr表示的為分割線右邊的0的個數佔所有的0的個數的比例,即把所有負類中劃分為正例的比例。值越大則誤分類率越高。
tpr表示的為分割線右邊的1的個數佔所有的1的個數的比例,即把所有的正例分類為正例的比例。值越大則誤分類率越低。
00100110110|1110110111
我們根據分類器的**結果對樣本進行排序,按照此順序將樣本作為正例**。取無數個閾值來對樣本值進行分類,每取乙個閾值,計算出這個閾值對應的橫座標和縱座標,在roc曲線上就會對應有乙個點。當我們取了很多個閾值,這個時候就可以形成乙個曲線。這個曲線就被稱為roc曲線。
**於周志華老師的西瓜書
分析兩個特殊的點。
roc曲線形成之後,它將整個區域變成了兩個部分,一部分是左上角的區域,一部分是右下角的區域。auc值就是roc曲線右下角區域的面積。
auc值的物理意義就是分類器將樣本分類成功的概率。值越大,則表示該分類器將樣本正確分類的概率值越高。
假設auc值為a,
0.5=a,表明該分類器隨機分類,分類結果毫無意義,跟擲硬幣一樣,分對分錯概率五五開,完全不可信。利用微積分的思想,將曲線下的圖形劃分為乙個個無限小的梯形,計算面積。1>a>0.5,表明該分類器將樣本分對的概率比分錯的概率高,比較可信。
0.5>a>0,表明該分類器有點皮,他反著分類,反向**。
1=a,表示這是乙個完美的分類器,他說的都對。
0=a,我沒想好這個表示什麼 =。=
ROC曲線和AUC面積
本博文所有理論都是基於二分類,多分類問題其實與二分類問題相通。考慮乙個二分問題,如果一類定為正類 positive 那麼另一類就是負類 negative 注意和正樣本和負樣本概念不同,參考博文 真正類 true positive 例項是正類並且也被 成正類 假正類 false positive 例項...
ROC曲線和AUC指標
roc曲線的橫軸就是fprate,縱軸就是tprate,二者相等時表示的意義則是 對於不論真實類別是1還是0的樣本,分類器 為1的概率是相等的,此時auc為0.5 圖中藍色的線則是roc曲線,roc曲線和橫軸 縱軸圍成的面積就是auc指標。fpr fp fp tn from sklearn.metr...
AUC和ROC曲線的前世今生
auc數值即為roc曲線下的面積。roc曲線從0點開始上公升越快,說明模型錯分正樣本的比例越小,模型對正樣本識別的能力越強。在roc曲線的基礎上,拋開閾值的調節,roc曲線下半部分的面積值就是auc值。auc值介於0到1之間,是一種概率值。本質上auc是在模型 的資料集中,比較正負樣本,評估正樣本分...