AUC的理解

weixin_34054866發表於2017-09-17

曾經面試的時候被問到過這麼一個問題,怎麼向一個沒有任何計算機、數學、統計等基礎的人介紹下什麼是AUC,當時我敗北了。不過後來我有一天頓悟了,為了檢驗我的頓悟是否有效,特此一答。

我給出的答案是 AUC是指 隨機給定一個正樣本和一個負樣本,分類器輸出的正樣本的概率 比 分類器出去負樣本的概率 大的可能性。(這裡要感謝下 @付笑晗大兄弟的嚴謹)。

詳細解釋如下:

隨機抽取一個樣本, 對應每一潛在可能值X都對應有一個判定位正樣本的概率P。

對一批已知正負的樣本集合進行分類,

按概率從高到矮排個降序, 對於正樣本中概率最高的,排序為rank_1, 比它概率小的有M-1個正樣本(M為正樣本個數), (rank_1 - M) 個負樣本。

正樣本概率第二高的, 排序為rank_2, 比它概率小的有M-2個正樣本,(rank_2 - M + 1) 個 負樣本。

以此類推

正樣本中概率最小的, 排序為rank_M,比它概率小的有0個正樣本,rank_M - 1 個負樣本。

總共有MxN個正負樣本對(N為負樣本個數)。把所有比較中 正樣本概率大於負樣本概率 的例子都算上, 得到公式(rank_1 - M + rank_2 - M + 1 ....  + rank_M - 1) / (MxN) 就是正樣本概率大於負樣本概率的可能性了。 化簡後(因為後面是個等差數列)得:


7915866-f2259e06fabe4d18.png

這就是傳說中的AUC公式。這只是用於理解,具體計算時候需要考慮rank平列的情況

相關文章