大数跨境
0
0

【十分钟 机器学习 系列课程】 讲义(二十八):CART-回归树算法

【十分钟 机器学习 系列课程】 讲义(二十八):CART-回归树算法 简博士数据分析吧
2021-12-02
2
导读:本课程讲义基于李航老师第2版的《统计学习方法》



内容提要:

 * CART-回归树算法解读

 * CART-回归树例题讲解

点击蓝字 |关注我们

欢迎回来,在上期的推送中,我们给大家介绍了CART算法分类树的生成方法【十分钟 机器学习 系列课程】 讲义(二十七):CART-分类树算法,这期咱们继续来学习CART算法中回归树的生成过程。

还记得CART算法的含义吗?没错,CART算法展开就是「Classification and Regression Tree」,对应的就是分类与回归树,在这里就是用树形结构来解决分类和回归的问题。

  • 如果输出变量是「离散」的,对应的就是「分类」问题。
  • 如果输出变量是「连续」的,对应的就是「回归」问题。

那么这期咱们来看看当输出变量「连续」时,CART「回归决策树」是怎么生成的。

壹 CART-回归树模型解读

1.划分连续数据

既然是决策树,那么输出的一定就是叶子结点,对于「连续变量」而言,我们可以按照一定的要求将连续变量进行划分。

假设有:「输出」 能否按照 来分区间划分呢?显然是「不行的哦」,因为我们这里是有监督的「回归模型」,必须要有输入有输出,因此应该是以「输入」进行划分。

比如在基尼指数中提到的【十分钟 机器学习 系列课程】 讲义(二十六):CART算法-基尼指数选桃子的例子。

对于「甜度」这个特征而言,有好吃的桃子和不好吃的桃子。那么我们就可以把这些「连续变量」的样本拿来进行划分:

假如:

「输入」:用 来表示由不甜到甜的程度

「输出」:用 来表示由不好吃到好吃的程度

甜度 0.05 0.15 0.25 0.35 0.45
好吃程度 5.5 7.6 9.5 9.7 8.2

在对数据划分时,就可以从「甜度」这个输入量来进行划分,但是要注意哦!由于CART算法是二叉树,所以我们「每次划分只能划分成两类」,比如:甜度 和甜度 这样两类,然后可以再继续在甜度 这个范围内,以此类推,选择最优切分点继续划分。

CART回归树模型

右上角的角标数意味着分类的次数,右下角标数代表着所属的类,这就意味着,输出单元最终不只是 个单元,也可以是多个单元。

搞清楚了连续数据的划分,接着我们就可以继续看看如何生成回归树模型。

2.回归树模型

假设将输入空间划分成 个单元, ,并在每个单元 上有一个固定的输出值 ,回归树模型可以表示为:

这里的 就是CART回归树模型, 代表输出的类, 就是指示性函数。这里该怎么理解呢?举个栗子,假设输入和输出变量如下表:

输入 R1
R2
... Rm
输出 c1
c2
... cm

就是指当

这样就意味着,对于某个输出单元也就是类 而言,当输入单元 和它一致时就存在,如果不一致时,就没有啦。这样把所有输入单元对应的类求和之后,便是最终的回归树模型。

那么该怎么找到这个切分点呢?

3.平方误差和最优输出

这时我们就需要通过「平方误差最小化」来找到最优切分点了。

选择第 个变量和取值 ,分别作为切分变量和切分点,并定义两个区域:

瞧,这里和上面桃子甜度切分的思路是完全一致的哦。接着,咱们就用「平方误差最小化」来寻找最优切分变量 和最优切分点

这个公式意味着,将输出变量按照输入变量分为了两类,然后要求出来每次分类后的各个分类的平方误差最小值之和,也就意味着整体的最小平方误差,「平方误差最小,意味着分类和实际最吻合」。其中:

这里可以理解成,如果我们想要「平方误差最小」,那么就是将每次分类后的 设置为对应的每个区域内的输出变量的平均值。

4.停止条件

那么我们什么时候停止回归呢?这里就是你说了算哦,可以是将输出变量分为两个类,也可以是直到没有多余的样本点。

输出的就是一棵「CART二叉树」

算法咱们就解读到这里,接下来我们就来一起上例题。

贰 CART算法回归树案例讲解

还是刚才桃子的例子,咱们不妨就一起来计算一下这个回归树的模型。

1.以甜度特征进行回归计算

Case 1 以甜度 进行划分

可以将表格里的连续数据划分成 两类。

类是:

甜度 0.05
好吃程度 5.5

类是:

甜度 0.05 0.15 0.25 0.35 0.45
好吃程度 5.5 7.6 9.5 9.7 8.2

可以得出: 类因为只有一个值,因此平均值 是它本身为 类的平均值就是:

接着代入平方误差公式中:

Case 2 以甜度 进行划分

同理,计算出平方误差和结果为

Case 2 以甜度 进行划分

平方误差和结果为

Case 2 以甜度 进行划分

平方误差和结果为

这样,从四个分类中,我们选取最小值,也就是当甜度 时,作为最优切分点,同时输出的「CART回归树模型」就是:

当然我们还可以对 区域进行回归划分,这就要取决于你的停止条件,如果说是继续分成三类,那么就可以按照相同的思路进行计算啦。

其实,细心的你有没有发现,通过对「连续」变量进行划分,就可以转换为「离散」的变量来进行计算,那么就和之前的分类树模型也是相通的方法,这也就是为什么常见的都是CART分类树模型啦。

好啦,关于「CART回归树算法」的讲解就到这里,下期我们将继续讲解「CART算法的剪枝」,感兴趣的小伙伴们记得「点赞+收藏+在看」。我们下期不见不散~

CART算法-回归树的生成

欢迎大家关注简博士的B站和公众号,在公众号私信“入群”,可以与小伙伴们一起讨论问题哦。


【声明】内容源于网络
0
0
简博士数据分析吧
信息时代最不缺的是什么?数据!最缺的是什么?数据分析的思维!在这里,你将获取神秘的力量,推开数据之门!
内容 181
粉丝 0
简博士数据分析吧 信息时代最不缺的是什么?数据!最缺的是什么?数据分析的思维!在这里,你将获取神秘的力量,推开数据之门!
总阅读66
粉丝0
内容181