提升树是以分类树或者回归树为基本分类器的提升方法。以决策树为基函数的提升方法称为提升树(boosting tree)
提升树算法只需将Adaboost算法的基本分类器限制为二分类树(对于二分类问题而言)即可,可以说提升树是Adaboost算法的特殊情况。
序号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|---|---|---|
xi x i | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
yi y i | 5.56 | 5.70 | 5.91 | 6.40 | 6.80 | 7.05 | 8.90 | 8.70 | 9.00 | 9.05 |
这里的切分点指的是将 x x 值划分界限,数据中 x x 的范围是 [1,10] [ 1 , 10 ] ,假设我们可取得切分点 s s 有 [1.5,2.5,3.5,...,9.5] [ 1.5 , 2.5 , 3.5 , . . . , 9.5 ] ,并且把分界线两边的样本集合记为 R1,R2 R 1 , R 2 。假设取1.5的分界线,即 s=1.5 s = 1.5 ,那么 R1={1},R2={2,3,...,10} R 1 = { 1 } , R 2 = { 2 , 3 , . . . , 10 } ,把 c1,c2 c 1 , c 2 记为分界线两边 yi y i 的平均值,如公式(1)所示,则 c1=5.56,c2=7.50 c 1 = 5.56 , c 2 = 7.50 。
实际上,对于以上数据求得最佳分界线是 s=6.5 s = 6.5 ,对应地有 R1={1,2,...,6},R2={7,8,9,10},c1=6.24,c2=8.91 R 1 = { 1 , 2 , . . . , 6 } , R 2 = { 7 , 8 , 9 , 10 } , c 1 = 6.24 , c 2 = 8.91 。所以回归树 T1(x) T 1 ( x ) 为
当前的加法模型为
用 f1(x) f 1 ( x ) 拟合训练数据的残差表如下,其中 r2i=yi−f1(xi),i=1,2,...,10 r 2 i = y i − f 1 ( x i ) , i = 1 , 2 , . . . , 10
序号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|---|---|---|
xi x i | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
r2i r 2 i | -0.68 | -0.54 | -0.33 | 0.16 | 0.56 | 0.81 | -0.01 | -0.21 | 0.09 | 0.14 |
用 f1(x) f 1 ( x ) 拟合训练数据的平方差损失为
这里求解过程与求解 T1(x) T 1 ( x ) 一样,只不过拟合的数据是上上轮中的残差表(因为后面的线性组合分类器是相加的结果),可以得到: