前言

决策树是一种基本的分类与回归方法。其中在分类问题中,决策树是一个基于特征对实例进行分类的过程,可以理解为是if-then规则的集合,或者是定义在特征空间上的条件概率分布。其优点是可读性强、分类速度快。决策树学习时,利用训练数据,根据损失函数最小化原则建立决策树模型,预测时,对新数据依照训练出的模型进行分类。决策树通常的步骤分为:特征选择、决策树的生成、决策树的剪枝。

模型准备

决策树的定义:分类决策树模型是根据一类特征描述对实例进行分类的树形结构。决策树由节点和向边构成,其中结点分为内部结点和叶结点,内部结点表示一个特征或属性,叶结点表示一个类
决策树与if-then规则:决策树的每一个实例都能被一条路径或一条规则所覆盖,而且只被一条路径或一条规则所覆盖,即互斥且完备性
决策树与条件概率分布:假设X为表示特征的随机向量,Y为表示类的随机向量,则条件概率分布表现为P(Y|X),X取值于给定划分下单元的集合,Y取决于类的集合,各叶节点上的条件概率往往偏向某个类,属于某个类的概率较大,分类时间,决策树将该节点的实例强行分到条件概率大的那一类去

特征选择相关名词定义

信息增益

  1. 定义:表示随机变量不确定性的度量,设X是一个取有限个值的离散型随机变量,其概率分布为<br />![](https://cdn.nlark.com/yuque/__latex/3076e3ad7852808da576919c7e5af02b.svg#card=math&code=P%28X%3DX_i%29%3DP_i%2C%20i%3D1%2C2%2C...%2Cn&height=20&width=228)<br />则随机变量X的熵定义为 ![](https://cdn.nlark.com/yuque/__latex/0a5f0046d5e98c6e49c69382e563ce64.svg#card=math&code=H%28X%29%20%3D%20-%5Csum%7BP_i%7Dlog%28P_i%29&height=28&width=175);<br /> 特点:熵只取决于X的分布,而与X的取值无关,所以也将X的熵记为![](https://cdn.nlark.com/yuque/__latex/2f83170ab12716fcf2c1769fa684c6be.svg#card=math&code=H%28p%29%3D%20-%5Csum%7Bp_i%7Dlog%28p_i%29&height=28&width=164);<br /> 熵越大,随机变量的不确定性越大;<br />![image.png](https://cdn.nlark.com/yuque/0/2020/png/971059/1595321121834-441c49ca-688c-4c91-aa6d-eb4127484256.png#align=left&display=inline&height=430&margin=%5Bobject%20Object%5D&name=image.png&originHeight=724&originWidth=847&size=153584&status=done&style=none&width=503)

条件熵

  1. 定义:在已知随机变量X的条件下,随机变量Y的不确定性,即:X给定条件下Y的条件概率分布的熵对X的数据期望<br />![](https://cdn.nlark.com/yuque/__latex/6eac622807d501b3397fd62ab6e54c7a.svg#card=math&code=H%28p%29%3D%20-%5Csum%7Bp_i%7DH%28Y%7CX%3DX_i%29&height=28&width=218)

信息增益

定义:表示得知特征X的信息而使得类Y的信息的不确定性减少的程度;
特征A对训练数据集D的信息增益决策树 - 图1
特点:信息增益依赖于特征X,不同的特征X有不同的信息增益,信息增益大的特征分类能力较强;
信息增益的大小相对于训练数据集而言,训练数据集的信息熵越大,信息增益值越大

信息增益比

  1. 定义:表示特征X的信息增益![](https://cdn.nlark.com/yuque/__latex/98d0c98a34374775b6dea747466c63c4.svg#card=math&code=g%28D%2CA%29&height=20&width=55)与训练数据集D的经验熵的比;<br /> ![](https://cdn.nlark.com/yuque/__latex/304f083cde70c879677c5da9296fd92c.svg#card=math&code=g_r%28D%2CA%29%3Dg%28D%2CA%29%2FH%28D%29&height=20&width=190)<br /> 特点:矫正了信息增益值受到训练数据集D的影响的问题,可做为特征选择的另一个准则;

基尼指数

  1. 定义:分类问题中,假设有K个类,样本点属于第K个类的概率为![](https://cdn.nlark.com/yuque/__latex/4d87fb6bc2dc8676fabdab15c468a633.svg#card=math&code=P_k&height=18&width=18),则概率分布的基尼指数的定义为<br /> ![](https://cdn.nlark.com/yuque/__latex/b25ccb286bd18c9093fda4cdec6b794a.svg#card=math&code=Gini%28p%29%3D%5Csum%7Bp_k%7D%281-p_k%29%3D1-%5Csum%7B%28p_k%29%5E2%7D&height=28&width=296)<br /> 样本集合D的基尼指数的定义为![](https://cdn.nlark.com/yuque/__latex/c57ed91fd097ef62ef3dce747a8b82da.svg#card=math&code=Gini%28D%29%3D1-%5Csum%7B%28D_k%2FD%29%5E2%7D&height=3&width=22)<br /> 特征A条件下集合D的基尼指数 ![](https://cdn.nlark.com/yuque/__latex/0a5307d9633f35e75738ecc6d714e50d.svg#card=math&code=Gini%28D%2CA%29%3DD_1%2FD%2AGini%28D_1%29%2BD_2%2FD%2AGini%28D_2%29&height=20&width=383)<br /> 特征:基尼指数![](https://cdn.nlark.com/yuque/__latex/dc14e9d3841b5b94e64d84c9155d949c.svg#card=math&code=Gini%28D%29&height=20&width=61)表示 集合D的不确定性,![](https://cdn.nlark.com/yuque/__latex/072f8f9a428de497e77f78da42287fdc.svg#card=math&code=Gini%28D%2CA%29&height=20&width=82)表示经过A=a 分割后,集合D的不确定性;基尼指数越大,不确定性也越大;<br />![image.png](https://cdn.nlark.com/yuque/0/2020/png/971059/1598435793118-1aa3c20a-c750-4713-a875-02b64e878890.png#align=left&display=inline&height=367&margin=%5Bobject%20Object%5D&name=image.png&originHeight=367&originWidth=662&size=88035&status=done&style=none&width=662)

决策树的生成-模型构建

ID3算法

原理

  1. 在决策树各个节点上按照信息增益最大的原则选择特征,递归地构建决策树;在根节点上,计算所有特征的信息增益,选择信息增益最大的特征作为结点,再由该特征的不同特征值建立子节点,计算信息增益,递归调用以上方法,直到所有特征的信息增益均很小或者没有特征可以选择为止。

算法

image.png
image.png

C4.5的生成算法

原理

  1. C4.5的算法与ID3类似,唯一的区别在于C4.5是基于信息增益比来选择特征

算法

image.png

决策树的剪枝

背景

  1. 决策树往往会对训练数据的分类很准确,但是对未知测试数据的分类会出现过拟合的现象,不是那么准确。这是因为在决策树分类的过程中过多的考虑了分类的正确性而构建出过于复杂的决策树

原理

  1. 通过极小化决策树整体的损失函数或者代价函数来实现剪枝,损失函数<br />![](https://cdn.nlark.com/yuque/__latex/be7228acfffd52b3711bde8f519ce8f4.svg#card=math&code=C%28T%29&height=20&width=37)的定义为