打破机器学习中的小数据集诅咒
上采样还是下采样:由于不平衡的数据本质上是以不同的权重惩罚多数类,所以解决这个问题的一个方法是使数据平衡。这可以通过增加少数类的频率或通过随机或集群抽样技术减少多数类的频率来实现。过度抽样与欠抽样以及随机抽样与集群抽样的选择取决于业务上下文和数据大小。一般来说,当总体数据大小较小时,上采样是首选的,而当我们有大量数据时,下采样是有用的。类似地,随机抽样和聚集抽样是由数据分布的好坏决定的。 生成合成数据:尽管上采样或下采样有助于使数据平衡,但是重复的数据增加了过度拟合的机会。解决此问题的另一种方法是在少数类数据的帮助下生成合成数据。合成少数过采样技术(SMOTE)和改进过采样技术是产生合成数据的两种技术。简单地说,合成少数过采样技术接受少数类数据点并创建新的数据点,这些数据点位于由直线连接的任意两个最近的数据点之间。为此,该算法计算特征空间中两个数据点之间的距离,将距离乘以0到1之间的一个随机数,并将新数据点放在距离计算所用数据点之一的新距离上。注意,用于数据生成的最近邻的数量也是一个超参数,可以根据需要进行更改。 图11:基于K=3,合成少数过采样技术过程 M-SMOTE是一个改进版的SMOTE,它考虑了数据中少数分类的底层分布。该算法将少数类的样本分为安全/安全样本、边界样本和潜在噪声样本三大类。这是通过计算少数类样本与训练数据样本之间的距离来实现的。与SMOTE不同的是,该算法从k个最近邻中随机选择一个数据点作为安全样本,从边界样本中选择最近邻,对潜在噪声不做任何处理。 集成技术:聚合多个弱学习者/不同模型在处理不平衡的数据集时显示出了很好的效果。装袋和增压技术在各种各样的问题上都显示出了很好的效果,应该与上面讨论的方法一起探索,以获得更好的效果。但是为了更详细地了解各种集成技术以及如何将它们用于不平衡的数据,请参考下面的博客。 https://www.analyticsvidhya.com/blog/2017/03/imbalanced-classification-problem/ 总结 在这段中,我们看到数据的大小可能会体现出泛化、数据不平衡以及难以达到全局最优等问题。我们已经介绍了一些最常用的技术来解决传统机器学习算法中的这些问题。根据手头的业务问题,上述一种或多种技术可以作为一个很好的起点。 【凡本网注明来源非中国IDC圈的作品,均转载自其它媒体,目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。】 延伸阅读:
(编辑:应用网_阳江站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |