转载自:https://zhuanlan.zhihu.com/p/78508502
总结下机器学习中类别不均衡的处理方法主要有下,希望对你有帮助~~
- 采样
这里的采样可以分为上采样和下采样,简单说就是从类别少的多采样或者类别多的少采样。对于上采样,如SMOTE算法。 - 转化为One-class问题
把它看做一分类(One Class Learning)或异常检测(Novelty Detection)问题。这类方法的重点不在于捕捉类间的差别,而是为其中一类进行建模,经典的工作包括One-class SVM等 - 聚类+采样
对数据先进行聚类,再将大的簇进行随机欠采样或者小的簇进行数据生成,注意了,这里不是简单的上面所说的下采样,而是先聚类后再采样。 - 模型惩罚
简单说就是对分类器的小类样本数据增加权值,降低大类样本的权值。 - 换模型
使用一些如Bagging和Boosting的方法,集成学习大法好具体看文献3。
除此之外,一些评价指标可能需要换一下,比如换成AUC和ROC,这两个指标对类别不均衡不敏感。
参考文献
机器学习中的样本不平衡问题
微调:如何处理数据中的「类别不平衡」?
How to handle Imbalanced Classification Problems in machine learning?