机器学习之不均衡样本处理方法

在实际场景中很多数据存在分布不均衡现象,如“长尾现象”,也就是常说的“二八原理”。比如,某些商品购买量很小,但这类商品的销量基数却特别大。而在很多算法模型中,都是基于某个分布,如很多场景是假设数据基于多元的正态分布,这就造成了实际分布不均的数据和算法假设存在偏差的情况。同时,不均衡的样本对模型训练后的精度及相关的评价指标也会造成影响。比如在分类任务中,不同类别的训练样例数目常存在差异大的情况,这时样本不均衡往往会出现模型对样本数较多的类别过拟合、对较少的类别欠拟合的现象,即总是将样本分到样本数较多的分类类别中。
举例说明:

类别 预测为负样本 预测为正样本
实际为负样本 9700 150
实际为正样本 50 100

那么准确率则为
9700 + 100 9700 + 150 + 50 + 100 = 0.98 \frac{9700+100}{9700+150+50+100}=0.98 9700+150+50+1009700+100=0.98
假设将所有的样本都预测为负样本,准确率会进一步上升,但是这样的模型显然是不好的,实际上,模型已经对这个不平衡的样本过拟合了。解决该问题需要对过多的样本进行欠采样或者对过少的样本进行过采样,常用的采样方法有以下几种:

  1. 随机欠采样
    例如,数据中正样本50例,负样本950例,正样本的占比为5%。随机欠采样就是在负样本中随机选出10%,为95例,与正样本组成新的训练集(95+50)。这样,正样本所占的比例为50/145=35%,比原来的5%有了很大增加。随机欠采样的优点是在平衡数据的同时减少了数据量,加速了训练;缺点是数据减少会影响模型的特征学习能力和泛化能力。
  2. 随机过采样
    例如,数据中有正样本50例,负样本950例,正样本的占比为5%。随机过采样就是将正样本复制10次,为500例,与负样本组成新的训练集(500+950)。这样,正样本所占的比例为500/1450=35%。随机过采样的优点是相对于欠采样,其没有导致数据信息的损失;缺点是对较少类别的复制增加了过拟合的可能性。
  3. 基于聚类的过采样方法
    基于聚类的过采样方法通过聚类作为中介,不但在一定程度上缓解了类间样本不平衡问题,同时还缓解了类内的不平衡问题。但是和一般的过采样方法一样,该方法容易使模型对训练数据过拟合。
  4. SMOTE算法
    SMOTE(Synthetic Minority Oversampling Technique,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

bug是什么

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值