了解CART中分类的基尼系数和回归树
1 简介
CART(Classification and Regression Tree)既可以用于分类任务(Classification Tree),也可以用于回归任务(Regression Tree)。两者的关键区别在于 目标变量的类型:
分类树:目标变量是类别(离散的)。
回归树:目标变量是数值(连续的)。
2 使用的例子
下面用两个简单明了的例子来分别说明:
- 分类树(Classification Tree)例子:
问题:根据“天气”和“温度”来预测是否适合出去玩。
天气 温度 是否出去
晴 高 否
阴 高 是
雨 低 是
雨 高 否
目标变量:是否出去玩(是/否)是类别型,所以用分类树。
CART如何处理:
按照基尼指数(Gini)或信息增益来分裂节点。
比如第一步可能用“天气”这个特征来分割样本,使得“是/否”这两个类别尽可能纯。
在 CART 分类树中,基尼系数(Gini impurity) 是一种衡量数据集“纯度”的指标。CART 使用它来选择最优的特征和分裂点,从而构建分类树。
3 基尼系数(Gini impurity)
基尼系数(也叫基尼不纯度)描述的是一个样本被随机分类到某一类的错误概率。其公式如下:
基尼值越小,数据越“纯”,即大多数样本属于同一类。
举个例子:
假设一个节点里有 10 个样本,其中:
6 个是“是”(正类);
4 个是“否”(负类)。
如果这个节点中全是“是”或全是“否”,那么:
Py = 6/10 = 0.6 pn = 4/10 = 0.4
Gini=1−(0.6^2+0.4^2)=1−(0.36+0.16)=0.48
如果这个节点中全是“是”或全是“否”,那么:
Gini=1−1^2 =0
说明完全纯。
- CART 如何使用 Gini 指数
CART 会尝试在每一个候选分裂点计算加权后的 Gini impurity,然后选择 Gini impurity 最小的那个分裂点作为最优分裂。
步骤如下:
对每一个特征进行尝试所有可能的分裂点;
对每个候选分裂,把数据划分为左子集 𝐷𝐿 和右子集 DR;
计算该分裂的加权 Gini impurity
4 回归树(Regression Tree):
问题:根据“面积”和“卧室数量”来预测房价。
面积(平方米) 卧室数 房价(万元)
100 2 120
80 1 90
150 3 200
130 3 180
目标变量:房价(一个连续的数值),所以用回归树。
CART如何处理:
按照最小均方误差(MSE)来选择分裂点。
比如可能第一个分裂点是“面积 > 120”,把房价分成两组,每组的房价差异最小。
5 小结
特征 分类树 回归树
目标变量 类别型(如 是/否) 连续型(如 房价)
分裂标准 基尼指数 / 信息增益 均方误差(MSE)
叶节点输出 类别 平均值(预测值)
典型应用场景 客户是否流失、是否批准贷款 房价预测、销量预测
选择 Gini_split 最小的作为该节点的最优分裂。
CART 分类树通过计算每个分裂点的 加权基尼系数,选择最能提高节点纯度的分裂点,从而构建决策树。
- 点赞
- 收藏
- 关注作者
评论(0)