LightGBM 'class_weight' 参数:是否与二元分类一起使用?

Nay*_*k S 5 python classification machine-learning decision-tree lightgbm

在处理类别不平衡问题时,惩罚多数类别是我在构建机器学习模型时遇到的常见做法。因此,我经常在重新采样后使用类别权重。LightGBM 是一种基于决策树的高效框架,被认为可以很好地处理类不平衡问题。所以我使用 LightGBM 模型来解决我的二元分类问题。该数据集的类别不平衡程度较高,比例为 34:1。

我最初使用带有“类权重”参数的 LightGBM 分类器。然而,LightGBM Classifier 的文档提到仅将此参数用于多类问题。对于二元分类,建议使用“is_unbalance”或“scale_pos_weight”参数。但是,通过使用类权重,我看到了更好的结果,并且与使用其他两个参数相比,调整权重和跟踪模型的性能也更容易。

但由于文档建议不要将其用于二元分类,那么使用该参数是否有任何影响?我在测试数据和验证数据上使用它获得了良好的结果,但我想知道它在其他实时数据上是否会有其他表现?

PJ_*_*PJ_ 0

文档推荐了替代参数:

该参数仅用于多类分类任务;对于二元分类任务,您可以使用is_unbalancescale_pos_weight参数。

https://lightgbm.readthedocs.io/en/latest/pythonapi/lightgbm.LGBMClassifier.html