回归树

  大家都知道,决策树能够做分类问题,但是到了CART(classsiification and regression tree)算法发明的时候,树又能做分类也能做回归。感谢这位博主分享这么通俗易懂的博客,我只是对这篇博客进行整理,作为自己学习之用

1.原理描述

  一个回归树对应这输入空间(即特征空间)的一个划分以及在划分单元上的输出值。分类树中,我们采用信息论的方法,通过计算选择最佳划分点。而在回归树中,采用的是启发式的方法。假如我们有n个特征,每个特征有s_i(i\in(1,n))个取值,那我们遍历所有特征,尝试该特征所有取值,对空间进行划分,直到取到特征j的取值s,使得损失函数最小(回归树的损失函数用平方差),这样就得到了一个划分点。公式如图:


  假设将输入空间划分为M个单元: R_1R_2,..., R_m,那么每个区域的输出值就是: c_m = ave(y_i|x_i\in R_m),也就是该区域内所有点y值的平均数。
  举个例子。如下图所示,假如我们想要对楼内居民的年龄进行回归,将楼划分为3个区域 R_1R_2R_3(红线),那么 R_1的输出就是第一列四个居民年龄的平均值, R_2的输出就是第二列四个居民年龄的平均值, R_3的输出就是第三、四列八个居民年龄的平均值。
回归树_第1张图片

2.算法描述

回归树_第2张图片
回归树

3.一个实例

  依照个人的见解,其实树模型无论是回归还是分类,都是用关于自变量的不等式将整个空间分成一个个的小区域,然后依照提交对应哪个区域是几(回归)或者哪个区域是哪个类别(分类)。下图是回归树的图


回归树_第3张图片

  下面这个实例我就直接贴了。


回归树_第4张图片

回归树_第5张图片

回归树_第6张图片

回归树_第7张图片

  实际上,回归树总体流程类似于分类树,分枝时穷举每一个特征的每一个阈值,来寻找最优切分特征j和最优切分点s,衡量的方法是平方误差最小化。分枝直到达到预设的终止条件(如叶子个数上限)就停止。

你可能感兴趣的:(回归树)