目录
决策树............................................................................................................................................................2
信息熵(Entropy)......................................................................................................................... 2
什么是决策树.....................................................................................................................................3
............................................................................................................................3
决策树分割属性选择.......................................................................................................................4
决策树量化纯度................................................................................................................................ 4
决策树量化纯度................................................................................................................................ 4
信息增益率计算方式.......................................................................................................................5
决策树的停止条件............................................................................................................................5
决策树算法效果评估.......................................................................................................................5
决策树生成算法................................................................................................................................ 7
ID3 算法...............................................................................................................................................7
ID3算法优缺点................................................................................................................................ 7
C4.5 算法.............................................................................................................................................8
CART 算法...........................................................................................................................................8
ID3\C4.5\CART 分类回归树算法总结.......................................................................................9
分类树和回归树的区别.................................................................................................................. 9
决策树优化策略................................................................................................................................ 9
决策树的剪枝.....................................................................................................................................9
决策树剪枝过程..............................................................................................................................10
附录:......................................................................................................................................................... 11
决策树
信息熵(Entropy)
信息量:指的是一个样本/事件所蕴含的信息,如果一个事件的概率越大,那么就 可以
认为该事件所蕴含的信息越少。极端情况下,比如:“太阳从东方升起”, 因为是确定事
件,所以不携带任何信息量。
信息熵就是用来描述系统信息量的不确定度。
High Entropy(高信息熵):表示随机变量 X 是均匀分布的,各种取值情况是等概率出现
的。
Low Entropy(低信息熵):表示随机变量 X 各种取值不是等概率出现。可能出现有的事件
概率很大,有的事件概率很小。
给定条件 X 的情况下,随机变量 Y 的信息熵就叫做条件熵,条件熵 H(Y|X)。
给定条件 X 的情况下,所有不同 x 值情况下 Y 的信息熵的平均值叫做条件熵。另外 一
个公式如下所示:
事件(X,Y)发生所包含的熵,减去事件 X 单独发生的熵,即为在事件 X 发生的前提下,Y
发生“新”带来的熵,这个也就是条件熵本身的概念。
条件熵 H(Y|X)的推导
什么是决策树
决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构建决策树来 进行分
析的一种方式,是一种直观应用概率分析的一种图解法;决策树是一种预 测模型,代
表的是对象属性与对象值之间的映射关系;决策树是一种树形结构, 其中每个内部节
点表示一个属性的测试,每个分支表示一个测试输出,每个叶节 点代表一种类别;决
策树是一种非常常用的有监督的分类算法。
决策树的决策过程就是从根节点开始,测试待分类项中对应的特征属性,并按照 其值
选择输出分支,直到叶子节点,将叶子节点的存放的类别作为决策结果。
决策树分为两大类:分类树和回归树,前者用于分类标签值,后者用于预测连续 值,
常用算法有 ID3、C4.5、CART 等
决策树算法的重点就是决策树的构造;
构建步骤如下:
将所有的特征看成一个一个的节点;
遍历每个特征的每一种分割方式,找到最好的分割点;将数据划分为不同的子
节点,eg: N1、N2....; 计算划分之后所有子节点的'纯度'信息;
对第二步产生的分割,选择出最优的特征以及最优的划分方式;得出最终的子
节点: N1、N2....Nm
对子节点 N1、N2....Nm 分别继续执行 2-3 步,直到每个最终的子节点都足够'
纯'。
决策树特征属性类型
1. 属性是离散值,而且不要求生成的是二叉决策树,此时一个属性就是一个分支
2. 属性是离散值,而且要求生成的是二叉决策树,此时使用属性划分的子集进行
测试,按照 “属于此子集”和“不属于此子集”分成两个分支
3. 属性是连续值,可以确定一个值作为分裂点 split_point,按照>split_point 和
<=split_point 生成两个分支
决策树分割属性选择
决策树算法是一种“贪心”算法策略,只考虑在当前数据特征情况下的最好分割 方式,不
能进行回溯操作。
对于整体的数据集而言,按照所有的特征属性进行划分操作,对所有划分操作的 结果
集的“纯度”进行比较,选择“纯度”越高的特征属性作为当前需要分割的 数据集进行分割
操作,持续迭代,直到得到最终结果。决策树是通过“纯度”来 选择分割特征属性点的。
决策树量化纯度
决策树的构建是基于样本概率和纯度进行构建操作的,那么进行判断数据集是否 “纯”
可以通过三个公式进行判断,分别是 Gini 系数、熵(Entropy)、错误率,这 三个公式值
越大,表示数据越“不纯”;越小表示越“纯”;实践证明这三种公 式效果差不多,一般情
况使用熵公式
决策树量化纯度
当计算出各个特征属性的量化纯度值后使用信息增益度来选择出当前数据集的分割特
征属性;如果信息增益度的值越大,表示在该特征属性上会损失的纯度越大,那么该属
性就越应该在决策树的上层,计算公式为:
Gain 为 A 为特征对训练数据集 D 的信息增益,它为集合 D 的经验熵 H(D)与特征 A 给 定
条件下 D 的经验条件熵 H(D|A)之差
信息增益指的是信息划分之后,样本的信息变化。
信息增益率计算方式
决策树的停止条件
决策树构建的过程是一个递归的过程,所以必须给定停止条件,否则过程将不会 进行
停止,一般情况可以设置以下停止条件:
大于设置的决策树的最大深度
小于设置的内部节点再划分所需最小样本数
小于设置的叶节点最少样本数
大于设置的最大叶节点数
小于设置的节点划分不纯度
决策树算法效果评估
与一般的分类算法一样,采用混淆矩阵来进行准确率、召回率、精确度等指标。
也可以采用叶子节点的纯度值总和来评估算法效果,值越小,效果越好。决策树的损失
函数(该值越小,算法效果越好)
决策树生成算法
ID3、C4.5、CART(Classification And Regression Tree)
ID3 算法
ID3 算法是决策树的一个经典的构造算法,内部使用信息熵以及信息增益来进行 构建;
每次迭代选择信息增益最大的特征属性作为分割属性。[信息熵]
ID3算法优缺点
优点:决策树构建速度快;实现简单;
缺点:
计算依赖于特征数目较多的特征,而属性值最多的属性并不一定最优
ID3 算法不是递增算法
ID3 算法是单变量决策树,对于特征属性之间的关系不会考虑
抗噪性差。
只适合小规模数据集,需要将数据放到内存中
C4.5 算法
C4.5 算法优缺点
优点:
产生的规则易于理解\准确率较高\实现简单
缺点:
对数据集需要进行多次顺序扫描和排序,所以效率较低\只适合小规模数据集,需要将
数据放到内存中
CART 算法