机器学习算法系列(二)

1、决策树学习

本篇主要介绍了决策树的相关概念原理、算法及应用,包括主要ID3、C4.5算法等,及后期决策树的优化处理方法等;

决策树是一种逼近离散值目标函数的方法,是最流行的归纳推理算法之一;

原理:
逐步应答中,使用分层变量或决策节点,擅长评估;

分类实例的方法是从这棵树的根结点开始,测试这个结点指定的属性,然后按照给定实例的该属性值对应的树枝向下移动,叶子结点即 为实例所属的分类。

适用问题:
1、 实例是由“属性-值”对(pair)表示的。实例是用一系列固定的属性(例如, Temperature)和它们的值(例如,Hot)来描述的。
2、目标函数具有离散的输出值。图的决策树给每个实例赋予一个布尔型的分类 (例如,yes 或 no)。

分类及回归树(CART),创建一个二元分类树实际上是一个分割输入空间的过程。递归二元分类(Recursive Binary Splitting)是一个被用于分割空间的贪心算法。根据贪心法(greedy approach)原则,所有的输入变量和所有可能的分割点都将被测试,并会基于它们成本函数的表现被评估。

算法的核心是通过对数据的学习,选定判断节点,构造一颗合适的决策树。

决策树学习算法包含特征选择、决策树的生成与剪枝过程

算法流程:
决策树的学习算法通常是递归地选择最优特征,并用最优特征对数据集进行分割。开始时,构建根结点,选择最优特征,该特征有几种值就分割为几个子集,每个子集分别递归调用此方法,返回结点,返回的结点就是上一层的子结点。直到所有特征都已经用完,或者数据集只有一维特征为止。

涉及到决策的核心算法概念:

信息熵:度量样本集合纯度,Pi表示第i类样本所占比例,总共n类,H(X)值越小表示X的纯度越高:
这里写图片描述
信息增益:属性A对于集合D进行划分所获得的信息增益;(注意这里的属性A指的是单个属性,而每个属性对应n个值)对于n个值的每个i划分D出n个Di集合,对于每个Di可以计算其信息熵,在乘以其占比最后加和的下:得到每个属性的信息增益,信息增益越大意味着以其单个属性A划分集合得到的纯度提升越大;
这里写图片描述
增益率:
这里写图片描述

决策树的生成:在这里介绍两种常用算法ID3和C4.5

ID3:根据信息增益评估和选择模型,每次选择信息增益最大的特征作为判断建立子节点:
这里写图片描述

C4.5算法:用信息增益率来选择属性;
克服了用信息增益选择属性时偏向选择取值多的属性的不足;
构造中进行剪枝;
能够完成对连续属性的离散化处理;
能够对不完整数据进行处理。
生成过程同上,均是贪心算法:基于局部最优构造全局最优;

基尼指数:CART(分类回归)决策树使用基尼指数来选择划分属性,其反映了从数据集D中随机抽取2个样本其类别标记不一致的概率;值越小,纯度越高
这里写图片描述
剪枝:决策树对训练属于有很好的分类能力,但是对于未知的测试集未必有好的分类能力,泛化能力弱,即可能发生过拟合现象。为防止过拟合,我们需要进行剪枝。

三种决策树的剪枝过程算法相同,区别是对于当前树的评价标准不同。

剪枝分为预剪枝和后剪枝,均是对比剪之前与剪之后对于验证集的正确率的大小,取正确率大的操作(区别只是从上往下还是从下往上)

预剪枝:生成决策树过程中,对每个节点划分前先进行评估,若当前节点的划分不能带来决策树泛化性能的提升则直接标记为叶子节点;

后剪枝:先从训练集生成一棵完整的决策树,然后自底向上的对非叶节点进行考察,若将该非叶节点替换为叶节点可以提升泛化能力则直接替换;

连续值处理:连续属性的可取值数目不再有限,因此不能像前面处理离散属性枚举离散属性取值来对结点进行划分。因此需要连续属性离散化,常用的离散化策略是二分法:如下共有n个样本,先排序再分别取2值之间的平均数作为候选划分点,计算每个候选划分点信息增益:
这里写图片描述

这两个的算法思想还是很简单的,只是在选择的时候变换了条件而已:ID3是根据信息增益评估和选择模型,而C4.5算法是用信息增益率来选择属性也相当于在ID3的基础上做了一些优化处理;然后后续又做了一些泛化处理思想流程也是非常简单;比较重要的应该就是对于核心概念的理解及应用:信息熵、信息增益、信息增益率及基尼指数的把握等;

补充一下信息熵

信息论之父克劳德·香农,总结出了信息熵的三条性质:

单调性,即发生概率越高的事件,其所携带的信息熵越低。极端案例就是“太阳从东方升起”,因为为确定事件,所以不携带任何信息量。从信息论的角度,认为这句话没有消除任何不确定性。

非负性,即信息熵不能为负。这个很好理解,因为负的信息,即你得知了某个信息后,却增加了不确定性是不合逻辑的。

累加性,即多随机事件同时发生存在的总不确定性的量度是可以表示为各事件不确定性的量度的和。

香农从数学上,严格证明了满足上述三个条件的随机变量不确定性度量函数具有唯一形式:
这里写图片描述
具体见:
https://www.zhihu.com/question/22178202/answer/223017546

猜你喜欢

转载自blog.csdn.net/enjoy_endless/article/details/80586124
今日推荐