【Abee】吃掉西瓜——西瓜书学习笔记(三)

本文深入解析决策树算法,包括信息增益、剪枝处理、连续值及缺失值处理等核心概念,探讨ID3、C4.5及CART三种主流决策树算法的特点,并介绍多变量决策树的工作原理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

决策树(decision tree)

目录

【内容包含 第四章】

基本流程

信息增益(information gain)

剪枝处理(pruning)

连续值处理

缺失值处理

多变量决策树


基本流程

决策树(decision tree)基于树状结构进行判定,基本流程遵循“分而治之”(divide-and-conquer)策略。

决策树基本流程

作图好累(doge

A\{a*}的意思是在集合A中把a*元素去掉

 


信息增益(information gain)

信息熵(information entropy)是一种常用的度量样本集合纯度的指标,假定当前样本集合D中第k类样本所占比例 p_{k},则D的信息熵为

                                                                                Ent(D)=-\sum_{k=1}^{|\gamma |}p_{k}log_{2}p_{k}

离散属性a有V个可能取值,若使用a对样本进行划分,会产生V个分支节点,第v个分支节点包含了D中在a属性里取值为 a^{v} 的样本,记为D^{v},可以根据上式算出D^{v}的信息熵,再考虑不同分支节点的样本数,对这个值进行加权,可以得到以属性a分类对样本集D的信息增益。

                                                                   Gain(D,a)=Ent(D)-\sum_{v=1}^{V}\frac{\left | D^{v} \right |}{\left | D \right |}Ent(D^{v})

信息增益越大,意味着划分后的集合纯度越高,也就意味着属性a越好。

                                                                                 a_{*}=arg maxGain(D,a)

ID3决策树算法[Quinlan,1986] 就是以 信息增益 为准则选择划分属性的。

书里关于西瓜好坏划分的例子非常棒!建议全篇背诵!(误

C4.5决策树算法[Quinlan,1993] 考虑到信息增益会偏向取值较多的属性,采用 增益率(gain ratio)作为选择标准。

增益率定义为

                                                                          GainRatio(D,a)=\frac{Gain(D,a)}{IV(a)}

                                                                            IV(a)=-\sum_{v=1}^{V}\frac{\left | D^{v} \right |}{\left | D \right |}log_{2}\frac{\left | D^{v} \right |}{\left | D \right |}

CART决策树算法[Breiman et al,1984]  使用基尼系数(Gini index)选择划分属性。

基尼系数为

                                                                              Gini(D)=\sum_{k=1}^{\left |\gamma \right |}\sum_{k'\neq k }^{.}p_{k}p_{k'}

反映了数据集D中随机抽取两个样本,类别标记不一致的概率

                                                                  GiniIndex(D,a)=\sum_{v=1}^{V}\frac{\left | D^{v} \right |}{\left | D \right |}Gini(D^{v})

 


剪枝处理(pruning)

为了解决决策树中过拟合的部分,需要采取剪枝处理。

预剪枝:在每个节点划分前进行估计,若不能带来泛化性能提升,则停止划分

后剪枝:生成完整决策树后,自底而上对非叶节点进行讨论,若子树能被叶节点代替,就替换叶节点

这两个操作都需要准备验证集,后剪枝比起预剪枝能保留更多的分支,欠拟合风险较低,缺点是训练时间开销较大。

 


连续值处理

C4.5决策树算法[Quinlan,1993]  中对连续值的处理方式是利用二分法(bi-partition)将连续属性离散化。即在候选划分点分别计算信息增益,选择信息增益最大的点作为划分点。

 

缺失值处理

由于部分数据可能存在缺失,而划分属性的时候显然只有有值的部分才能参与评判。分别计算出无缺失样本所占的比例\rho,无缺失样本中第k类的比例\tilde{p_{k}},无缺失样本在属性a中取值为a^{v}的样本所占的比例\tilde{r_{v}},此时信息增益的计算方式为

                                                        Gain(D,a)=\rho \times (Ent(\tilde{D})-\sum_{v=1}^{V}\tilde{r_{v}}Ent(\tilde{D^{v}}))

当样例在属性a上缺失时,以训练集中该类别的不同值占比的比例为概率进入所有子分支

 


多变量决策树

单变量,即每个叶节点以单属性的决策树,在图像角度体现是和坐标轴平行的直线(多维的话也是类似的概念)。多变量决策树就是把叶节点变成一个线性分类器,形如

                                                                        \sum_{i=1}^{d}w_{i}a_{i}=t

其中w指a属性的权重,w和t可以在训练集中学习。

 


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值