监督学习:决策树

本文深入介绍了决策树算法,包括其基本概念、分类过程、特征选择(信息增益与信息增益比)以及决策树的生成与剪枝策略。通过理解熵和条件熵,解释了信息增益在特征选择中的作用,同时探讨了ID3、C4.5和CART算法的区别。决策树的剪枝旨在提高泛化能力,通过最小化损失函数实现。
摘要由CSDN通过智能技术生成

概述

      决策树的思想在二十世纪九十年代被提出(1984年提出的CART算法,1986年的ID3算法和1993年的C4.5算法)。

      决策树用于分类和回归任务,优势在于便于理解,且分类速度快。


一、决策树

1、一颗决策树的示意如下:

       决策树包含了结点和有向边,结点分内结点和叶节点两种:

  • 内结点表示某个特征,判断该特征是否满足有向边的条件;
  • 叶节点表示某个类,不同的叶节点有可能是表示同一类的。

2、决策树的分类过程

      从根节点的特征开始,对测试样本的根节点特征进行判断,根据判断的结果,测试样本被分到某个子节点;继续根据子节点的特征去分类测试样本,直至测试样本到达叶节点,叶节点对应的类即为分类结果。

二、特征选择

      特征选择的目的在于选取出当下对训练数据有良好分类能力的特征,或是丢弃不具备分类能力的特征。

      特征选择的标准一般是信息增益或信息增益比。

      信息增益反映了使用一个特征去划分数据集,使数据集分类的不确定性减少的程度。信息增益比则在信息增益的基础上,解决了对取值较多的特征的偏向性。因此如果一个特征有着较大的信息增益/信息增益比,我们就认为这个特征有良好的分类能力,在进行特征选择时,挑出有着最大信息增益/信息增益比的特征。

      要理解信息增益,先从熵、条件熵开始理解。

1、熵

      熵衡量了一个概率分布的不确定性程度,熵越大,说明不确定性越大。

      假设一个取有限值的离散随机变量X服从概率分布P(X=x_{i})=p_{i}i=1,2,...,n,则随机变量X的熵定义为:

H(X)=-\sum_{i=1}^{n}p_{i}logp_{i}

      熵只依赖于X的分布(也就是只管每个值发生的概率,而不管这个值具体是多少)。

2、条件熵

      设随机变量(X,Y)符合联合概率分布:

      P(X=x_{i},Y=y_{i})=p_{ij},   其中i=1,2,...,n;j=1,2,...,m

则给定X的条件下,Y的不确定性用条件熵H(Y|X)表示:      

H(Y|X)=\sum_{i=1}^{n}p_{i}H(Y|X=x_{i})

3.信息增益

      信息增益表示在已知X的情况下,Y的不确定性减少的程度,也即:

g(Y,X)=H(Y)-H(Y|X)

      在决策树中,X相当于特征,Y相当于训练集中的类,信息增益衡量的是给定特征A的条件下,训练集D分类的不确定性减少的程度,也即:

g(D,A)=H(D)-H(D|A)

4.信息增益比

      由熵的定义可以知道,信息增益容易受到有较多取值的特征的影响。

      信息增益比为了消除这个影响,用信息增益除以训练集D关于特征A的熵:

g'(D,A)=\frac{g(D,A)}{H_{A}(D)}

三、决策树的生成

      决策树的生成就是根据特征选择的标准(如信息增益、信息增益比等),找到合适的特征作为树的结点,并对其子节点递归进行上述过程,直至没有特征可以选择或者特征选择标准没有达到设定阈值为止。

      决策树的生成其实是一个寻找局部最优解的过程,开始时将整个训练集放在决策树的根节点,以某种特征选择的标准选出一个最优特征,使得用这个最优特征划分训练集得到的子集在当下有着最好的分类。不断重复该划分过程,就能得到一棵在训练集上拟合地很好的决策树。

      决策树生成算法之间的主要区别就在于特征选择的标准。ID3用信息增益做特征选择,生成过程中选择信息增益最大的特征;C4.5用信息增益比做特征选择,生成过程中选择信息增益比最大的特征;CART的决策树是二叉树,用基尼指数最小化做特征选择。     

四、决策树的剪枝

      决策树的生成只意味着找到了能很好地拟合训练集的树,但我们更想要的是一个有着很好泛化能力的树(也即在未知数据上表现良好的树),因此需要对决策树自下而上进行剪枝。剪枝就是让复杂的树简单化,从而缓解过拟合,提高决策树的泛化能力。剪枝的目的是一个找全局最优解

      剪枝的手段一般是最小化损失函数:

      将一组叶节点回缩到其父结点(也就是将叶结点的样本都放到父结点中去),如果回缩后的决策树损失函数比回缩前的要小,就进行剪枝(也就是回缩,将父结点作为新的叶结点)。递归地进行上述过程,直至无法找到能使损失函数变小的回缩为止。


参考:

李航《统计学习方法(第2版)》

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值