我在Greedy function Approximation: A Gradient boosting Machine ( pdf ) 中阅读了很多关于 gbm 的内容,但我无法以简单的方式编写算法,例如LS_Boost。有人能解释一下是什么,以及如何处理它吗?
你能解释一下梯度提升算法是如何工作的吗?
机器算法验证
回归
助推
2022-04-03 07:48:13
2个回答
对于实施检查:
https://github.com/2pc/libgbdt.git
对于算法细节,还有另一个解释得更好的图形描述:
http://www.lifesciencessociety.org/CSB2006/toc/PDF/43.2006.pdf
和这个:
在蛋白质折叠的情况下,转化为:
来自我与 Jeremy Howard 一起写的一篇文章附录中的常见问题解答,名为How to explain gradient boosting:
“boosting 不是创建一个强大的模型,而是将多个简单模型组合成一个复合模型。这个想法是,随着我们引入越来越多的简单模型,整体模型变得越来越强大。在 boosting 术语中,简单模型是称为弱模型或弱学习器。
为了改进它的预测,梯度提升着眼于它的当前近似值 yhat 和已知的正确目标向量 y 之间的差异,y 被称为残差 y - yhat。然后它训练一个弱模型,将特征向量 x 映射到该残差向量。将弱模型预测的残差添加到现有模型的近似值可将模型推向正确的目标。添加大量这些微调,提高了整体模型的近似性。”
我们加入了一些我认为会有所帮助的有趣的可视化;例如,这是其中之一:
对于算法本身,您可以查看我们对通用算法的讨论,但这是指您可能需要在该文章中回顾才能获得的符号。无论如何,这是我们的算法版本,它假设回归树而不是任何其他类型的弱模型:
该回归树假设极大地表明了数学,此外,它是每个人在实践中使用的。




