R gbm 函数中的权重参数

Posted

技术标签:

【中文标题】R gbm 函数中的权重参数【英文标题】:Weights argument in R gbm function 【发布时间】:2015-06-22 19:46:39 【问题描述】:

R gbm 函数中的 weights 参数是什么?它是否实现了cost-sensitive随机梯度提升?

【问题讨论】:

【参考方案1】:

你可能已经读过这个,但是文档说weights参数是这样定义的:

在拟合过程中使用的可选权重向量。必须 为正但不需要归一化。如果 keep.data=FALSE 在 对 gbm 的初始调用则由用户负责 将权重重新提供给 gbm.more。

因此,我的解释是它们是任何统计模型中的标准观察权重。

它对成本敏感吗?好问题。我首先注意到该软件包的主要引用之一是:

B.克里格勒 (2007)。 Cost-Sensitive Stochastic Gradient Boosting Within a Quantitative Regression Framework.

所以我认为它确实暗示了成本敏感性,但在小插图中没有明确使用该术语,所以如果它不明显的话。

不过,我做了一些更深入的研究,发现了更多资源。您可以在描述包的this 文章末尾找到描述权重的方程。

我还发现有人问way back in 2009 in a mailing list 这个问题,虽然没有回应,但我终于找到了一个scholarly article 讨论使用gbm 和其他 R 包进行成本敏感的梯度提升。

结论是gbm 的分位数损失函数是可微分的,可用于高估/低估具有不同误差成本的成本敏感型应用,但可能需要其他定量损失函数(分位数除外) /适用于对代价敏感的梯度提升的一些应用。

那篇论文以gbm 为中心,但也讨论了其他软件包,如果您的重点是对成本敏感的梯度提升,那么您可能还想看看他们在论文中提到的其他软件包。

【讨论】:

以上是关于R gbm 函数中的权重参数的主要内容,如果未能解决你的问题,请参考以下文章

过拟合解决办法之一:权重衰减

ctree CART 条件树中的权重与权重 (party::ctree)

将权重导入opencv MLP?

如何掩盖 PyTorch 权重参数中的权重?

R减少glmnet中x变量之一的权重

如何获取所有终端节点 - r 中的权重和响应预测“ctree”