解决样本类别分布不均衡的问题

       不均衡指的是不同类别的样本量差异非常大,样本类别分布不均衡从数据规模上课=可分为大数据分布不均衡和小数据分布不均衡两种。

      大数据分布不均衡:例如拥有1000万条记录的数据集中,其中占比50万条的少数分类样本便属于这种情况

      小数据分布不均衡:例如拥有1000条记录的数据集中,其中占有10条样本的分类,其特征无论如何拟合也无法实现完整特征值的覆盖,属于严重的数据样本分布不均衡,

     样本分布不均衡(不同分类间的样本量差异超过10倍)将导致样本量少的分类所包含的特征过少,很难从中提取规律,即使得到分类模型,也容易产生过度依赖于有限的数据样本而导致过拟合的问题,当模型应用到新的数据时,模型的健壮性和准确性很差。

一、容易出现样本不均衡的场景

1、异常检测场景

      例如恶意刷单,黄牛订单,信用卡欺诈,电力窃电,设备故障等,这些数据样本所占比例很小,比如刷实体信用卡的欺诈比例一般在0.1%之内。

2、客户流失场景

     大型企业的流失客户相对于整体客户而言是少量的,比如电信,石油,网络运营商等行业巨擎。

3、罕见事件的分析

     例如由于某网络大V无意中转发了企业的一条趣味广告导致用户流量明显提升。

4、发生频率低的事件

     例如双11

二、通过过抽样和欠抽样解决样本不均衡(大数据不均衡)

过抽样(over-sampling):通过增加分类中少数类样本的数量来实现样本均衡,最简单的办法是复制少数类样本形成多条记录,缺点是如果样本特征少会导致过拟合,经过改进的过抽样方法通过在少数类中加入随机噪声,干扰数据或通过一定规则产生新的合成样本,例如SMOTE算法。

欠抽样(under-sampling):通过减少分类中多数类样本的数量来实现样本均衡,最直接的办法是随机去掉一些多数类样本来减少多数类的规模,缺点是会丢失多数类样本中的一些重要信息。

三、通过正负样本的惩罚权重解决样本不均衡

思想:对于分类中不同样本数量的类别分别赋予不同的权重(小样本量类别权重高,大样本量类别权重低),然后计算和建模。

以sklearn中的SVM为例,通过在class_weight:{dict,'balanced}中针对不同类别手动指定权重,如果默认balanced,SVM会将权重设置为与不同类别样本数量呈反比的权重来进行自动均衡处理。

四、通过组合/集成方法解决样本不均衡

       指的是在每次生成训练集时使用所有分类中的小样本量,同时从大样本量中随机抽取数据与小样本量合并构成训练集,反复多次,最后使用组合方法(投票,加权投票)产生分类预测结果。

       例如数据集中正负例的样本分别为100和10000条,比例1:100,将负样本分为100份,每次形成训练集的时候使用所有的正样本和随机抽取的负样本形成新的数据集,反复进行可得到100个训练集和对应的训练模型。这种思路类似于随机森林。

     如果计算资源充足,并对模型的时效性要求不高,这种方法较合适。

五、通过特征选择解决样本不均衡

   一般情况下,样本不均衡将导致特征分布不均衡,但如果小类别样本量具有一定的规模,意味着其特征值的分布较为均衡,可通过选择具有显著性的特征配合参与解决样本不均衡问题。

 

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值