数据不均衡(Class Imbalance)是机器学习中常见的挑战,指训练数据中不同类别的样本数量差异较大。这种情况会导致模型偏向多数类,而对少数类的预测性能较差(如医学诊断中的罕见病、金融欺诈检测等场景)。以下从数据处理、算法改进、评估指标优化三个维度,系统介绍解决数据不均衡的方法:
一、数据层面:重采样(Resampling)
1. 欠采样(Undersampling)
-
随机欠采样:随机删除多数类样本,直到与少数类数量接近。
优点:简单高效;缺点:可能丢失多数类的重要信息。
工具:imblearn.RandomUnderSampler -
欠采样优化算法:
- Tomek Links:删除与少数类样本最近的多数类样本(即 “边界样本”)。
- Edited Nearest Neighbors (ENN):删除被 KNN 错误分类的多数类样本。
工具:imblearn.TomekLinks,imblearn.ENN
2. 过采样(Oversampling)
-
随机过采样:复制少数类样本,直到与多数类数量接近。
优点:简单直接;缺点:易导致过拟合。
工具:imblearn.RandomOverSampler -
合成过采样:
- SMOTE (Synthe
解决数据不均衡问题的方法

最低0.47元/天 解锁文章
3万+

被折叠的 条评论
为什么被折叠?



