机器学习类别不平衡解决方法

作者: 田浩thao | 来源:发表于2019-06-11 15:47 被阅读49次

    1、前言

      对于分类任务,经常会遇到类别不平衡问题(不通类别训练样本数目差距较大),本文将对该问题给出常见的解决方法。

    2、常用解决方法

    2.1 欠采样(下采样)

      欠采样就是将样本多的类别中的数据进行采样,最终使得各个类别的数据达到平衡。
      注意:如果只是简单的对样本多的类别中的数据进行采样,则可能丢失重要的信息,所以更好的做法是利用多个模型,每个模型对样本较多类别的数据进行欠采样,与其他类别数据共同组成一个训练集,训练模型,然后将所有模型进行集成,最终结果就是这些模型的集成结果(例如EasyEnsemble算法)。

    2.2 过采样(上采样)

      过采样就是对样本少的类别增加训练样本,最终使得各个类别的数据达到平衡。
      注意:如果只是简单的对样本少的类别中的数据进行复制,则可能导致模型过拟合。SMOTE算法是通过对样本少的类别中的数据进行插值,生成新的数据。

    2.3 阈值移动

      阈值移动是指,模型训练时对不平衡的训练集不做任何处理,待预测时,将阈值进行改变,具体改变方法可以参考下式:
    \frac{y^{\prime}}{1-y^{\prime}}=\frac{y}{1-y} \times \frac{m^{-}}{m^{+}}

    注:阈值移动与代价敏感错误率有一定的关系,感兴趣读者可以自行分析。

    以上内容如有理解不当,请指出,谢谢!另,文章中有些内容来源于一些书籍或其他博客,这里就不一一列举,如有侵权,请与我联系删除。

    相关文章

      网友评论

        本文标题:机器学习类别不平衡解决方法

        本文链接:https://www.haomeiwen.com/subject/apjqfctx.html