-1

我希望我的预测概率在 0 到 1 之间。我已经在 xgboost 中做到了,但我也想尝试 Lightgbm,但它输出可靠的预测(仅整数)。我可以在 XGBoost 中通过将 'objective' 参数设置为 binary:logistic 来做到这一点,但在 Lightgbm 中似乎没有任何类似的参数,它只有二进制并且输出 0 或 1。

4

3 回答 3

0

要在 lightgbm 中获得 0 和 1 之间的类概率,您必须使用参数“objective”的默认值是回归。

'objective' = 'binary' ( return class label 0 or 1)
'objective' = 'regression' ( return class probability between 0 and 1)
于 2018-08-21T05:56:12.000 回答
0

您可以通过使用 num_class: 2 作为参数设置objective:“multiclass”来做到这一点。结果可能与直接二元分类模型不同,但我可以向您保证不会有性能损失。

奖励:作为损失度量,您可以使用“multi_error”或“multi_logloss”,或者有趣的是两者的组合,例如:metric:“multi_error”,“multi_logloss”

于 2018-10-11T22:21:14.480 回答
-1

您可以使用predict(raw_score=True)

如果您使用的是sklearn API- 您可以使用目标“二进制”,只需使用predict_proba()而不是predict()

于 2018-12-11T12:26:48.293 回答