回归问题的提升树(boosting tree)算法

算法:

输入:训练数据集 T={(x1,y1),(x2,y2),,(xN,yN)},xiRn,yiR;
输出:提升树 fM(x) .
(1) 初始化 f0(x)=0
(2) 对 m=1,2,,M
(a) 计算残差

rmi=yifm1(xi),i=1,2,,N
(b) 拟合残差 rmi 学习一个回归树,得到 T(x;Θm)
(c) 更新
fm(x)=fm1(x)+T(x;Θm)
(3) 得到回归问题提升数
fM(x)=m=1MT(x;Θm)

思路说明:

回归问题采用平方误差损失函数

L(y,f(x))=(yf(x))2
按照 前向分步算法极小化损失函数,则损失为
L(y,fm1(x)+T(x;Θm))=[yfm1(x)T(x;Θm)]2=[rT(x;Θm)]2
这里 r=yfm1(x) .
所以回归问题的提升树算法需要计算残差并拟合残差 。

你可能感兴趣的:(学习笔记)