【问题标题】:The impact of number of negative samples used in a highly imbalanced dataset (XGBoost)高度不平衡数据集中使用的负样本数量的影响(XGBoost)
【发布时间】:2019-07-26 13:46:01
【问题描述】:

我正在尝试使用 XGBoost 在高度不平衡的数据集上对分类器进行建模,其中正样本数量有限,负样本数量实际上是无限的。 是否有太多的负样本(使数据集更加不平衡)会削弱模型的预测能力?除了运行时间之外,是否有理由限制负样本的数量?

我知道scale_pos_weight 参数应该可以解决这个问题,但我的直觉说即使这种方法也有其局限性。

【问题讨论】:

    标签: machine-learning xgboost


    【解决方案1】:

    直接回答您的问题:添加更多负面示例可能会降低经过训练的分类器的决策能力。对于负类,选择最具代表性的例子并丢弃其余的。

    从不平衡的数据集中学习会影响预测能力,甚至影响分类器的收敛能力。通常推荐的策略是为每个类保持相似大小的训练示例。类别不平衡对学习的影响取决于决策空间的形状和类别之间的边界宽度。它们越宽,决策空间越简单,即使对于不平衡的数据集,训练就越成功。

    TL;DR

    为了快速了解不平衡学习的方法,我推荐以下两篇文章:

    有一个名为 imbalanced-learn 的 Python 包,其中包含大量算法文档,我建议您进行深入审查。

    【讨论】:

    • 谢谢!我应该补充一点,现实世界的数据也非常不平衡(每个正数可能有数百万个负数)。我还需要争取平衡的数据集吗?
    • 不幸的是,分类器或训练过程并不关心真实世界的比率。如果你有,我会彻底探索我提供的链接并尝试使用建议的算法。
    猜你喜欢
    • 2016-01-06
    • 1970-01-01
    • 2018-05-17
    • 2017-07-27
    • 2021-05-29
    • 2022-11-15
    • 2017-04-19
    • 2021-01-26
    • 2019-09-19
    相关资源
    最近更新 更多