項目中出現了二分類數據不平橫問題,研究總結下對於類別不平橫問題的處理經驗:
為什么類別不平橫會影響模型的輸出?
許多模型的輸出類別是基於閾值的,例如邏輯回歸中小於0.5的為反例,大於則為正例。在數據不平衡時,默認的閾值會導致模型輸出傾向與類別數據多的類別。
因此可以在實際應用中,解決辦法包括:
1)調整分類閾值,使得更傾向與類別少的數據。
2)選擇合適的評估標准,比如ROC或者F1,而不是准確度(accuracy)
3)過采樣法(sampling):來處理不平橫的問題。分為欠采樣(undersampling)和過采樣(oversampling)兩種。
- 過采樣:重復正比例數據,實際上沒有為模型引入更多數據,過分強調正比例數據,會放大正比例噪音對模型的影響。
- 欠采樣:丟棄大量數據,和過采樣一樣會存在過擬合的問題。 由於隨機過采樣采取簡單復制樣本的策略來增加少數類樣本,這樣容易產生模型過擬合的問題,即使得模型學習到的信息過於特別(Specific)而不夠泛化(General)。
4)數據合成:SMOTE(Synthetic Minority Oversampling Technique)即合成少數類過采樣技術,它是基於隨機過采樣算法的一種改進方案,SMOTE算法的基本思想是對少數類樣本進行分析並根據少數類樣本人工合成新樣本添加到數據集中。