详解决策树(干货篇)

本文深入探讨决策树,包括信息熵、信息增益、ID3、C4.5、CART决策树的分类原理,以及悲观剪枝法、错误率剪枝法和代价复杂度剪枝算法。此外,还介绍了CART在回归树中的应用和集成学习中的角色。
摘要由CSDN通过智能技术生成

目录:

  1. 导言
  2. 信息增益
  3. 决策树的分类
    3.1 ID3决策树
    3.2 C4.5决策树
    3.3 CART决策树
  4. 决策树剪枝算法
    4.1 悲观剪枝法
    4.2 错误率剪枝法
    4.3 代价复杂度剪枝法
  5. 基于决策树的集成学习算法
    5.1 GBDT算法
    5.2 XGBOOST算法
    5.3 LightGBM算法
    5.4 CATBOOST算法

本文思维导图

1、导言

决策树是机器学习中一种基本的分类与回归算法,也是构成很多集成算法的基础。决策树是基于树的结构来进行判别的,当然也可以认为它本质上是if-then规则的集合。
假设我们要判断一个瓜是否为好瓜。对于这样的问题,人们一般的整个决策过程可以用下图来表示。

决策树决策流程图

一般情况下,一个完整的决策树包含一个根结点、n个内部结点和m个叶子结点。显然,叶子结点对应的就是我们想要的决策结果,剩余的结点对应的都是一个属性判断,每个结点包含的样本集合通过该属性判断,将其划分到下面的子结点上,然后不停地递归生成子结点。整个学习过程如下图所示:

决策树基本学习算法

对于一个基本的决策树的递归生成过程中,有三种情况会导致递归返回:

  1. 当前结点包含的样本属于同一个类别,无需再划分。
  2. 当前的属性集为空,或者当前样本集在所有属性上取值都一样,无法划分。
  3. 当前结点包含的样本集为空,不能再划分。

2. 信息熵

决策树的学习过程的关键在于第8步,即如何选择最优的划分属性,我们的目标是随着学习不断地进行,决策树的子节点所包含的样本“纯度”尽可能高。这里就要介绍一下信息熵和信息增益的概念:
信息熵能很直观地反应样本的“纯度”。
在信息论中,熵(entropy)是衡量随机变量不确定性的一个指标。假设当前样本集合D中,第 k k k类样本所占的比例为 p k ( k = 1 , 2 , . . . , ∣ y ∣ ) p_k(k=1,2,...,|y|) pk(k=1,2,...,y),那么 D D D的信息熵可以表示为
E n t ( D ) = − ∑ k = 1 ∣ y ∣ p k l o g 2 p k Ent(D) = -\sum_{k=1}^{|y|}p_klog_2p_k Ent(D)=k=1ypklog2pk
不难看出, E n t ( D ) Ent(D) Ent(D)的值越小,样本集 D D D的纯度越高。
信息增益能很直观地反映出某个属性对结点样本划分所起到的贡献。
假设对于某个离散属性 a a a,它有 n n n个可能的取值{ a 1 , a 2 , . . . , a n a^1, a^2,...,a^n a1,a2,...,an},对于使用属性 a a a作为划分依据的样本集 D D D,经过划分会产生 N N N个分支,其中,样本集 D D D中该属性值为 a n a^n an的样本全都被划分至第 n n n个结点,极为 D n D^n Dn;根据信息熵计算公式,对于每个子结点都能计算出 D n D^n Dn的信息熵,再将每个结点的样本数作为权重,对所有子结点的信息熵求加权平均值,便可计算出利用属性 a a a划分样本集 D D D所得到的信息增益: G a i n ( D , a ) = E n t ( D ) − ∑ n = 1 N ∣ D n ∣ ∣ D ∣ E n t ( D n ) Gain(D,a)=Ent(D)-\sum_{n=1}^N\frac{\vert{D^n}\vert}{\vert{D}\vert}Ent(D^n) Gain(D,a)=Ent(D)n=1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值