Imbalanced class problem(ROC, Confusion Matrix)

1 何爲 Imbalanced class problem

在分類問題中,有時候一種類別的數據會遠遠的多於另外一種類別,

但正是這些少量的類別的數據,往往又是極其重要的。

比如信用卡欺詐事件,該事件遠遠地小於信用卡未被欺詐的事件。

要從信用卡操作的數據中,識別出欺詐這一類別的事件,比例極其小,但確是及其重要的。

在大量的操作數據中找到欺詐事件,猶如大海撈針。

這個時候如果繼續使用精度來評估分類器就不準確了。

因爲即使把所有的信用卡操作數據,都判斷爲未欺詐類別,

其正確率也可以達到99.999......%,這種分類器明顯是無用的。

針對Imbalanced class problem, 研究者提出了許多其它的參數來評估模型。

 

2 Confusion Matrix

2.1 相關概念

在Confusion Matrix中,

    

由Confusion Matrix 定義一些參數:

2.2 計算實例

實例中的分類器,雖然正確率達到了99.1%,但是Recall參數只有0.1, 對於class=Yes 類別的預測,

正確率只有10%,非常低。

2.3 分類問題的拓展參數

還是類似的的confusion matrix


 

3 ROC(Receiver Operating Characteristic)

ROC 發展於20世紀50年代的信號檢測理論, 用於顯示檢測率和誤報警率之間的權衡。

ROC曲線顯示TPR與FPR的關係,用ROC曲線上的一個點表示模型的性能,

改變分類器的閾值參數會改變點的位置

(TPR,FPR)

  • (0,0):把所有數據判別爲負類;
  • (1,1):把所有數據判別爲正類;
  • (1,0):理想情況

對角線是一條假想線,低於該線表示於正確的類別相反。

 

4 基於ROC的模型比較

沒有一種模型總是好於另一種

上圖中,對於小的FPR值,M1 更好

對於大的FPR值,M12更好

 

5 如何構建一個ROC曲線

  • 爲每個實例,使用分類器產生一個連續值的分數,該實例在+ class 的可能性越高,得分越高
  • 根據分數,按照降序排列實例
  • 應用一個閾值在每個獨特價分數值
  • 在每個閾值計算TPFP, TN, FN的數量,

TPR = TP / (TP + FN)

FPR= FP / (FP + TN)

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