首页 > 其他 > 详细

test

时间:2020-01-20 20:59:49      阅读:70      评论:0      收藏:0      [点我收藏+]

??GBDT,是Gradient Boost Decision Tree的缩写,是Boosting家族的一元,即通过训练前后依赖的一组的学习器,组成一个强学习器,对外提供服务

??GBDT底层是决策树,这个从名字可以看出来,而且用的是CART算法;所以一定要了解CART的分类以及回归的算法。

??首先描述一下算法的流程,然后我们再通过一个例子来解释一下。

??GBDT的原理就是构建模型(树),然后计算这个模型和真实值的偏差(残差,residual),将偏差作为标签纸,样本特征不变,构建新的模型(树),在基于这个模型,再和上一次训练数据的标签纸进行残差计算,作为下一个学习器的训练标签,如此往复,知道构建的残差达到目标大小,或者迭代数达到了指定数目。

??GBDT的原理的数据公式如下:

技术分享图片
??首先是构建一个初始化的模型:

\(f_0(x)=arg min_c \sum_{i=1}^NL(y_i,c)\)

即求得c值,以是的损失函数的达到最小值,毫无疑问,在限定取值范围的情况下,均值是最小值。或者我们可以推导一下:

\(\sum_{i=1}^{N} L(y_i, c) = \sum_{i=1}^{N}\frac{1}{2}(y_i - c_i)^2\)对此式求导数为0,以求得极值: $\frac{\partial \sum L(y_i, c)}{\partial y_i} = \sum_{i=1}^{N}\left(y_i - c \right)$$=\sum_{i-1}^{N}y_i - Nc = 0 \(` 可以推知: c = `\)\frac{\sum_{i-1}^N y_i}{N} $`,即y的均值,在本例中

c = (1.1 + 1.3 + 1.7 + 1.8)/4 = 1.475

后面我们获取残差:
https://blog.csdn.net/zpalyq110/article/details/79527653 很强悍的解释,尤其是提供了一个例子来说明算法,我就是通过这个例子才明白算法含义
GBDT的原理的数据公式如下:
image ??首先是构建一个初始化的模型:技术分享图片

test

原文:https://www.cnblogs.com/xiashiwendao/p/12219327.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!