统计学习方法(二)决策树

注:这篇文章标题虽然是<<统计学习方法>>系列,但实际上我写的时候是脱离书本写的,距离上一次看那一章节也有一段时间了,所以主要作用是自我巩固、理解,大概会想到哪写哪吧~

一.DT概述

决策树是if-then规则,是对条件概率的学习。

根据统计学习方法,我们考虑其三要素对应是什么:

模型-----一种描述对实例进行分类的树形结构

策略-------与训练数据矛盾较小的决策树,同时有很好的泛化能力。实质上DT学习的本质是由训练数据集估计条件概率模型,其损失函数通常是极大似然函数,因此其学习策略是以损失函数为目标函数的最小化。

学习算法-----由于从所有可能的决策树中选取最优决策树是NP完全问题,因此通常我们采用启发式方法寻得次优的决策树


二.DT学习算法

常见的DT算法包括ID3,C4.5和CART。

它们的区别

1)C4.5是针对ID3算法中存在的一个缺陷的改进----ID3算法在属性选择的时候更倾向于属性值比较多的属性(属性值比较多的属性信息增益趋于更大),改进的方法是使用信息增益比来选择属性-----信息增益比也就是信息增益除以对属性值个数的惩罚。

2)CART算法不同之处在于

 A.所生成的DT是一棵二叉决策树;

B.对分类树,CART使用Gini指数来衡量变量的不纯度;

C.可以用于回归


三个算法在学习步骤上是相同的:特征选择--决策树生成--剪枝。

这里重点介绍一下CART用于回归,以及CART中的剪枝算法。


三.CART回归树的生成

回归树生成同样包括两个步骤:

1)如何选择特征用于特征空间的划分

这里同样用到的是启发式的方法:对所有属性j及其取值s,计算划分后的误差,选取误差最小的j和s。

2)如何确定所划分的特征空间的输出值

子空间内所有训练样本输出值取平均。

上述误差一般采用平方误差,这样得到的回归树我们称之为最小二乘回归树。


四.剪枝算法

一般的剪枝方法思想很简单:对某个节点,比较其剪枝前和剪枝后的误差,若剪枝后误差减少,则进行剪枝。

CART中使用的是CCP(Cost-Complexity Pruning)方法。


五.关于决策树模型的改进

    看了一篇关于监督学习分类算法的review,目前就看完了决策树部分,觉得收获是除了再温习了一遍DT的基本思想之外,体会到如何去改进算法。因为review会介绍DT提出之后的各种算法,各个作者是如何改进的。【review的地址,if u need Supervised Machine Learning: A Review of Classification Techniques

    基本上的改进分为两种:

1)基于算法本身的固有缺陷进行改善;

2)对算法的实现性能进行提高。

   最早最basic的关于DT的算法应该是ID3,它是基于信息增益进行特征选择建树的;

   ID3一大的缺陷就是用信息增益会倾向于选择取值较多的特征,基于该缺陷提出了C4.5,它使用信息增益比进行选择;

  上述两种算法都存在一个问题,因为它们都是单变量的算法(每次基于单个特征进行划分),这导致了特征空间的垂直划分,进而使得对需要斜对角划分的数据效果不好。对这种情况的改进就是构建多变量树,例子有:A. at-least M-of-N; B.combine a decision tree witha linear discriminant for constructing multivariate decision trees.

以上都是针对算法固有缺陷进行的提高,第二类是关于运行效率的,如下:

   EC4.5是关于C4.5在运行时间性能上做出的提高;

   由于C4.5是fit in memory(在内存中拟合的),就此提出了Rainforest,它实现了优美地适应可用的主内存。

   DT算法在性能方面的一大浪费就是对剪枝时被剪掉的那部分结构的构建,因此PUBLIC提出了将剪枝阶段和建树阶段集成在一起。

   Olcay and Onur提出了如何parallelize(并行化)C4.5算法。

   incremental DT induction techniques.

以上,希望能对我们在学习其他算法,及其相关改进时能有所启发。更希望能对我们找到科研的方向有所启发。一个美好的祝愿:papers~~~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值