过采样

SMOTE过采样

心已入冬 提交于 2019-12-07 19:42:42
转载自 https://blog.csdn.net/keycoder/article/details/79188853 一、 SMOTE全称是Synthetic Minority Oversampling Technique即合成少数类过采样技术,它是基于随机过采样算法的一种改进方案,由于随机过采样采取简单复制样本的策略来增加少数类样本,这样容易产生模型过拟合的问题,即使得模型学习到的信息过于特别(Specific)而不够泛化(General),SMOTE算法的基本思想是对少数类样本进行分析并根据少数类样本人工合成新样本添加到数据集中,算法流程如下。 1、对于少数类中每一个样本x,以欧氏距离为标准计算它到少数类样本集中所有样本的距离,得到其k近邻。 2、根据样本不平衡比例设置一个采样比例以确定采样倍率N,对于每一个少数类样本x,从其k近邻中随机选择若干个样本,假设选择的近邻为xn。 3、对于每一个随机选出的近邻xn,分别与原样本按照如下的公式构建新的样本 xnew=x+rand(0,1)∗|x−xn| 因此,smote算法的思想是合成新的少数类样本,合成的策略是对每个少数类样本a,从它的最近邻中随机选一个样本b,然后在a、b之间的连线上随机选一点作为新合成的少数类样本。 二、下面具体介绍如何合成新的样本    设训练集的一个少数类的样本数为 T

过采样中用到的SMOTE算法

╄→гoц情女王★ 提交于 2019-12-02 02:41:07
平时很多分类问题都会面对样本不均衡的问题,很多算法在这种情况下分类效果都不够理想。类不平衡(class-imbalance)是指在训练分类器中所使用的训练集的类别分布不均。比如说一个二分类问题,1000个训练样本,比较理想的情况是正类、负类样本的数量相差不多;而如果正类样本有995个、负类样本仅5个,就意味着存在类不平衡。把样本数量过少的类别称为“少数类”。 SMOTE算法的思想是合成新的少数类样本,合成的策略是对每个少数类样本a,从它的最近邻中随机选一个样本b,然后在a、b之间的连线上随机选一点作为新合成的少数类样本。如图所示: 算法流程: 1、对于少数类中每一个样本a,以欧氏距离为标准计算它到少数类样本集中所有样本的距离,得到其k近邻。 2、根据样本不平衡比例设置一个采样比例以确定采样倍率N,对于每一个少数类样本a,从其k近邻中随机选择若干个样本,假设选择的近邻为b。 3、对于每一个随机选出的近邻b,分别与原样本a按照如下的公式构建新的样本 :c=a+rand(0,1)∗|a−b| 作者:owolf 链接: https://www.jianshu.com/p/9a68934d1f56 来源:简书 类别不平衡问题 类别不平衡问题,顾名思义,即数据集中存在某一类样本,其数量远多于或远少于其他类样本,从而导致一些机器学习模型失效的问题。例如逻辑回归即不适合处理类别不平衡问题

SMOTE合成少数过采样技术

与世无争的帅哥 提交于 2019-11-29 19:09:58
1. SMOTE JAIR’2002的文章《SMOTE: Synthetic Minority Over-sampling Technique》提出了一种过采样算法SMOTE。概括来说,本算法基于“插值”来为少数类合成新的样本。 设训练集的一个少数类的样本数为T,那么SMOTE 算法将为这少数类合成NT个新样本。 考虑少数类一个样本 i,特征向量 x i , i ∈ 1 , . . . , T x_i, i\in {1, ..., T} x i ​ , i ∈ 1 , . . . , T : 首先从该少数类的所有样本中找到 x i x_i x i ​ 的 k 个近邻,如利用欧式距离,记为 x i ( n e a r ) , n e a r ∈ { 1 , . . . , k } x_{i (near)}, near \in\{1,...,k\} x i ( n e a r ) ​ , n e a r ∈ { 1 , . . . , k } ; 从这 k 个近邻中 随机选择 一个样本 x i ( n n ) x_{i(nn)} x i ( n n ) ​ , 再生成一个 0~ 1之间的随机数 ζ 1 \zeta_1 ζ 1 ​ , 从而生成一个新样本 x i 1 x_{i1} x i 1 ​ . x i 1 = x i + ζ 1 ⋅ ( x i ( n n ) − x i )