目录
6.决策树一定是二叉树么?二叉树与多分支决策树相比各有什么特点
一、决策树概念
决策树是一种自上而下, 对样本数据进行树形分类的过程, 由结点和有向边组成。 结点分为内部结点和叶结点, 其中每个内部结点表示一个特征或属性, 叶结点表示类别。 从顶部根结点开始, 所有样本聚在一起。 经过根结点的划分, 样本被分到不同的子结点中。 再根据子结点的特征进一步划分, 直至所有样本都被归到某一个类别(即叶结点) 中。一般而言, 决策树的生成包含了特征选择、 树的构造、 树的剪枝三个过程,
二、决策树启发函数
从若干不同的决策树中选取最优的决策树是一个NP完全问题, 在实际中我们通常会采用启发式学习的方法去构建一棵满足启发式条件的决策树。
1. ID3——最大信息增益
对于样本集合D, 类别数为K, 数据集D的经验熵表示为
其中Ck是样本集合D中属于第k类的样本子集, |Ck|表示第K类样本个数个数, |D|表示样本总数。
某个特征A对于数据集D的经验条件熵H(D|A)为
其中, Di表示D中特征A取第i个值的样本子集, Dik表示Di中属于第k类的样本子集。
于是信息增益g(D,A)可以表示为二者之差,
计算实例:
样本属性集
则,每个特征信息增益为:
2. C4.5——最大信息增益比
特征A对于数据集D的信息增益比定义为
其中称为数据集D关于A的取值熵
计算实例:
根据增益比公式得知:
3. CART——最小基尼系数
Gini描述的是数据的纯度, 与信息熵含义类似。
CART在每一次迭代中选择基尼指数最小的特征及其对应的切分点进行分类。但与ID3、 C4.5不同的是, CART是一颗二叉树, 采用二元切割法, 每一步将数据按特征A的取值切成两份, 分别进入左右子树。 特征A的Gini指数定义为
计算实例:
年龄 | 不见 | 见 | 属性样本数 | 写代码 | 不见 | 见 | 该属性样本数 | |
老 | 1 | 0 | 1 |