類不平衡問題的處理辦法


類不平衡問題分類任務中常遇到的問題,有的時候標簽的真實數據分布本身就是不平衡的。如何改善類不平衡問題,參考《applied predictive modeling》p290-p300,給出以下方案。有2個角度:數據角度模型訓練角度

數據角度

1.調整樣本權重

這種方法主要是在提升法為基礎的算法中使用:如Adaboost每個基學習器迭代生成的過程中,對數據樣本的權重都在更新,在更新過程的算法中除了固有地增加錯分樣本的權重以外,還可以增大少數類樣本的權重,凸顯其重要性。

 

2.抽樣方法

大致思想:人為從數據集中抽取各類比例相平衡的樣本,用於訓練模型。但是要注意,評估模型所選取的測試集的標簽必須是和從數據集估計的標簽先驗分布是相同的(即測試集要與數據集的類不平衡狀態一致),,才能如實估計模型預測未來樣本的能力,否則有偏導致結果估計過於樂觀(真實使用情況更糟)。

2.1向下抽樣

描述:通過從多數類中抽樣,減少多數類樣本數量以達到類平衡的目的。

實現方法:

  • ①多數類中簡單隨機抽樣(無放回);
  • ②多數類中bootstrap抽樣(有放回抽樣):這種方法能夠估計向下抽樣的方差;
  • ③隨機森鈴模型通過分層變量控制bootstrap過程,自發進行向下抽樣(即模型內在已集成的向下抽樣方法)

2.2向上抽樣

描述:通過某種方法對少數類樣本擴增、平衡類數量。

實現方法:

  • SMOTE(少數類樣本合成過度抽樣技術):對每一個少數類樣本,用它和它k近鄰樣本的各種特征隨機組合來合成新的樣本

 

3.模型調優(tuning)

模型調優是從整體上提升預測的准確率,但不一定保證預測少數類的准確率提升。

方法:

調優參數(定義候選的參數集合,將參數帶入模型訓練、評估):網格搜索、隨機搜索

②對訓練集應用重抽樣技術(獲取驗證集驗證訓練模型的效能,選取最優):交叉驗證、bootstrap

③用足夠大的測試集以獲取合理的模型評估精度。

 

4.代價敏感度訓練

優化代價函數:在代價函數中賦予對少數類預測損失更大的權重

注意:預測的潛在成本包括:犯特定錯誤的成本、犯該錯誤的概率、類先驗概率。(p298頁詳細解釋)

 

5.調整先驗概率

這是針對於將先驗概率納入模型訓練的方法,如:朴素貝葉斯、判別分析。(這些方法在用戶不指定先驗概率的時候,通常是從訓練數據中計算類比例以代替先驗。)

 

6.選擇概率截點

分類模型大多數都會輸出一個小數值,這個值在類加和起來后等於1,滿足概率定義,因此可以看做預測的屬類概率。一般在二分類下,模型默認0.5為概率截點,大於為1,小於為0。如果我們改動這個截點值,相應的預測判類也會變動(影響預測概率在截點值附近的樣本判類)。

我們需要借助ROC曲線來選取最佳概率截點。ROC曲線的繪制是借助不斷調整概率截點,獲取一系列(靈敏度,1-特異度)的點來繪制的曲線。

2種從ROC選擇概率截點的方法

  • 以個人目標為中心的方法(主觀根據一類錯誤、二類錯誤的風險,判斷偏向於靈敏度還是特異度)
  • 選擇距離左上角(完美模型)最近的點。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM