决策树是什么
- 决策树由结点(node)和有向边(directed edge)组成。
- 结点有两种类型:内部结点(internal node)和叶结点(leaf node)。
- 内部结点表示一个特征或属性。
- 叶结点表示一个类,是无法再拆分的结点。
决策树构造过程
把决策树看成一个if-then规则的集合,将决策树转换成if-then规则的过程是这样的:
- 由决策树的根结点(root node)到叶结点(leaf node)的每一条路径构建一条规则。
- 路径上内部结点的特征对应着规则的条件,而叶结点的类对应着规则的结论。
- 决策树的路径或其对应的if-then规则集合具有一个重要的性质:互斥并且完备。这就是说,每一个实例都被一条路径或一条规则所覆盖,而且只被一条路径或一条规则所覆盖。这里所覆盖是指实例的特征与路径上的特征一致或实例满足规则的条件。
决策树的构造过程一般分为3个部分,分别是特征选择、决策树生产和决策树裁剪。
1. 特征选择
- 表示从众多的特征中选择一个特征作为当前节点分裂的标准,如何选择特征有不同的量化评估方法,从而衍生出不同的决策树,如ID3(通过信息增益选择特征)、C4.5(通过信息增益比选择特征)、CART(通过Gini指数选择特征)等。
目的(准则):使用某特征对数据集划分之后,各数据子集的纯度要比划分前的数据集D的纯度高(也就是不确定性要比划分前数据集D的不确定性低)
2. 决策树的生成
根据选择的特征评估标准,从上至下递归地生成子节点,直到数据集不可分则停止决策树停止生长。这个过程实际上就是使用满足划分准则的特征不断的将数据集划分成纯度更高,不确定性更小的子集的过程。对于当前数据集的每一次划分,都希望根据某个特征划分之后的各个子集的纯度更高,不确定性更小。
3.决策树的裁剪
决策树容易过拟合,一般需要剪枝来缩小树结构规模、缓解过拟合。
ID3算法
- 核心是在决策树各个节点上应用信息增益准则选择特征递归地构建决策树
信息增益
- 熵
信息论与概率统计中,熵是表示随机变量不确定性的度量。设 X X X是一个取有限个值得离散随机变量,其概率分布为:
则随机变量X的熵定义为:
期中n是分类的数目。熵越大,随机变量的不确定性就越大。
2. 条件熵
有随机变量(X, Y),其联合概率分布为:
条件熵 H ( Y ∣ X ) H(Y|X) H(Y∣X)表示在已知随机变量 X X X的条件下,随机变量 Y Y Y的不确定性。随机变量X给定的条件下随机变量 Y Y Y的条件熵 H ( Y ∣ X ) H(Y|X) H(Y∣X),定义为 X X X给定条件下 Y Y Y的条件概率分布的熵对 X X X的数学期望:
当熵和条件熵中的概率由数据估计得到时(如极大似然估计),所对应的熵与条件熵分别称为经验熵和经验条件熵。
3. 信息增益
信息增益是相对于特征而言的。所以,特征A对训练数据集D的信息增益 g ( D , A ) g(D,A) g(D,A),定义为集合D的经验熵H(D)与特征A给定条件下D的经验条件熵 H ( D ∣ A ) H(D|A) H(D∣A)之差,即:
设训练数据集为 D D D, ∣ D ∣ |D| ∣D∣表示样本容量(样本个数)。有K个类
C k C_k Ck, k = 1 , 2 , . . , ∣ C k ∣ k=1,2,..,|C_k| k=1,2,..,∣Ck∣为属于类 C k C_k Ck的样本个数, ∑ k = 1 K ∣ C k ∣ = ∣ D ∣ \sum^{K}_{k=1}{|C_k|=|D|} ∑k=1K∣Ck∣=∣D∣.
设特征A有n个不同的