【问题标题】:XGboost objectives: Is there a way to do Multi label (NOT multiclass ) classification?XGboost 目标:有没有办法进行多标签(不是多类)分类?
【发布时间】:2020-11-25 23:39:13
【问题描述】:

比较简单的问题。查看 xgboost 的客观文档,我看到“multi:softmax”和“multi:softprob”,但两者都是 mutliclass,只会输出一个类。有没有办法使用 xgboost 预测多个标签,或者我最好为每个单独的标签训练多个模型。例如,在 sklearn 上,RandomForestClassifier 支持多标签,在拟合时,目标数组的输入可以是 n 个样本 x n 个标签的形状。

澄清一下:当您想要预测学生是否获得 A、B 或 C 时,多类将类似于预测学生在测试中是否获得第 1、2、3 或 4 题。 (他们只能获得一个分数,但他们可以正确回答这些问题的任何组合)

【问题讨论】:

    标签: python-3.x scikit-learn xgboost multilabel-classification multiclass-classification


    【解决方案1】:

    我还没有找到 xgboost 原生支持的任何东西。唯一的解决方案是将它包裹在 sklearn.multioutput.MultiOutputClassifier 周围,它做同样的事情。但这种方法的缺点是您不能利用 xgboost 本身的 load_modelsave_model,必须使用类似 joblib 的东西来转储和加载模型(就 xgboost 版本而言,它不向后兼容)。

    【讨论】:

      猜你喜欢
      • 2017-04-16
      • 2020-05-01
      • 1970-01-01
      • 2021-04-19
      • 1970-01-01
      • 2020-06-26
      • 2020-01-19
      • 1970-01-01
      • 2019-09-24
      相关资源
      最近更新 更多