非均衡数据或不均衡数据的处理方法

什么是非均衡数据?

首先举个生活中的例子,如果想大致调查一个年级(男生女生人数1:1)的平均体重,用抽样调查方法,先随机抽了一个班进行测量,这个班50位同学,恰好有40位男生,10位女生,结果可想而知不准确。那这个数据就是非均衡数据了。
非均衡数据就是我们的数据集不同类别的样本数之间相差很多。
当我们进行机器学习任务时,如果样本有大量的非均衡数据,以总体分类准确率为学习目标的传统分类算法会过多地关注多数类,从而使得少数类样本的分类性能下降。绝大多数常见的机器学习算法对于不平衡数据集都不能很好地工作。所以,对非均衡数据的处理非常重要。

我们目前从两个方面处理非均衡数据:数据层面和算法层面。通俗的讲,回到我们的例子,数据层面是这样解决的,可以减少男生人数到10人或者增加女生人数到40人去测量。算法层面上,可以让这些样本数不变,可以把这10位女生的体重乘以4然后去和男生的总体重加起来再平均。

一. 数据层面

  1. 重采样
  • 过(上)采样:用于数据量不足时,它尝试通过增加稀有样本的数量来平衡数据集,而不是去除丰富类别的样本的数量。通过使用重复、自举或合成少数类过采样等方法来生成新的稀有样品。
  • 欠(下)采样:用于数据量过多时,它尝试通过减少丰富类的大小来平衡数据集。通过保存所有稀有类样本,并在丰富类别中随机选择与稀有类别样本相等数量的样本,然后根据平衡的新数据集以进一步建模。
  • 缺点:随机过采样通过对少类样本的简单复制来增加少数类样本量,可能导致过拟合和计算负担的增加。传统的随机欠抽样是随机舍弃多数类中的部分样本,可存在因去除有意义的模式而导致有效信息损失的问题。
  • 传统过采样和欠采样都是随机产生数据,为此,Chawla等提出一种过采样方法 SMOTE( Synthetic Minority Over-samplingTechnique),其策略是对每个少数类样本,从其最靠近该样本的附近样本中随机选出一个样本,然后在两个样本之间的连线上随机选出一点作为新合成的少数类样本。这种通过合成的方法生成新少数类样本点,有效扩大了分类的决策边界,从而提高分类模型的泛化能力以及对少数类样本的识别能力。然而,SMOTE方法仅适用于连续输入特征空间的二分类问题。 Nguyen等指出当少数类样本量不够时,会因对真实分布的有效估计而损害 SMOTE方法的提升效果。总的来说抽样方法操作简单,但存在有效信息损失或过度拟合的问题。
  1. 划分训练集
  • 这个方法经常用于机器学习。计算机从有标签的训练数据中学习,然后给定某个新数据,预测它的标签。简单来说,就是通过有标签的数据训练,获得一个模型,然后通过构建的模型,给新数据添加上特定的标签。
  • 首先根据代价敏感学习,学习一个合理的类别样本分布比例(相当于不同类别的权值)。然后将大类样本随机划分成一系列不相交子集。这些子集的大小由稀有类样本集的数量和预先学习的样本分布比例决定。接下来分别将这些不相交子集跟稀有类样本结合,组成一系列平衡的分类子问题,单独训练成子分类器。最后将这些子分类器的输出进一步学习成组合分类器。

