哪些损失函数与 h2o xgboost 和 gbm 中的分布相关?
What loss functions are associated with the distributions in h2o xgboost and gbm?
我需要知道在高斯分布、二项分布和多项分布的 h2o gbm 和 xgboost 函数中使用了哪些损失函数。不幸的是,我对 Java 的了解非常有限,我无法真正破译源代码,而且似乎也没有任何文件说明哪个发行版与哪个功能相关联。我想我从 here 中收集到,它是二项式的对数损失和高斯的 MSE,但我找不到多项式的任何东西。这里有人知道答案吗?
感谢您的提问。我们绝对应该在 documentation 中提供此信息。我们正在努力改进文档。回答你的问题:
H2O GBM 和 XGBoost 的多项式 classification 的损失函数也是 softmax。 H2O GBM 是基于这个 paper 实现的:Greedy function approximation: A gradient boosting machine,Jerome H. Friedman 2001。在第 4.6 章中。作者很好地解释了它是如何计算的以及为什么。
基于损失函数定义了negHalfGradient
方法,每个分布单独实现它。对于多项式分布 (here),实现是:
@Override
public double negHalfGradient(double y, double f, int l) {
return ((int) y == l ? 1f : 0f) - f;
}
其中:
y
是实际响应
f
是 link space 中的预测响应
l
是一个 class 标签(从原始标签按字典顺序转换为 class - 1 的 0 个)
如果您有其他问题,请告诉我。
我需要知道在高斯分布、二项分布和多项分布的 h2o gbm 和 xgboost 函数中使用了哪些损失函数。不幸的是,我对 Java 的了解非常有限,我无法真正破译源代码,而且似乎也没有任何文件说明哪个发行版与哪个功能相关联。我想我从 here 中收集到,它是二项式的对数损失和高斯的 MSE,但我找不到多项式的任何东西。这里有人知道答案吗?
感谢您的提问。我们绝对应该在 documentation 中提供此信息。我们正在努力改进文档。回答你的问题:
H2O GBM 和 XGBoost 的多项式 classification 的损失函数也是 softmax。 H2O GBM 是基于这个 paper 实现的:Greedy function approximation: A gradient boosting machine,Jerome H. Friedman 2001。在第 4.6 章中。作者很好地解释了它是如何计算的以及为什么。
基于损失函数定义了negHalfGradient
方法,每个分布单独实现它。对于多项式分布 (here),实现是:
@Override
public double negHalfGradient(double y, double f, int l) {
return ((int) y == l ? 1f : 0f) - f;
}
其中:
y
是实际响应f
是 link space 中的预测响应
l
是一个 class 标签(从原始标签按字典顺序转换为 class - 1 的 0 个)
如果您有其他问题,请告诉我。