基于模型的提升和梯度提升之间究竟有什么区别?有关基于模型的提升的介绍,请参阅https://cran.r-project.org/web/packages/mboost/vignettes/mboost_tutorial.pdf 在我看来,这两个术语是等价的。但是,两者都在各种文献中使用...
基于模型的提升和梯度提升之间的区别
数据挖掘
助推
2022-03-09 03:27:41
2个回答
Gradient Boosting 将基础学习器拟合到现有模型的损失函数的梯度,即找到最小化其中是当前迭代相对于的梯度。实际上它是函数空间中的梯度下降。
组件明智的提升方案,例如使用的mboost有一个基础学习者列表,在每个步骤中选择一个,即
form2 <- y ~ bols(x1) + bols(x2) + bols(x1, by = x2, intercept = FALSE) +
bspatial(x1, x2, knots = 12, center = TRUE, df = 1)
指定 4 个可能的基础学习器bols(x1)、和bols(x2),它们都是回归样条。bols(x1,by=x2)bspatial(x1,x2)
更一般地,梯度提升决策树在每一步都适合一棵树。所以基础学习器可以说更复杂。
我相信基于模型和功能的术语是等价的,' mboost'和GBDT都是例子。
我认为基于模型的提升是梯度提升的概括,它允许比树更复杂的基础预测器。
参考: http ://www.jmlr.org/papers/volume11/hothorn10a/hothorn10a.pdf