机器学习:西瓜书 决策树 学习笔记

基本流程

决策树的定义:决策树是表示面临决策问题时的一种基于树结构定义的决策模型。一棵决策树上的所有非叶子结点表示进行一次判断,叶子结点表示最终的分类结果。
决策树的基本思想:决策树的基本思想是分而治之。而决策树的生成算法则是一个递归的过程。

划分选择

划分选择的目的:我们希望随着划分的不断进行,决策树的分支节点所包含的样本尽可能属于同一类别,也就是结点的纯度越来越高。

信息增益

信息熵的作用:信息熵是度量样本集合纯度最常用的一种指标,可以根据公式计算获得。信息熵越小,则说明样本集合的纯度越高。
信息增益的作用:信息增益可以通过信息熵计算得出。一般来说,信息增益越大,表示使用某一属性进行划分所获得的纯度提升越大,因此可以用信息增益来进行决策树的划分属性选择。信息增益越大,越应该被选作划分属性。

增益率

信息增益存在的问题:信息增益准则对可取值数目较多的属性具有偏好,可能对模型的整体结果产生不利影响。
增益率的求解与存在的问题:增益率可以通过信息增益根据公式计算得出。但是增益率准则对可取值数目较少的属性具有偏好,因此也需要谨慎使用。著名的C4.5决策树算法就是综合考虑了信息增益和增益率得到的结果。

基尼指数

基尼指数的作用:基尼指数可以通过公式计算得出。直观考虑,基尼指数反映了从数据集中随机抽取两个样本其类别标记不相同的概率。基尼指数越小,数据集的纯度越高。因此,在候选属性集合中,选择那个使得划分后基尼指数最小的属性作为最优划分属性。CART决策树采用的划分标准就是基尼指数。
基尼指数的应用:著名的CART决策树就是采用“基尼指数”来选择划分属性。

剪枝处理

剪枝的作用:剪枝是决策树学习算法缓解过拟合的主要手段,决策树的剪枝策略有“预剪枝”和“后剪枝”两种。

预剪枝

预剪枝的定义:预剪枝是指在决策树生成过程中,对每个结点在划分前先进行估计,如果当前结点的划分不能带来决策树泛化性能的提升则停止划分并将当前结点标记为叶结点。
预剪枝的优点:预剪枝使得决策树很多分支都没有展开,不仅降低了过拟合风险,同时显著减少了决策树的训练时间开销和测试事件开销。
预剪枝的缺点:有些分支的当前划分虽然不能提升泛化性能,甚至可能导致泛化性能下降,但是在其基础上进行的后需划分却有可能导致性能显著提高;同时,预剪枝给决策树带来了欠拟合风险。

后剪枝

后剪枝的定义:先从训练集中生成一棵完整的决策树,然后自底向上地对非叶结点进行考察,如果将该结点对应的子树替换为叶结点可以使得决策树的泛化性能提升,则将该子树替换为叶结点。
后剪枝的优点:后剪枝决策树比预剪枝决策树保留了更多的分支,一般情况下欠拟合风险很小,泛化性能往往优于预剪枝决策树。
后剪枝的缺点:后剪枝过程是生成完全决策树后进行的,并且要自底向上对树中所有非叶结点进行逐一考察,因此训练时间开销非常大。
剪枝后性能不变的情况:如果剪枝后性能不变,那么也需要对当前决策树进行剪枝,因为剪枝后的模型更加简单,符合奥卡姆剃刀原理。

连续与缺失值

连续值处理

连续值处理的方法:如果属性为连续值,则需要对连续属性进行离散化,最简单的策略是采用二分法对连续属性进行处理。可以通过公式找出连续属性的划分点,从而转化为比较大小的离散问题。
连续属性的特点:如果决策树中当前结点的划分属性是连续属性,那么该属性还可以作为其后代结点的划分属性,只是进行大小比较的值发生了改变。

缺失值处理

缺失值带来的问题:如果存在某些样本在某些属性上有缺失值,直接简单放弃则会浪费数据信息,但是不放弃就需要考虑如何利用这些样本的信息。
有缺失值情况下的划分属性选择:根据推广后的信息增益公式进行计算,通过信息增益来选择划分属性。
有缺失值情况下的样本划分方法:如果有缺失值的样本在某个划分属性上的值已知,则将该样本划分入对应的子节点且保持其样本权重不变;如果在划分属性上的值未知,则同时将该样本以不同的概率划分进不同的子节点,其中划分概率可以计算获得。直观来看,就是让同一个样本以不同的概率划分入不同的子结点中。著名的C4.5算法就采用了该方式。

多变量决策树

决策树的边界特点:决策树在假设空间中生成的分类边界都是轴平行的,也就是分类边界由若干个与坐标轴平行的分段组成。这样的边界具有较好的可解释性,因为每一段边界划分都对应了一个属性的取值范围。
决策树边界存在的不足:当面对复杂问题时,决策树必须采用多段边界划分才能有较好的近似效果,需要进行大量的属性测试,产生巨大的时间开销。
多变量决策树的概念:多变量决策树是指能够实现斜向边界划分甚至更加复杂划分的决策树,因此也称为斜决策树。在此类问题中,非叶结点的条件判断不只是再针对某一个属性,而是对属性的线性组合进行测试。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值