天天看点

非平衡数据的处理算法层面数据层面特征层面参考文献:

非平衡数据的处理

  • 算法层面
    • 代价敏感学习
    • 集成学习
    • 单类学习
  • 数据层面
    • 过采样
    • 欠采样
    • 混合采样
  • 特征层面
    • 分类器无关
    • 分类器独立
    • 分类器结合
  • 参考文献:

算法层面

代价敏感学习

核心思想:少数类样本更高代价

代表做法:

  • 代价矩阵
    非平衡数据的处理算法层面数据层面特征层面参考文献:
  • META-cost:根据最小期望代价修改训练数据的类标记,加入到新的学习过程中

集成学习

核心思想:集成多个弱分类器

代表算法:

  • Boosting
  • Bagging
  • AdaBoost:迭代过程中更新样本权重,增加错分样本权重
  • EasyEnsemble:多数类样本划分成子集,每个子集分别训练
  • BalanceCascade:建立在EasyEnsemble基础上,迭代过程中删除被分类正确的多数类样本
  • SMOTEBoost:增加合成样本
  • RUSBoost:随机欠采样样本
  • PCBoost:随机过采样样本

单类学习

核心思想:只对一个类进行学习

代表算法:

  • SVDD
  • One-class SVM

数据层面

过采样

核心思想:增加少数类样本

代表算法:

  • 随机过采样:随机重复少数类样本
  • SMOTE:找出少数类样本m的k近邻(少数类),在k金链之间的连线上产生随机的合成样本,根据不平衡比例设置采样倍率,确定最终生成的新样本。
  • Borderline-SMOTE:找位于边界的少数类样本,利用危险样本产生新样本
  • ADASYN
  • Haibo He根据样本的危险程度,也就是少数类样本在学习中的难易程度,通过加权的方法,构造合成样本的分布函数,来确定合成新样本的数目。
  • CBO:基于聚类的抽样算法。

欠采样

核心思想:删除多数类样本

代表算法:

  • 随机欠采样:随机删除多数类样本
  • One-SidedSelection:将多数类样本分为四种类型:噪声、边界、冗余和正常,只保留正常样本
  • NCL
  • Tomek links
  • OOS
  • NearMiss
  • BCS

混合采样

核心思想:过采样与欠采样相结合

特征层面

分类器无关

过滤式:FILTER

分类器独立

封装式:WRAPPER

分类器结合

嵌入式:EMBEDDED

参考文献:

面向非平衡数据的过采样方法研究_周晓敏

基于聚类的非平衡数据欠采样算法研究及应用_张雪

非平衡数据重采样方法研究_段冰倩