【机器学习】决策树如何实现回归

文章目录

【机器学习】决策树如何实现回归1. 介绍2. 回归树的构建方法3. 递归二分法4. 回归树的剪枝5. 总结参考

1. 介绍

在 https://blog.csdn.net/qq_51392112/article/details 中,我们详细介绍了决策树基本内容:如何实现、决策树的类型、公式计算等,内容更偏向于决策树的分类任务,而分类任务也是很好理解的,因为直观上来说,决策树本身就很适合分类任务。

但是决策树还可以实现回归任务,这一讲我们将要细讲。与线性回归不同,回归树是将“空间”进行划分,每个空间则对应一个统一的预测值。

2. 回归树的构建方法

1)预测的标签值是根据该区域(空间)内的总样本数平均化得出的。

2)与线性回归类似,回归树也需要一个损失函数对回归的效果进行评估,这里采用平方残差和RSS进行评估:

其中,

y

i

y_i

yi​ 是样本的真实值,

y

R

j

y_{R_j}

yRj​​ 是第

R

j

R_j

Rj​ 空间所有样本的预测值。内层 ∑ 就是将该区域内所有的样本预测值和真实值的差值平方进行加和;外层 ∑ 就是遍历所有划分出来的区域。

但是如果我们仔细想一下,如果采用这种方法来回归,这个计算量是惊人的,因为空间划分有太多的情况,为了处理这种问题,我们常使用一种方法对划分空间提出了简化要求!

这种方法称作“递归二分法”!

3. 递归二分法

什么是递归二分?顾名思义,树的每次分裂都以二叉树的形式分裂。当我们初步根据特征及其最佳划分点分裂出了2个子结点(即空间)RJ ​后,不断从当前位置,继续将该空间的样本再次划分成2份! 1)划分方案:

自顶向下,从所有样本开始,不断从当前位置,把样本切分到2个分支里贪婪,每一次的划分,只考虑当下划分的最优,不回头考虑先前的划分

2)优化原则:

选择切分的维度x_j (即将数据的每一个特征)以及切分点s,使得再次划分后的回归树RSS结果最小

通俗来说,当我们初步划分出了两个空间后,接下来,将继续根据损失函数RSS开始选择维度,以及该维度下的切分点 t 再次将 子空间进行二分。

4. 回归树的剪枝

同样的,回归优化的过程同线性回归一样,在通过降低损失函数来优化模型的过程中,模型容易陷入“过拟合”的状态。同样需要引入“正则化项”作为惩罚。

与线性回归区别的是,由于回归树并不是数值模型,所以正则化项不可以引入如L2正则化项这种数值项,因此回归树里的正则化项与叶子结点相关: 这里的 ∣T∣示树T的结点数,当超参数α > 0时,树的结点越多,代表模型越复杂,树将为它的复杂性付出代价,所以使上式取到最小值的子树会变得更小。

5. 总结

回归决策树算法:

利用递归二叉分裂在训练集中生成一棵大树,只有当终端结点包含的观测值个数低于某个最小值时才停止。对大树进行代价复杂性剪枝,得到一系列最优子树,子树是 α 的函数。利用K折交叉验诞选择 α 。具体做法是将训练集分为K折。

对所有k = 1 , 2 , 3 , ⋯ K; 对训练集上所有不属于第k折的数据重复第(1)步~第(2)步得到与α对应的子树,并求出上述子树在第k折上的均方预测误差。 每个α会有相应的K个均方预测误差,对这K个值求平均,选出使平均误差最小的α。找出选定的α在第(2)步中对应的子树。

参考

【1】https://blog.csdn.net/RichardsZ_/article/details/108903858

好文阅读

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。