cart回归树构建过程:
x1 x2 y
2 1 3
4 3 2
6 5 4
8 7 1
步骤1:找最优划分属性和对应的划分点
x1候选的划分点(3,5,7)和x2的候选划分点(2,4,6)
计算mse_x1_3,按照x1小于3和大于3划分左右两个节点
左边 右边
x1 x2 y x1 x2 y
2 1 3 4 3 2
6 5 4
8 7 1
c1=3 c2=7/3
计算mse_x1_5,按照x1小于5和大于5划分左右两个节点
左边 右边
x1 x2 y x1 x2 y
2 1 3 6 5 4
4 3 2 8 7 1
c1 = 2.5 c2=2.5
mse_x1_3 = {(3-3)**2+((2-(7/3))**2 + (4-(7/3))**2 +(1-(7/3))**2)}
mse_x1_5 = {((3-2.5)**2+(2-2.5)**2)+((4-2.5)**2+(1-2.5)**2)}
mse_x1_7
mse_x2_2
mse_x2_4
mse_x2_6
选择mse最小的值对应的属性和划分点作为第一个划分点
步骤2:划分数据集和对应的输出值,假设mse_x1_3最小,那么按照x1的3划分
左边 右边
x1 x2 y x1 x2 y
2 1 3 4 3 2
6 5 4
8 7 1
c1=3 c2=7/3
3、步骤3 继续划分
因为左边只有一个样本,不需要继续划分,只需要考虑右边的
x1候选的划分点(5,7)和x2的候选划分点(4,6)
计算mse_x1_5,按照x1小于5和大于5划分左右两个节点
左边 右边
x1 x2 y x1 x2 y
4 3 2 6 5 4
8 7 1
c1=2 c2=(1+4)/2=2.5
mse_x1_5 ={(2-2)**2 + ((4-2.5)**2+(1-2.5)**2)}
mse_x1_7
mse_x2_4
mse_x2_6
选择最小的mse对应的属性和划分点作为划分
4、判断停止条件
可以根据树的深度或者叶子节点最小样本数