ohem演算法
『壹』 樣本不平衡及其解決辦法
樣本不平衡問題在分類模型中可能會導致對少數類的預測精度下降,盡管整體精度看似高,但在實際應用中可能並不理想。一個常見的示例是通過make_classification創建的n類數據集,其中類別分布密集,易於分類,但實際工作中可能遇到類別分布不均的情況。
為了解決這個問題,imbalanced-learn庫提供了豐富的工具。其中包含重采樣方法,如欠采樣和過采樣。欠采樣策略如隨機欠采樣、NearMiss演算法(通過距離計算選擇樣本)、ENN(刪除不一致的多數類樣本)、RENN(重復上述過程)、Tomek Link Removal(刪除形成鏈接的多數類樣本)等。過采樣則通過增加少數類樣本,如隨機過采樣、SMOTE(通過插值生成樣本)、BorderlineSMOTE(區分safe、danger和noise樣本)、以及ADASYN(根據近鄰樣本分配生成樣本數量)。
數據增強也是另一種策略,如在圖像領域對樣本進行幾何變換和像素變換,以及在文本領域使用特定模型增強數據。從損失函數出發,可以使用帶權值的損失函數,如在邏輯回歸和SVC模型中調整權重,或者採用focal loss,通過調整樣本權重來平衡模型對難易分類的處理。在目標檢測領域,OHEM(One-Hot Encoding Loss)則聚焦於挖掘困難負樣本。
選擇對樣本不平衡不敏感的模型,如樹模型,或者結合採樣與集成學習,如EasyEnsembleClassifier和balance cascade演算法,可以改善模型性能。異常檢測方法也被用來識別數據集中的異常數據。評價樣本不平衡問題時,除了傳統的Accuracy、Precision、Recall和F1,還可以通過ROC曲線、AUC、R-P曲線和AUPRC來衡量模型性能。