解决非平衡的数据处理方式

// 学习笔记,勿喷,xjb写的,借鉴的地方很多

SMOTE 算法介绍

由于在实际运用中,对于分类问题中,因变量时存在很大地差距的,对应的比列严重失调。因为非类的样本毕竟在真实情况下所占的比例时很小的一块。

对于数据严重有偏的,对应的预测的结果也是有偏的,因此对应的分类结果很大程度地偏向较多观测样本的类别。因此,我们在这里需要很大程度的去构造出 1 : 1的数据比例。如果直接使用 过采样 的处理方式, 这样放回的样本是之前数据的简单的拟合,因此在这里是会出现模型的过拟合的情况;如果直接采用 欠采样 的处理方式,这样就会导致对应的 正样本 中间的数据被砍掉了很大的一部分,会导致某些信息的丢失。

SMOTE 算法是采用 对于少类的数据样本进行分析和模拟,将人工模拟出来的数据添加到对应的数据集中间去,进而使得原始的数据集中的类别变得不再严重失衡,从而原始数据集中的类别不再会严重失衡。

使用的算法是 KNN 算法:

  1. 先算出少类样本的K个近邻
  2. 从K个近邻中间挑选出 N 个样本进行线性插值,因此构造出少类的样本
  3. 和原数据集混合,构建新的数据集

这个处理的方式在 imblearn 的 over_sampling 中的 SMOTE 中被实现,具体的查询官方文档

直接使用 SMOTE.fit()对应的数据集,能够实现缺失信息变成 1: 1的处理,改变AOC数据。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值