DataScience:对严重不均衡数据集进行多种采样策略(随机过抽样、SMOTE过采样、SMOTETomek综合采样、改变样本权重等)简介、经验总结之详细攻略

DataScience:对严重不均衡数据集进行多种采样策略(随机过抽样、SMOTE过采样、SMOTETomek综合采样、改变样本权重等)简介、经验总结之详细攻略

目录

对严重不均衡数据集进行多种采样策略(随机过抽样、SMOTE过采样、SMOTETomek综合采样、改变样本权重)之详细攻略

过采样

随机过采样

SMOTE过采样

欠采样

Tomek Link法欠采样

SMOTE过采样+TomekLink

数据加权——可理解为欠采样

集成方法

代价敏感方法

一分类

经验总结


对严重不均衡数据集进行多种采样策略(随机过抽样、SMOTE过采样、SMOTETomek综合采样、改变样本权重)之详细攻略


过采样

         对小类的数据样本进行采样来增加小类的数据样本个数,通常增加部分小类样本数据的副本。过采样会随机复制少数样例以增大它们的规模。过采样会使变量的方差表面上比实际上更小。

随机过采样

随机过采样并不是将原始数据集中占比少的类简单的乘个指定的倍数,而是对较少类按一定比例进行一定次数的随机抽样,然后将每次随机抽样所得到的数据集叠加。但如果只是简单的随机抽样也难免会出现问题,因为任意两次的随机抽样中,可能会有重复被抽到的数据,所以经过多次随机抽样后叠加在一起的数据中可能会有不少的重复值,这便会使数据的变异程度减小。所以这是随机过采样的弊端。

SMOTE过采样

SMOTE过采样法的出现正好弥补了随机过采样的不足。但并不太适合数据不平衡的散点图,如下所示。

图中的黑点是呈现U型曲线的分布,在这个情况下,SMOTE算法的第四步作中间插值后,可能这个新插入的点刚好就是某个白点所在的点。本来是0的地盘,密密集集的0当中突然给生硬的插进去了一个1,这就使数据又重复了。

欠采样

         对大类的数据样本进行采样来减少该类数据样本的个数,通常删除部分大类样本数据。欠采样则随机地少采样主要的类。欠采样会让独立变量(independent variable)的方差看起来比其实际的方差更高。

Tomek Link法欠采样

上图为 Tomek Link 欠采样法的核心。不难发现左边的分布中 0-1 两个类别之间并没有明显的分界。Tomek Link 法处理后,将占比多的一方(0),与离它(0)最近的一个少的另一方 (1) 配对,而后将这个配对删去,这样一来便如右边所示构造出了一条明显一些的分界线。所以说欠采样需要在占比少的那一类的数据量比较大的时候使用(大型互联网公司与银行),毕竟一命抵一命...

SMOTE过采样+TomekLink

        综合采样的核心:先使用过采样,扩大样本后再对处在胶着状态的点用 Tomek Link法进行删除,有时候甚至连 Tomek Link 都不用,直接把离得近的对全部删除,因为在进行过采样后,0 和 1 的样本量已经达到了 1:1。

数据加权——可理解为欠采样

        将大类样本依据类别分布比例(权值)随机划分成一系列不相交子集,分别将这些不相交子集跟小类样本结合,组成一系列平衡的分类子问题,单独训练成子分类器,最后将这些子分类器的输出进一步学习成组合分类器;

集成方法

对大类和小类类分别进行多次重采样,采用多数投票的方法进行集成学习。

代价敏感方法

赋予各个类别不同的错分代价,对错分小类样本做更大的惩罚迫使最终分类器对正类样本有更高的识别率;

一分类

即将研究问题视作一分类(异常检测)问题。

经验总结

        常规做法为对大类样本欠采样,对小类样本过采样,但是欠采样过程会导致大量的信息损失,过采样由于引入大量的副本数据,容易出现过拟合现象。为解决上述问题,业界提出了多种改进方法,例如SMOTE,ADASYN等。


参考文章
不平衡数据集处理——信用卡欺诈行为检测

猜你喜欢

转载自blog.csdn.net/qq_41185868/article/details/107457870