xgboost 或 lightgbm 处理二项式问题

数据挖掘 xgboost 可能性 超参数
2021-10-05 21:43:46

我有一个数据集,其中包含一列试验、一列成功和其他特征;而且,显然,我可以生成一个概率列。我想使用梯度提升方法(如 xgboost 或 lightgbm)来模拟成功概率。我应该在 lightgbm 或 xgboost 中设置哪个参数来处理这个问题?

2个回答

我认为这对于主要的(据我所知)xgboost 库来说是不可能的,因为这基本上听起来像是对比率/比例情况的回归(一个以 [0,1] 为界的因变量)。

实现这一点的一种简单方法是允许Beta 分布(看看它是如何有界的)作为xgboost中的目标函数,但此时它不是一个选项。

RPython有 beta 回归模型它们旨在处理 0 到 1 之间的值。但是,据我所知,LightGBM、XGboost 等没有直接的 beta 回归实现。有些人似乎将 beta 回归扩展到基于树的方法,但这是不等于提升。

另请参阅此帖子以了解非常相似的问题。正如那里提到的那样,一种天真的方法可能是在提升设置中简单地运行正常回归并查看结果有多“糟糕”(即值<0>1)。或者,您可以尝试预测连续特征并根据预测值计算成功概率。