二.算法层面

  1. 代价敏感方法
  • 在大部分不平衡分类问题中,稀有类是分类的重点。在这种情况下,正确识别出稀有类的样本比识别大类的样本更有价值。反过来说,错分稀有类的样本需要付出更大的代价。代价敏感学习赋予各个类别不同的错分代价(Cost),它能很好地解决不平衡分类问题。以二分类问题为例,假设正类是稀有类,并具有更高的错分代价,则分类器在训练时,会对错分正类样本做更大的惩罚迫使最终分类器对正类样本有更高的识别率。如Metacost和Adacost等算法。
  1. 分类器集成方法
  • 分类器集成,其实就是集成学习,通过构建并结合多个学习器来完成学习任务。一般结构是:先产生一组“个体学习器”,再用某种策略将它们结合起来。结合策略主要有平均法、投票法和学习法等。
  • 如今有很多分类器,有的分类器很强大,有的非常简单,而集成学习就是先要生成多个分类器,然后将这些分类器非常有策略的结合在一起,生成一个新的模型,使用集成学习的原因两方面:单个模型不够强大,需要提高它的表现、模型的选择问题。集成学习又称作是多分类器系统,它不是一个算法,而是一大门类算法,包括 Bagging和 Boosting,它们俩本身又包括很多的算法。集成学习说白了也很简单,我有一些输入特征(在这里不考虑特征选择),传统的意义上来讲,使用一个分类器,输出分类的结果,但是在集成学习中,同样的输入给多个分类器(在这里需要强调一下,集成学习之所以有效,一定要是不同的分类器,如果是相同的分类器,它存在就没有太多的意义),我们可以使用不同的机器学习算法SVM,KNN等,或者是算法相同,但是训练的样本不同,可以使用 Bootstrap来得到不同而且符合类似的分布的样本,从而得到不同的分类器。除此之外我们不需要使用很强的分类器,太强计算复杂度很高,还可能会导致过拟合等问题。对于集成学习,可以做个比喻“老师给出了一个问题,全班的同学都来思考,每个人都给老师一个答案,然后将所有同学的意见都综合起来最后形成结果”,所以集成学习重点就在于,如果找到这些分类器,并将这些分类器的结果结合。
  1. 非迭代核逻辑回归方法
  • 在已有的核逻辑回归方法基础上,针对非均衡数据情形提出一种新的非迭代的稳健核逻辑回归方法LS-RKLR。该方法引入广义逻辑函数,构造出个偏移的核逻辑回归,在数据可分条件下,能够形成最大间隔超平面。同时,通过在分类边界处进行泰勒展开,将核逻辑回归限定在只需对更富有信息量的分类边界处样本的学习,使牛顿法即迭代加权最小二乘法( IRLS)简化为非迭代的线性求解问题。
  1. 自适应特征选择算法
  • 当数据的特征较多,维度较高时,在对数据进行合适的数据清洗后,提出并实现了一种梯度提升决策树的自适应选择方法,对应用于动态流预测模型的数据集进行特征选择。以分类和回归决策树作为基学习器,采用梯度提升决策树算法进行回归拟合。通过迭代过程中每棵决策树产生的基尼指数和分裂特征属性的次数来计算特征重要度,并采用二次下降法对特征进行自适应选择,实现对数据流重要特征的自动选取。
  1. 一类学习
  • 一类学习技术主要通过刻画一类样本概念或一类样本分布来识别未标记样本,此方法主要应用于极端异常事件监测中,一类支持向量机是一类学习技术中被广泛采用的实现算法之一。
  1. 主动学习
  • 主动学习是类别不均衡学习中比较热点的硏究方向之一,主要解决类标记数据稀少而未标记数据海量情况下的分类学习任务,其实现过程如下:首先通过一个基分类器对已标注样本进行监督学习,样本选择算法对未标注数据进行选择,并将其交给人类专家进行标注,把标记后的样本加入到已标注样本集中,以扩展训练样本集,再用基分类器进行监督学习。重复上述过程,基分类器的性能逐渐提髙,直到满足某个预设条件为止。根据样本选择方式的不同,主动学习方法可以分成基于池的(poo|- based)主动学习和基于流的 (stream- based)主动学习两类。
  1. 极端学习
  • 极端学习机作为一种新的单隐层前馈神经网络,具备结构简单、训练速度快等优点,近年来,已被成功应用于类别不平衡学习上。例如Li一种面向类别不均衡学习的提升加权极端学习机算法,首先把不同类别的样本进行加权训练极端茡习机,然后用AdaBσσst算法对极端学习机进行提升训练。Yu等人提岀一种面向类别不均衡问题的优化选择补偿极端学习机算法,用黄金分割搜索算法寻找最优补偿值,对极端学习机关于少数类的输岀结果进行优化补偿。Ding等人提出一种面向在线序列不平衡学习的核映射的加权极端学习机算法,有效避免了一般在线序列极端学习机算法中存在的非优隐含结点问题。

Li:24K , Kong X , Lu Z Boosting weighted ELM for imbalanced learning JNeurocomputing , 2014 , 128 : 15-2125

Yu:Yu H , Sun C , Yang X , Yang WODC-ELM : optimal decision outputs compensatlon-based extreme learningmachine for classifying imbalanced dataljl , Knowledae-based Svstems 2016 . 92 : 55-70

Ding: Ding S, Mirza B, Lin Z, Cao Jai X. Kernel based online learning formbalance multiclass classificationNeuro-computing, 2018, 277: 139-14

三. Bagging和Boosting方法

Bagging:即套袋法,其算法过程如下:

  1. 从原始样本集中抽取训练集。每轮从原始样本集中使用Bootstraping的方法抽取n个训练样本(在训练集中,有些样本可能被多次抽取到,而有些样本可能一次都没有被抽中)。共进行k轮抽取,得到k个训练集。(k个训练集之间是相互独立的)

  2. 每次使用一个训练集得到一个模型,k个训练集共得到k个模型。(注:这里并没有具体的分类算法或回归方法,我们可以根据具体问题采用不同的分类或回归方法,如决策树、感知器等)

对分类问题:将上步得到的k个模型采用投票的方式得到分类结果;对回归问题,计算上述模型的均值作为最后的结果。(所有模型的重要性相同)

Boosting:这种方法每次使用的是全部的样本,每轮训练改变样本的权重。下一轮训练的目标是找到一个函数f来拟合上一轮的残差。当残差足够小或者达到设置的最大迭代次数则停止。Boosting会减小在上一轮训练正确的样本的权重,增大错误样本的权重。(对的残差小,错的残差大)

前者的优点是相对简单而且支持并发;后者的优点是训练集稳定结果可信度更高。最终又变成了一个性能与准确度的平衡择取问题。

参考文献:

[1]余德美. 一种新的处理非均衡数据的非迭代核逻辑回归方法[D].中国科学技术大学,2019.

[2]刘树栋,张可.类别不均衡学习中的抽样策略研究[J/OL].计算机工程与应用:1-18[2019-09-25].

[3]邓晶,张倩.交通流数据自适应特征选择算法[J/OL].计算机技术与发展,2019(12):1-7[2019-09-25].

  • 3
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值