【发布时间】:2020-05-02 15:45:29
【问题描述】:
我试图了解 XGBoost 中的多类分类是如何工作的。我已经阅读了 Chen 和 Guestrin (2016, https://arxiv.org/abs/1603.02754) 的论文,但我仍然不清楚细节:
假设我想为 3 类分类任务生成一个概率分类器。如果我理解正确,XGBoost 将回归树拟合为“弱学习器”或提升模型的组件。因此,如果将新的预测向量传递给 XGB 模型,则回归树会产生一个实数值作为“预测”,其(加权)组合就是增强模型预测。
从this question 和论文中的文档中,我收集到一个 softmax 激活函数应用于增强模型预测(一个真实值?),并且树结构(例如分裂点)是通过优化将softmax应用于模型输出后的交叉熵损失函数。
我不清楚三类概率究竟是如何获得的。如果模型输出只是一个真实值(单个回归树输出的加权组合),那么 softmax 函数的应用如何返回 3 个概率?
我在 Python 和 R 中都使用 XGBoost 库,但这可能没有区别。
【问题讨论】:
-
如果您对特定统计模型的工作原理有一般性问题,最好在Cross Validated 或Data Science 提问。
标签: python r machine-learning xgboost