样本不均衡问题及解决方法

文章探讨了在分类问题中遇到的样本不均衡问题,提出了过采样(如SMOTE算法)和欠采样等方法来平衡类别比例。此外,还介绍了模型欠采样结合集成学习以及使用focalloss调整深度学习的损失函数,以应对少数重要样本的情况,特别是在异常检测和欺诈检测等业务中的应用。
摘要由CSDN通过智能技术生成

背景

样本类别不均衡是分类问题中常常遇到的问题。在实际业务中,不同类别的样本量差异非常大,或者少数样本代表了业务的关键数据(少数样本更重要),例如,异常检测,恶意刷单,黄牛订单,信用卡欺诈等业务中,正类的样本比例往往只占很小的一部分。

方法

1.过采样
也叫上采样、重采样,通过增加少数类别的样本来改变不同类别的样本比例,达到类别比例均衡
方法1:复制多份少数样本, 容易发生过拟合
方法2:SMOTE算法, 领用邻近的样本生成新的样本, 新样本 = 原样本 + 噪声
x n = x i + λ ( x j − x i ) x_n = x_i + \lambda(x_j-x_i) xn=xi+λ(xjxi), 其中, x j , x i x_j, x_i xj,xi是相邻的样本的特征

2.欠采样
也叫下采样,通过减少多数类别的样本来改变不同类别的样本比例,达到类别比例均衡
方法:随机删除

注意:采样的方式会并且只能改变训练集的分布,测试集不能做采样!

3.模型
欠采样+集成学习
将多数类别的样本进行随机采样,与少数类别形成多个训练集 (A1, B), (A2,B), (A3,B)训练3个基模型,让这三个模型进行投票; 每个模型不能看到所有的数据,其训练数据的分布与总体样本的数据分布不一致

4.损失函数
对于深度学习,使用focal loss
l o s s = − ( 1 − p t ) α l o g ( p t ) loss = -(1-p_t)^{\alpha} log(p_t) loss=(1pt)αlog(pt)
权重 * NCE(负交叉熵损失)
pt为预测值∈[0,1], alpha为超参数, (1-pt)^alpha为权重, focal loss对loss进行加权,对于比较难预测的样本的loss,赋给较高的权重,在反向传播时,这部分样本的梯度更大,更新这部分参数。

参考:
【公开课】挑战样本不平衡算法及实战 (小象学院)
Focal Loss及其实现

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值