您的位置:首页 > 其它

决策树学习笔记

2017-10-02 19:56 141 查看
 这篇文章是在阅读《统计学习方法》和《机器学习》(西瓜书)是整理的相关知识点,具体知识细节可以参考这两本书。

决策树的直观感受

基于if-then规则

 这是最直观的一种理解,对于分类/回归任务来说,决策树就是根据特征构建一棵树,对于每一个样本来说,可以根据这些特征沿着树的一条路径向下走,最后在叶子节点确定所属类别/预测值。

基于条件概率的解释

 决策树是得到一个给定特征条件下类的条件概率分布。即决策树的每一条路径对应了 p(y|x=特征)中最大的那个类别。然后这个概率,其实就是基于已有数据的统计得出来的,即“最大似然”。 个人认为理解决策树是表征给定特征条件下的类的概率分布(也就是条件概率)是很重要的,后面所谓的信息增益/基尼系数减小的思路,就是希望每一次分类之后,这种条件概率分布的不确定性越来越小(通过信息熵/基尼系数度量~)~

决策树的学习方法

 一般机器学习的任务,就是使损失函数最小,决策树的损失函数是:

Ca=∑t=1∣T∣NtHt(T)+α∣T∣

 具体的公式,可以参考《统计学习方法》,这里假设已经构建了一棵树,假设有∣T∣个叶子节点,Nt代表了某个叶子节点的样本数,Ht(T)代表了该叶子节点的一个损失度量(比如,信息熵、再比如,基尼系数~),α∣T∣是一个正则项,模型越复杂越大。

 自然我们的任务就是要让损失函数最小化,但是这里的树的构建是指数级别的,是一个NP难问题,所以只能用一些“启发式”的方式来得到一棵次优的决策树。对应的就是:使用信息增益、信息增益比、基尼系数。具体地,要构造一棵决策树,对应的步骤是:

1. 特征选择

2. 决策树生成

3. 决策树剪枝

特征选择

 特征选择给我的感觉就是,用何种度量方式对决策树进行新节点的生成~就像梯度下降选择梯度的负方向一样,决策树的思路基本上是:每一次选择后,新的节点中的样本所属类别尽可能“纯净”。为了达到这个效果,就有了以下两种方式(其实目的是差不多的):

信息熵:信息论里面的,衡量一个概率分布的未知程度;而信息增益就是表征条件概率作用下,对“未知程度”的改变有多少。当然信息增益会让选择趋向于取值较多特征的部分,所以提出了信息增益率,直观上理解就是在信息增益下面,除以一个特征的信息熵,如果某个特征本身带来的信息熵很大(比如取值较多的特征),那么信息增益率就比较低。

基尼系数:感觉上其实和信息增益率很类似~直观理解是反映了从数据集D中随机抽取两次样本,类别不一样的概率,其实还是在说一个“不确定性”的问题~

树的生成

 没什么好说的,ID3使用了信息熵作为度量,而C4.3中先使用信息熵选出比较好的特征,在用信息增益率选出最优的特征。,这个地方和《统计学习方法》的不太一样,最后是CART方法,使用了基尼系数来作为度量,不过CART方法也有一个和上述方法不一样的地方,即对于每一个特征的每一个取值,CART方法是是否等于该值来划分数据,计算基尼系数,所以,对n个特征,每个特征m个值,就有m*n个基尼系数,选择其中最小的作为划分;而ID3和C4.5是算每一个特征的信息熵,最后结果,也不一定是二叉树~

树的剪枝

 《统计学习方法》的剪枝策略和《机器学习》(西瓜书)的有一些区别,或者说侧重点不一样,《机器学习》是在讨论剪枝的时机,然后剪枝是在验证集上进行的,而《统计学习方法》是在讨论剪枝的标准,是基于损失函数来讨论的,C4.5是固定α,直接在训练集上讨论,而CART是没有固定α,在训练集上找到一个最优子树序列,再在验证集上讨论最优子树。

 《机器学习》介绍了两种策略,一种是预剪枝,一种是后剪枝,一个是在生成树是控制,一个是树生成好了控制。预剪枝是贪心的,可能存在欠拟合的问题,后剪枝则速度则会慢一些。

 《统计学习方法》中,(虽然没有明说,但是ID3是没有剪枝的操作的)C4.5其实最基本的就是基于上面的损失函数进行验证(这个时候应该是α固定的),在CART方法中,还提出了一种能同时确定α和减枝的方法~,这里说几个关键性的前提条件:

对于固定的α,一定存在使损失函数最小的子树。

Breiman等人证明:可以用递归的方法对树进行剪枝,将α从小增大,0=α0<α1<α2 … < αn < +∞ ,产生一系列的区间[αi,αi+1 ),i=0,1…,;剪枝得到的子树序列对应着区间α∈[αi,αi+1),i =0,1,…,n的最优子树序列,序列中的子树是嵌套的

 即,我们可以求出多个α以及对应的子树,然后由于序列是嵌套的,那么可以先找到最小的α,然后逐级递增,找到对应的α和子树(不会是无限的,因为整棵树是有限大小的),然后在验证集上找到最优的子树。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: