我试图使用 xgboost R 包构建一个 0-1 分类器。我的问题是如何进行预测?例如,在随机森林中,树木对每个选项“投票”,最终预测基于多数。关于 xgboost,回归案例很简单,因为对整个模型的预测等于弱学习器(增强树)的预测之和,但是分类呢?
xgboost 分类器的工作方式是否与随机森林中的相同(我不这么认为,因为它可以返回预测概率,而不是类成员资格)。
我试图使用 xgboost R 包构建一个 0-1 分类器。我的问题是如何进行预测?例如,在随机森林中,树木对每个选项“投票”,最终预测基于多数。关于 xgboost,回归案例很简单,因为对整个模型的预测等于弱学习器(增强树)的预测之和,但是分类呢?
xgboost 分类器的工作方式是否与随机森林中的相同(我不这么认为,因为它可以返回预测概率,而不是类成员资格)。
梯度提升算法创建一组决策树。
此处使用的预测过程使用以下步骤:
临时的“预测变量”是一个概率,它本身没有任何意义。
您拥有的树越多,您的预测就越平滑。(对于每棵树,只有一组有限的值分布在您的观察中)
R过程可能是优化的,但理解这个概念就足够了。
在梯度提升的 h2o 实现中,输出是标志 0/1。我认为默认情况下使用F1 分数将概率转换为标志。我会做一些搜索/测试来确认这一点。
在同一实现中,二元结果的默认输出之一是混淆矩阵,这是评估模型的好方法(并打开一堆全新的询问)。
截距是“树木对其进行调整的初始预测值”。基本上,只是初步调整。
另外:h2o.gbm 文档