我有一个单热编码的标签。我想用它们来训练和预测catboost分类器。然而,当我进行拟合时,它给了我一个错误,说标签的每行不允许有多个整数值。那么catboost不允许对标签进行一次性编码吗?如果没有,我怎样才能让catboost工作呢?
发布于 2017-08-12 07:40:49
我已经找到了解决此问题的方法。这个问题可能会有更好的解决方案,我很想听听。
解决方法是将one-hot编码转换为分类值。当然,大多数情况下,我们会将分类的值转换为one-hot编码。所以不要做这一步。
然后,将损失函数设置为'MultiClass‘。这是catboost (我认为大多数梯度增强包)将支持多分类的唯一损失函数。
发布于 2020-11-05 17:13:20
catboost会在内部自动对因子进行编码,无需手动进行
https://stackoverflow.com/questions/45644523
复制相似问题