深入理解Pumpkin Book中的决策树核心概念

深入理解Pumpkin Book中的决策树核心概念

pumpkin-book 一个关于机器学习实战的中文项目,适合对机器学习实战和应用感兴趣的人士学习和实践,内容包括数据预处理、特征工程、模型调优等多个方面。特点是结合实际需求,提供了丰富的代码和实践案例,易于工程化应用。 pumpkin-book 项目地址: https://gitcode.com/gh_mirrors/pu/pumpkin-book

决策树是机器学习中最基础且重要的算法之一。本文将深入解析Pumpkin Book第四章中关于决策树的核心数学概念,包括信息熵、信息增益、基尼指数等关键指标的计算原理,以及CART决策树的构建过程。

信息熵的数学性质

信息熵是度量样本集合纯度的关键指标,其定义为:

$$\operatorname{Ent}(D)=-\sum_{k=1}^{|\mathcal{Y}|}p_k\log_{2}{p_k}$$

我们可以证明信息熵的取值范围是$0\leq\operatorname{Ent}(D)\leq\log_{2}|\mathcal{Y}|$,其中$|\mathcal{Y}|$表示样本类别总数。

最大值证明

将信息熵看作多元函数$f(x_1,...,x_n)=-\sum_{k=1}^{n} x_{k} \log {2} x{k}$,在约束条件$\sum_{k=1}^{n}x_k=1$下求最大值:

  1. 构建拉格朗日函数: $$L(x_1,...,x_n,\lambda)=\sum_{k=1}^{n} x_{k} \log {2} x{k}+\lambda(\sum_{k=1}^{n}x_k-1)$$

  2. 对各个变量求偏导并令其等于0,可得: $$\lambda=-\log {2} x{k}-\cfrac{1}{\ln2}, \quad k=1,...,n$$

  3. 解得最优解为$x_1=x_2=...=x_n=\cfrac{1}{n}$

  4. 代入得最大值为$\log _{2} n$

最小值证明

当某个$x_k=1$,其余$x_i=0$时,函数值为0,这是最小值点。

结论:信息熵在样本均匀分布时最大,在样本完全属于同一类别时最小。

信息增益与基尼指数

信息增益

信息增益定义为: $$\operatorname{Gain}(D,a) = \operatorname{Ent}(D) - \sum_{v=1}^{V}\frac{|D^v|}{|D|}\operatorname{Ent}({D^v})$$

信息增益反映了在知道属性$a$的取值后,样本类别不确定性的减少程度。在信息论中,这等价于属性$a$与类别之间的互信息。

基尼指数

基尼指数是CART决策树使用的划分标准: $$\operatorname{Gini_index}(D,a) = \sum_{v=1}^{V}\frac{|D^v|}{|D|}\operatorname{Gini}(D^v)$$

基尼指数越小,表示纯度越高。CART分类树采用二叉树结构,其构建过程为:

  1. 对每个属性的每个可能取值$v$,将数据集分为$a=v$和$a\neq v$两部分
  2. 计算这两部分的基尼指数加权和
  3. 选择使基尼指数最小的属性和取值作为划分点
  4. 递归进行,直到满足停止条件

连续属性处理

对于连续属性$a$,首先确定候选划分点集合: $$T_a={\lbrace{\frac{a^i+a^{i+1}}{2}|1\leq{i}\leq{n-1}}\rbrace}$$

然后计算每个划分点$t\in T_a$的信息增益: $$\begin{aligned} \operatorname{Gain}(D,a,t) &=\operatorname{Ent}(D)-\sum_{\lambda\in{-,+}}\frac{|D_t^{\lambda}|}{|D|}\operatorname{Ent}(D_t^{\lambda}) \end{aligned}$$

选择使信息增益最大的划分点作为最优划分点。

CART回归树

CART算法不仅可以处理分类问题,还可以处理回归问题。CART回归树的构建过程:

  1. 选择最优划分属性和划分点,最小化平方误差: $$v^* = \arg\min_{v}\left[\min_{c_1}\sum_{\boldsymbol {x}i\in{R_1(a,v)}}{(y_i - c_1)}^2 + \min{c_2}\sum_{\boldsymbol {x}_i\in{R_2(a,v)}}{(y_i - c_2)}^2 \right]$$

  2. 递归划分,直到满足停止条件

  3. 最终模型表示为: $$f(\boldsymbol {x}) = \sum_{m=1}^{M}c_m\mathbb{I}(x\in{R_m})$$

其中$c_m$是子空间$R_m$中样本输出值的均值。

总结

本文详细解析了Pumpkin Book中决策树相关的核心数学概念,包括:

  1. 信息熵的性质及其极值证明
  2. 信息增益与基尼指数的计算原理
  3. CART分类树的二叉树构建过程
  4. 连续属性的离散化处理方法
  5. CART回归树的构建算法

理解这些基础概念对于掌握决策树算法至关重要,也为学习更复杂的集成方法如随机森林、GBDT等奠定了基础。

pumpkin-book 一个关于机器学习实战的中文项目,适合对机器学习实战和应用感兴趣的人士学习和实践,内容包括数据预处理、特征工程、模型调优等多个方面。特点是结合实际需求,提供了丰富的代码和实践案例,易于工程化应用。 pumpkin-book 项目地址: https://gitcode.com/gh_mirrors/pu/pumpkin-book

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

伍畅晗Praised

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值