auc(are under curve)是乙個模型的評價指標,用於分類任務。
那麼這個指標代表什麼呢?這個指標想表達的含義,簡單來說其實就是隨機抽出一對樣本(乙個正樣本,乙個負樣本),然後用訓練得到的分類器來對這兩個樣本進行**,**得到正樣本的概率大於負樣本概率的概率。
在有m個正樣本,n個負樣本的資料集裡。一共有mn對樣本(一對樣本即,乙個正樣本與乙個負樣本)。統計這mn對樣本裡,正樣本的**概率大於負樣本的**概率的個數。
這裡第乙個條件應該為p(正樣本)>p(負樣本)。
舉例:
假設有4條樣本。2個正樣本,2個負樣本,那麼m*n=4。即總共有4個樣本對。分別是:
(d,b),(d,a),(c,b),(c,a)。
在(d,b)樣本對中,正樣本d**的概率大於負樣本b**的概率(也就是d的得分比b高),記為1
同理,對於(c,b)。正樣本c**的概率小於負樣本c**的概率,記為0.
最後可以算得,總共有3個符合正樣本得分高於負樣本得分,故最後的auc為1+1
+1+0
4=0.75
\frac=0.75
41+1+1
+0=
0.75
。在這個案例裡,沒有出現得分一致的情況,假如出現得分一致的時候,例如:
同樣本是4個樣本對,對於樣本對(c,b)其i值為0.5。最後的auc為1+1
這個公式看起來有點嚇人,其實就是先對**概率進行排序,然後對正樣本的序號相加,減去後面的常數項,最後除以m*n。
r an
kins
irank_
rankin
si
:代表第i條樣本的序號。(概率得分從小到大排,排在第rank個位置)。
∑
\sum
∑ 代表對屬於正樣本的序號加和。
同樣的,我們用上面的例子。
將這個例子排序。按概率排序後得到:
按照上面的公式,只把正樣本的序號加起來也就是只把樣本c,d的rank值加起來後減去乙個常數項m(m
+1)2
\frac
2m(m+1
),即( 4+
2)−2
∗(2+
1)22
∗2=6
−340.75
\frac}=\frac0.75
2∗2(4+
2)−2
2∗(2
+1)
=46
−30
.75。這個答案和我們上面所計算的是一樣的。
這個時候,我們有個問題,假如出現得分一致的情況怎麼辦?下面舉乙個例子說明:
在這個例子中,我們有4個取值概率為0.5,而且既有正樣本也有負樣本的情況。計算的時候,其實原則就是相等得分的rank取平均值。具體來說如下:
先排序:
這裡需要注意的是:相等概率得分的樣本,無論正負,誰在前,誰在後無所謂。
由於只考慮正樣本的rank值:
對於正樣本a,其rank值為7
對於正樣本b,其rank值為6
對於正樣本e,其rank值為(5+4+3+2)/4
對於正樣本f,其rank值為(5+4+3+2)/4
最後我們得到:
auc計算公式 AUC與logloss
在ctr預估中,auc area under curve 用於衡量排序能力,auc值為roc曲線下的面積,是乙個概率值,越大越好。簡單來說這個指標的含義其實就是隨機抽出一對樣本 乙個正樣本,乙個負樣本 然後用訓練得到的分類器來對這兩個樣本進行 得到正樣本的概率大於負樣本概率的概率。auc是乙個二分類...
形象理解AUC計算公式
auc是評價乙個二分類器效能的主流數值指標,定義為roc曲線下方的面積,但這個算起來比較複雜,需要統計假陽性。另乙個定義更直觀,隨機給乙個正樣本和乙個負樣本,多大概率正樣本的score更高。換一種說法,假設正樣本有m mm個,負樣本有n nn個,在所有m n m nm n個正負樣本對中,有多少正樣本...
auc計算公式的理解
對於auc的計算參考 m是正樣本的個數,n是負樣本的個數 如何理解分子,下面是我個人的理解。總體原則 負樣本數 樣本總數 正樣本數,然後構造樣本總數 每次取概率不同的正樣本,其排序也不一樣,構造樣本總數的表達方式也不一樣 rank1,樣本總數為rank1 rank2 再加1個就是樣本總數,為rank...