【机器学习】GBDT(Gradient Boosting Decision Tree)

来源:互联网 发布:不亦君子乎? 编辑:程序博客网 时间:2024/05/11 05:08

GBDT(Gradient Boosting Decision Tree),迭代决策树,一种迭代的决策树算法,该算法由多棵决策树组成,所有树的输出结果累加起来就是最终答案。它在被提出之初就和SVM一起被认为是泛化能力(generalization)较强的算法。近些年更因为被用于搜索排序的机器学习模型而引起大家关注。

分支的顺序:最小均方差

每个人的预测误差平方和 除以 N。被预测出错的人数越多,错的越离谱,均方差就越大,通过最小化均方差能够找到最靠谱的分枝依据。

分支结束条件:

分枝直到每个叶子节点上人的年龄都唯一(这太难了)或者达到预设的终止条件(如叶子个数上限),若最终叶子节点上人的年龄不唯一,则以该节点上所有人的平均年龄做为该叶子节点的预测年龄。

梯度迭代的过程

第M个回归树的回归的目标值是第M-1个回归树的残差,即
hM(x)=tFM1(x)
残差的意思就是: A的预测值 + A的残差 = A的实际值
GBDT的建树过程不是并行的,而是串行的,所以速度较慢,但所有的树一旦建好,用它来预测时是并行的,最终的预测值就是所有树的预测值之和。

梯度迭代的含义

损失函数 ε=1/2tF(x)2
该损失函数关于F(x)的导数(梯度)为: dε/dF(x)=tF(x)
该损失函数在FM−1(x)处的导数(梯度)为:dεdF(x)|FM1(x)=(tFM1(x))
所以在建立第 M 棵树时,新的目标值正好就是损失函数在 FM−1(x) 处的负梯度。

0 0
原创粉丝点击