在机器学习中,我们经常会遇到类别数据分布不均衡问题,即某类中含有很多数据,而其他类别中的数据量很少。在这种情况下, 使用传统机器学习算法开发的预测模型可能存在偏差和不准确,造成上述的原因是,传统算法模型通过减少loss来提高准确性,他们并没有考虑到类别的分类不均问题。因此机器学习算法在面对不平衡的数据集时, 往往会产生不理想的分类器。
标准分类器算法 (如决策树和逻辑回归) 倾向于只预测多数类数据。少数群体的特征被视为噪音, 往往被忽略。因此, 与多数类相比, 少数类被错误分类的可能性很大。
常使用混淆矩阵来衡量分类算法性能的评价。
举个例子,不平衡分类数据下模型的危害。
假如我们要过滤1000封邮件,里面有用990封,有10封是广告邮件,这是需要进行过滤的。
这是我们训练得到一个分类器,其精度为99.0,看上去精度很高,但没用,这个分类器可能把所有1000封都认为是有用的,这样情况下并没起到过滤作用。
所以当存在分类数据不均衡时,我们必须要进行处理。
处理不平衡数据集的方法
2.1数据级方法:重采样技术(Data Level approach: Resampling Techniques)
-
随机下采样(Random Under-Sampling):从数据量大的类别中按一定比例抽取样本,与少量数据类别重新构建出一个训练集。
优点:在训练数据集巨大的情况下, 它可以