1、修正阈值法
- 对于模型
y=wTx+b
新样本的预测值y通常与阈值比较,比如
y>0.5
判为正例,
即y1−y>1,则预测为正例 - 利用正负样本的比例调整阈值:
y1−y>m+m−
则预测为正例。 - 若阈值仍为1,则
y′1−y′=y1−y×m−m+>1
2、随机采样
2.1随机过采样
从少数类
Smin
中抽取数据集
E
,采样的数量要大于原有少数类的数量,最终的训练集为
2.1.1、SMOTE算法
- 对于少数类中每一个样本
x
,以欧氏距离为标准计算它到少数类样本集
Smin 中所有样本的距离,得到其k近邻。 - 根据样本不平衡比例设置一个采样比例以确定采样倍率N,对于每一个少数类样本x,从其k近邻中随机选择N个样本。
-
遍历N个样本,令其中一个样本表示为:x~i,i={1,2,...,N},则新样本为:
。
xnewi=x+rand(0,1)×(x~i−x),i={1,2,...,N}

2.1.2、Borderline-SMOTE算法
在Borderline−SMOTE中,若少数类样本的每个样本xi求k近邻,记作Si−knn,且Si−knn属于整个样本集合S,若满足
k2<|Si−knn∩Smaj|<k
则将 xi 加入DANGER集合,DANGER集合代表了接近分类边界的样本,将DANGER当作SMOTE的种子样本生成新样本。

2.2、随机欠采样
从多数类
Smaj
中随机选择少量样本
E
,再合并原有少数类样本作为新的训练数据集,新数据集为
2.2.1、EeasyEnsemble 算法
此算法类似随机森林的Bagging方法,具体步骤如下:
1. 把数据分成两部分,分别是多数样本和少数样本;
2. 对于多数样本
Smaj
,通过n次有放回抽样,生成n份子集;
3. 少数样本分别和这n份样本合并训练n模型;
4. 最终结果是这n个模型预测结果的平均值。

http://baogege.info/2015/11/16/learning-from-imbalanced-data/
http://www.doc88.com/p-7314389829640.html