机器学习算法系列(4):决策树

合集下载

机器学习-决策树-ppt

机器学习-决策树-ppt

例如:我们要对“这是好瓜吗”这样的问题进行决策时,通常 会进行一系列的判断:我们先看“它是什么颜色”,如果是“青 绿色”再看“它的根蒂是什么形态”,如果是“蜷缩”,我们在判 断“它敲起来是什么声音”,最后,我们得出最终的决策:这是 个好瓜,这个过程如下:
决策树的基本组成部分:决策结点、分支和叶子。
主要内容
决策树基本概念 基本流程 划分选择 剪枝处理
决策树

决策树基本概念
决策树是数据挖掘分类算法的一个重要方法。在各种分类算 法中,决策树是最直观的一种。在机器学习中也是一种常用方法。
我们希望从给定的训练集中学得一个模型用来对新示例进行 分类,这一分类过程称为“决策”过程。决策树是基于树结构进 行决策的。
一般而言,信息增益越大,则意味着使用属性a来进行划分所 获得的“纯度”(即分支节点所包含的样本尽可能属于同一类 别)
以下表的西瓜数据为例
以属性“色泽”为例,它有三个可能取值{青绿,乌 黑,浅白},记为:D1==青绿,D2=乌黑,D3=浅白算 D1包含{1,4,6,10,13,17}6个样例,其中正比例 P1=3/6,反比例P2=3/6;D2包含{2,3,7,8,9,15}6个 样例,其中正比例P1=4/6,反比例P2=2/6;D3包含 {5,11,12,14,16}5个样例,其中正比例P1=1/5,反比 例P2=4/5。
决策树算法
目前已有多种决策树算法:CLS、ID3、CHAID、C4.5、 CART、 SLIQ、SPRINT等。 著名的ID3(Iterative Dichotomiser3)算法是 J.R.Quinlan在1986 年提出的,该算法引入了信息论中的理论,是基于信息 熵的决策树分类算法。
决策树ID3算法
剪枝分为“预剪枝”和“后剪枝”。预剪枝是在 决策树生成过程中,对每个节点在划分之前先 进行估计,若当前节点的划分不能带来决策树 的泛化性能的提升,则停止划分并将当前节点 标记为叶节点。

分类与回归应用的主要算法

分类与回归应用的主要算法

分类与回归应用的主要算法分类与回归是机器学习中最基本的问题,它们都可以使用许多不同的算法进行处理。

以下是分类与回归应用中主要的算法:1. 逻辑回归(Logistic Regression):逻辑回归是一种广泛应用于分类问题中的线性模型,它将数据映射到一个0到1之间的概率值,然后根据特定的阈值进行分类。

2. 决策树(Decision Tree):决策树是一种基于树形结构的分类算法,它将数据分成不同的子集,一旦达到某个条件便停止分割,然后根据叶节点的类别进行分类。

3. k近邻(k-Nearest Neighbor):k近邻是一种基于距离测量的分类算法,它通过找出最接近目标数据点的k个邻居来确定数据点的类别。

4. 支持向量机(Support Vector Machine):支持向量机是一种基于超平面的分类算法,它通过找到一个最优的超平面来划分数据,使得不同类别的数据离超平面最远。

5. 随机森林(Random Forest):随机森林是一种基于决策树的分类算法,它通过构建多个决策树来进行分类,最终通过投票或平均值来确定分类结果。

6. 神经网络(Neural Network):神经网络是一种模仿人类神经系统的分类算法,它通过一系列的层和节点来学习数据的特征,并最终输出类别。

7. 线性回归(Linear Regression):线性回归是一种广泛应用于回归问题中的线性模型,它通过拟合一条直线来预测连续数值型变量的值。

8. 决策树回归(Decision Tree Regression):决策树回归是一种基于树形结构的回归算法,它将数据分成不同的子集,一旦达到某个条件便停止分割,然后通过叶节点的平均值进行回归预测。

9. 支持向量回归(Support Vector Regression):支持向量回归是一种基于超平面的回归算法,它通过找到一个最优的超平面来预测连续数值型变量的值。

10. 随机森林回归(Random Forest Regression):随机森林回归是一种基于决策树的回归算法,它通过构建多个决策树来预测连续数值型变量的值,最终通过投票或平均值来确定预测结果。

决策树总结

决策树总结

决策树总结决策树是一种常用的机器学习算法,它在数据挖掘和预测分析中被广泛应用。

本文将对决策树进行总结,包括其基本原理、构造方法、优缺点以及应用场景。

1. 基本原理决策树基于一系列的决策规则来完成分类或回归任务。

它将数据集划分为不同的子集,并在每个子集上继续进行划分,直到得到满足某个条件的叶节点。

在每次划分时,决策树算法通过计算某个指标(如信息增益、基尼指数)来选择最优的划分属性。

最终得到的决策树可以被用于预测新样本的类别或者回归值。

2. 构造方法决策树的构造方法主要有以下几种:ID3、C4.5、CART等。

ID3算法通过计算信息增益来选择最优划分属性,但存在对取值数目较多的属性偏好的问题;C4.5算法在ID3的基础上引入了信息增益比,更好地处理了取值数目较多的属性;CART算法则根据最小化基尼指数来选择最优划分属性,适用于分类和回归问题。

3. 优缺点决策树的优点在于简单易懂、可解释性强、适用于处理多类别问题、能处理连续属性等。

此外,决策树不需要对数据进行过多的预处理,而且在构建过程中能够自动选择重要特征。

然而,决策树也存在一些缺点。

首先,决策树容易过拟合,特别是当树的深度过大时。

为了解决这个问题,可以通过剪枝操作或者限制决策树的最大深度来减少过拟合风险。

其次,决策树对于缺失值的处理不够灵活,常常需要进行数据填充。

最后,决策树算法对于噪声和异常值比较敏感,容易产生不稳定的结果。

4. 应用场景决策树广泛应用于各种领域,其中包括金融、医疗、市场营销等。

在金融领域,决策树可以用于信用评分、风险识别、投资决策等。

在医疗领域,决策树可以用于疾病诊断、药物治疗方案选择等。

在市场营销领域,决策树可以用于客户分群、推荐系统等。

总之,决策树是一种常用的机器学习算法,它通过一系列的决策规则来完成分类或回归任务。

决策树算法具有简单易懂、可解释性强、适用于多类别问题等优点。

然而,它也存在容易过拟合、对异常值敏感等缺点。

决策树在金融、医疗、市场营销等领域都有广泛应用,可以用于信用评分、疾病诊断、客户分群等任务。

决策树算法原理

决策树算法原理

决策树算法原理1 认识决策树1)决策树的生成过程一棵决策树的生成过程主要分为以下3个部分。

(1)特征选择:从训练数据众多的特征中选择一个特征作为当前节点的分裂标准,如何选择特征有着很多不同量化评估标准,从而衍生出不同的决策树算法。

(2)决策树生成:根据选择的特征评估标准,从上至下递归地生成子节点,直到数据集不可分时,决策树停止生长。

对于树结构来说,递归结构是最容易理解的方式。

(3)剪枝:决策树容易过拟合,一般都需要剪枝,缩小树结构规模、缓解过拟合。

2)基于信息论的3种决策树算法划分数据集的最大原则是使无序的数据变得有序。

如果一个训练数据中有10个特征,那么选取哪个作为划分依据?这就必须采用量化的方法来判断,量化划分方法有多种,其中一项就是“信息论度量信息分类”。

基于信息论的决策树算法有ID3、CART和C4.5等算法,其中C4.5和CART两种算法从ID3算法中衍生而来。

CART算法和C4.5算法支持数据特征为连续分布时的处理,主要通过使用二元切分来处理连续变量,即求一个特定的值——分裂值:特征值大于分裂值就走左子树,或者就走右子树。

这个分裂值的选取原则是使得划分后的子树中的“混乱程度”降低,具体到C4.5算法和CART算法有不同的定义方式。

ID3算法由Ross Quinlan发明,建立在“奥卡姆剃刀”的基础上,越是小型的决策树越优于大的决策树。

ID3算法中根据信息论的信息增益评估和选择特征,每次选择信息增益最大的特征作为判断模块。

ID3算法可用于划分标称型数据集,没有剪枝的过程,为了解决过度数据匹配的问题,可通过裁剪合并相邻的无法产生大量信息增益的叶节点(如设置信息增益阈值)。

使用信息增益其实是有一个缺点的,那就是它偏向于具有大量值的属性,就是在训练集中,某个属性所取的不同值的个数越多,那么越有可能拿它来作为分裂属性,而这样做有时候是没有意义的。

另外,ID3算法不能处理连续分布的数据特征,于是就有了C4.5算法。

使用机器学习算法进行图像分类

使用机器学习算法进行图像分类

使用机器学习算法进行图像分类随着计算机视觉和机器学习的快速发展,图像分类已经成为其中一个重要的应用领域。

图像分类任务旨在将输入的图像归类到预定义的类别中。

这种技术对于自动驾驶、人脸识别、医学影像分析等领域有着广泛的应用。

在本文中,我将介绍一些常用的机器学习算法以及它们在图像分类中的应用。

1.支持向量机(Support Vector Machines,SVM):SVM是一种二分类模型,但可以通过多个SVM模型来实现多类别的图像分类。

SVM的基本思想是找到一个最优的超平面,使得图像样本点在特征空间中能够被最大程度地分离出来。

SVM在图像分类中具有良好的泛化能力和鲁棒性,尤其适用于特征空间高维、样本量小的情况。

2.卷积神经网络(Convolutional Neural Networks,CNN):CNN 是一种深度学习模型,在图像分类中具有很高的准确性和效率。

CNN的关键是通过多层卷积、池化和全连接层来提取图像的局部特征和全局特征,并将其映射到最终的分类结果上。

CNN模型通常具有很好的参数共享性和抽象表示能力,可以处理大规模的图像数据集。

3.决策树(Decision Tree):决策树是一种基于树状结构的分类模型。

它通过一系列的决策规则来将图像分到不同的类别中。

决策树具有易于理解、可解释性强的特点,对于小规模的图像分类任务效果较好。

然而,当决策树的深度过大或者数据集过大时,容易出现过拟合的问题。

4.随机森林(Random Forest):随机森林是一种集成学习的算法,它由多个决策树构成。

随机森林通过对每个决策树的预测结果进行投票,来确定最终的分类结果。

随机森林具有较好的鲁棒性和泛化能力,对于大规模的图像分类任务效果较好。

除了上述几种常用的机器学习算法,还有一些其他的算法也可以用于图像分类任务,包括朴素贝叶斯分类器、k近邻算法等。

这些算法的选择取决于数据集的特点、算法的性能要求和应用场景的实际需求。

在实际应用中,进行图像分类通常需要以下几个步骤:1.数据准备:首先需要收集和准备用于训练和测试的图像数据集。

C语言机器学习算法实现决策树和神经网络

C语言机器学习算法实现决策树和神经网络

C语言机器学习算法实现决策树和神经网络在机器学习领域中,决策树和神经网络是两个广泛应用的算法。

本文将介绍如何使用C语言实现这两个算法,并讨论它们在决策问题和模式识别中的应用。

一、决策树算法的实现决策树是一种常用的分类算法,它通过树状结构来表示分类的决策过程。

在C语言中,可以使用结构来表示决策树的节点,并使用递归来构建整个树。

1. 数据结构定义首先,我们需要定义一个结构来表示决策树的节点,包含以下几个成员变量:- 分割特征:表示当前节点的特征- 分割阈值:表示当前节点的特征值划分的阈值- 左子树:表示当前节点的左子树- 右子树:表示当前节点的右子树- 叶子节点标签:表示当前节点为叶子节点时的分类标签typedef struct DecisionTreeNode {int feature;float threshold;struct DecisionTreeNode* left;struct DecisionTreeNode* right;int label;} DecisionTreeNode;2. 构建决策树使用递归的方法构建决策树,可以分为以下几个步骤:- 选择最优特征:根据某种特征选择准则,选择最能降低不纯度的特征作为当前节点的分割特征- 按特征值划分数据:根据分割特征和阈值,将数据分为左子树和右子树两部分- 递归构建子树:对左子树和右子树分别进行递归构建,直到满足停止条件(如叶子节点标签纯度达到一定阈值)3. 决策过程构建好决策树后,我们可以使用它进行分类预测。

对于待预测的样本,从根节点开始依次比较当前节点的特征和阈值,根据比较结果选择左子树或右子树,直到到达叶子节点,叶子节点的标签即为预测结果。

二、神经网络算法的实现神经网络是一种模拟人脑神经元网络的算法,它通过多层神经元和连接权值来实现信息处理和模式识别。

在C语言中,可以使用数组和矩阵来表示神经网络的结构和权值,并通过矩阵乘法和激活函数来进行计算。

音乐流派的多种机器学习模型分类比较

音乐流派的多种机器学习模型分类比较
音乐流派的多种机器学习模 型分类比较
基本内容
基本内容
随着数字技术和大数据的快速发展,机器学习已经在各个领域展现出了巨大 的潜力和价值,包括音乐分类。音乐流派识别是音乐信息检索和推荐系统的重要 部分,它帮助我们根据音乐作品的风格和特征进行分类。本次演示将比较几种主 流的机器学习模型在音乐流派分类任务上的表现。
4、神经网络(Neural Networks)
4、神经网络(Neural Networks)
神经网络是一种模拟人脑工作机制的算法,通过模拟神经元之间的连接和信 号传递过程进行学习和预测。在音乐流派分类中,神经网络可以具有非常复杂的 结构和强大的表示能力,从而在处理复杂的音乐特征和非线性关系时表现出色。 全连接神经网络(Fully Connected Neural Networks, FCNNs)和卷积神经网 络(Convolutional Neural Networks, CNNs)
4、神经网络(Neural Networks)
已被广泛应用于音乐分类任务。另外,循环神经网络(Recurrent Neural Networks, RNNs)和长短期记忆网络(Long Short Term Memory, LSTM)也常 被用于处理时间序列的音乐特征。
5、深度学习(Deep Learning)
5、深度学习(Deep Learning)
深度学习是神经网络的延伸和发展,通过构建多层神经网络进行学习和预测。 在音乐流派分类中,深度学习模型如自动编码器(Autoencoders)、限制玻尔兹 曼机(Restricted Boltzmann Machines, RBMs)和生成对抗网络 (Generative Adversarial Networks, GANs)等已被用于提取音乐特征或者生 成新的音乐作品。深度学习模型通常需要大量的数据和计算资源,但是它们的性 能通常优于传统的机器学习方法。

决策树chaid 简书

决策树chaid 简书

决策树CHAID简介决策树是一种常用的机器学习算法,用于解决分类和回归问题。

其中,CHAID(Chi-squared Automatic Interaction Detection)是一种基于卡方检验的决策树算法。

CHAID算法通过选择最佳的变量和切分点,构建一棵具有最小错误率的决策树。

本文将详细介绍决策树CHAID算法的原理、步骤和应用场景,并通过示例来演示如何使用CHAID算法进行分类问题的建模。

原理CHAID算法基于卡方检验,通过计算每个变量与目标变量之间的卡方统计量来选择最佳的变量和切分点。

卡方统计量衡量了两个变量之间的相关性,具有较大卡方值的变量被认为与目标变量的相关性较高。

CHAID算法的核心思想是将数据集划分成不纯度最小的子集,直到满足停止准则为止。

不纯度通常使用Gini系数、信息熵或误分类率来度量,CHAID算法常用的是卡方检验。

步骤CHAID算法的步骤如下:1.选择目标变量:根据问题的需求,选择一个目标变量作为决策树的分类结果。

2.选择初始变量:从所有可用的自变量中选择一个作为初始变量。

3.计算卡方统计量:对于每个初始变量的每个可能取值,计算其与目标变量之间的卡方统计量。

4.选择最佳变量和切分点:选择具有最大卡方统计量的变量和切分点作为当前节点的分裂规则。

5.划分数据集:根据最佳变量和切分点将数据集划分为多个子集。

6.递归建树:对每个子集重复步骤2-5,直到满足停止准则为止。

7.剪枝:通过剪枝算法对决策树进行修剪,以防止过拟合。

8.输出决策树:将构建好的决策树输出为可视化的形式,便于理解和解释。

应用场景CHAID算法适用于分类问题和回归问题。

它在市场营销、医学诊断、风险评估等领域有广泛的应用。

以下是一些CHAID算法的应用场景:1.市场营销:根据顾客的特征(如年龄、性别、收入等),预测他们是否会购买某个产品,以便进行精准的营销策略。

2.医学诊断:根据患者的症状和检查结果,预测患者是否患有某种疾病,辅助医生进行诊断和治疗决策。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

6) 对第i个子子结点,以D i为训练集,以A − A g为特征集,递归地调用用(1)~(5),得到子子树 T i,返回T。
3.2 C4.5
与ID3算法相似,C4.5算法对ID3算法进行行行了了改进,C4.5在生生成的过程中,用用信息增益比比来选择特 征
3.3 CART
分类树与回归树(classification and regression tree,CART)模型(Breiman)由特征选择、树 生生成及剪枝组成,既可用用于分类也可用用于回归。CART是在给定输入入随机变量量X条件下输出变量量Y 的条件概率分布的学习方方法。它假定决策树是二二叉树,内部取值为“是”(左分支支)和“否”(右分 支支)。 它的基本步骤为 1)决策树生生成:基于训练数据集生生成决策树,生生成的决策树要尽量量大大。 2)决策树剪枝:用用验证数据集对已生生成的树进行行行剪枝并选择最优子子树,这是用用损失函数最 小小作为剪枝的标准。 3.3.1 分类树 对分类树用用基尼系数(Gini index)最小小化准则,进行行行特征选择,生生成二二叉树。 具体算法步骤如下: 1)设结点的训练数据集为D,计算现有特征对该数据集的基尼指数。此时,对每一一个特征 A,对其可能取的每个值a,根据样本点对A = a的测试为"是"或者“否”将D分割为D 1和D 2两部 分,计算其基尼系数。 2)在所有可能的特征A以及他们所有可能的切分点a中,选择基尼系数最小小的特征及其对应 的切分点作为最优特征与最优切分点。依最优特征与最优切分点,从现结点生生成两个子子结 点,将训练数据集依特征分配到两个子子结点中去。 3)对两个子子结点递归地调用用上述两个步骤,直至至满足足停止止条件。 4)生生成CART决策树 3.3.2 回归树 首首先看一一个简单的回归树生生成实例例:
机器器学习算法系列列(4):决策树
本文文结合李李航博士士的《统计学习方方法》与周志华老老老师的《机器器学习》决策树部分,《统计学习方方 法》重理理论的证明推导,《机器器学习》注重讲解算法的特点与扩展。
INTRODUCTION
决策树(Decision Tree)是数据挖掘中一一种基本的分类和回归方方法,它呈树形结构,在分类问题 中,表示基于特征对实例例进行行行分类的过程,可以认为是if − then规则的集合,也可认为是定义在 特征空间与类空间上的条件概率分布。下图是一一个简单的决策树示例例:
​ 决策树模型的主要优点是模型具有可读性,分类速度快。在学习时,利利用用训练数据,根据损失函 数最小小化原则建立立决策树模型;而而在预测时,对新的数据,利利用用决策树模型进行行行分类。主要的决 策树算法有ID3算法、C4.5算法和CART算法。 一一个性能良好的决策树,是一一个与训练数据矛矛盾较小小的决策树,同时又又具有很好地泛化能力力力。言言 外之意就是说,好的决策树不不仅对训练样本有很好的分类效果,对于测试集也有较低的误差率。 一一个决策树的学习过程包括三个步骤:特征选择、决策树的生生成以及决策树的修剪。
2.4 基尼系数
分类问题中,假设有K个类,样本点属于第k类的概率为p k,则概率分布的基尼系数定义为 Gini(p) =
k=1∑ p k (Fra bibliotek − p k ) = 1 − ∑ p 2 k
k=1
K
K
若样本集合D根据特征A是否取某一一可能值a被分割成D 1和D 2两部分,即 D 1 = {(x, y) ∈ D | A(x) = 0} , D 2 = D − D 1 则在特征A的条件下,集合D的基尼指数定义为 Gini(D, A) = | D1 | | D2 | Gini D 1 + Gini D 2 |D| |D|
{x | x
(j)
≤ s , R 2 ( j, s ) =
}
{x | x
(j)
>s
}
1 ∑ y , x ∈ R m , m = 1, 2 Nm x ∈ R ( j , s ) i i 2
3)继续对两个子子区域调用用步骤(1),(2),直至至满足足停止止条件。 4)将输入入空间划分为M个区域R 1, R 2, · · · , R M,在每个单元R m上有一一个固定的输出值c m, 生生成决策树:
二二、特征选择
2.1 特征选择问题
若利利用用一一个特征进行行行分类的结果与随机分类的结果没有很大大差异,则称这个特征是没有分类能力力力 的。特征选择的准则是信息增益或信息增益比比。直观上,若一一个特征具有更更好的分类能力力力,或者 说,按照这一一特征将训练数据集分割为子子集,使得各个子子集在当前条件下有最好的分类,那么就 更更应该选择这个特征。信息增益可以表示这一一直观的准则。
K
H (D ) = −

k=1
| Ck | |D|
log 2
| Ck | |D|
2)计算特征A对数据集D的经验条件熵H(D | A) | D ik | | D ik | H Di = − ∑ ∑ log 2 | Di | i=1 | D | i = 1 | D | k = 1 | Di |
n
H ( D | A) = 3)计算信息增益

| Di |
( )
n
| Di |
K
g(D, A) = H(D) − H(D | A)
2.3 信息增益比比
以信息增益作为划分训练数据集的特征,存在偏向于选择取值较多的特征的问题。使用用信息增益 比比可以对这一一问题进行行行校正。 信息增益比比表示特征A对训练数据集D的信息增益比比。g R(D, A)定义为其信息增益g(D, A)与训练数 据集D关于特征A的值的熵H A(D)之比比,即 g R ( D , A) = g(D, A) H A (D )
k=1
| C k | = | D | 。设特征A有n个不不同的取值a 1, a 2, · · · , a n,根据特征A
i=1
| D i | = | D | 。记子子集D i
中属于类C k的样本的集合为D ik,即D ik = D i ∩ C k,D ik为D ik的样本个数。 具体算法步骤如下: 1)计算数据集D的经验熵H(D)
min
j,s
[
min
c1
y i − c 1 ) 2 + min ∑ (y i − c 2 ) 2 ( c x ∈R (j,s) x ∈R (j,s)

1
i
2
i
2
]
遍历变量量j,对固定的切分变量量j扫描切分点s,选择使上式达到最小小值得对j, s 2)用用选定的对(j, s)划分区域并决定相应的输出值: R 1 ( j, s ) = c ˆm =
​ 接下来具体说说回归树是如何进行行行特征选择生生成二二叉回归树的。 假设X与Y分别为输入入和输出变量量,并且Y是连续变量量,给定训练数据集 D = {(x 1, y 1), (x 2, y 2), · · · , (x N, y N)} 我们利利用用最小小二二乘回归树生生成算法来生生成回归树f(x),即在训练数据集所在的输入入空间中,递归 地将每个区域分为两个子子区域并决定每个子子区域上的输出值,构建二二叉决策树,步骤如下: 1)选择最优切分变量量j与切分点s,求解
( )
( )
基尼系数Gini(D)表示集合D的不不确定性,表示经A=a分割后集合D的不不确定性。基尼系数越大大,样 本集合的不不确定性越大大,与熵类似。 从下图可以看出基尼指数和熵之半的曲线很接近,都可以近似地代表分类误差率。

三、决策树的生生成
3.1 ID3算法
ID3算法的核心心是在决策树各个结点上应用用信息增益准则选择特征,递归地建构决策树。 其具体方方法为:从根结点开始,对结点计算所有可能的特征的信息增益,选择信息增益最大大的特 征作为结点的特征,由该特征的不不同取值建立立子子结点;再对子子结点递归地调用用以上方方法,构建决 策树;直到所有特征的信息增益均很小小或没有特征可以选择为止止。最后得到一一个决策树。ID3相 当于用用极大大似然法进行行行概率模型的选择。但是ID3算法只有树的生生成,所以该算法生生成的树容易易 产生生过拟合。 其算法步骤如下: 1) 若D中所有实例例属于同一一类C k,则T为单结点树,并将类C k作为该结点的类标记,返回T; 2)若A = ∅,则T为单结点树,并将D中实例例数最大大的类C k作为该结点的类标记,返回T; 3) 否则,按算法5.1计算A中各特征对D的信息增益,选择信息增益最大大的特征A g; 4) 如果A g的信息增益小小于阈值ε,则置T为单结点树,并将D中实例例数最大大的类C k作为该结 点的类标记,返回T 5) 否则,对A g的每一一个可能值a i,依A g = a i将D分割为若干干非非空子子集D i,将D i中实例例数最大大 的类作为标记,构建子子结点,由结点及其子子节点构成树T,返回T
2.2 信息增益
2.2.1 熵 在信息论与概率统计中,熵表示随机变量量不不确定性的度量量。设X是一一个取有限个值得离散随机变 量量,其概率分布为 P X = x i = p i, i = 1, 2, · · · , n
(
)
则随机变量量X的熵定义为
n
H ( X) = −
i=1
∑ p ilogp i
若p i等于0,定义0log0 = 0,熵的单位为比比特或者纳特。 2.2.2 条件熵 H(Y | X)表示在已知随机变量量X的条件下随机变量量Y的不不确定性定义为X给定条件下Y的条件概率分 布的熵对X的数学期望
H ( Y | X) =
i=1
∑ p iH (Y | X = x i )
n
经验熵和经验条件熵:当熵和条件熵中的概率由数据估计(特别是极大大似然估计)得到时,所对 应的熵与条件熵分别称为经验熵和条件经验熵。 2.2.3 信息增益 信息增益表示得知特征X的信息而而使得类Y的信息的不不确定性减少的程度。特征A对训练数据集D 的信息增益g(D, A),定义为集合D的经验熵H(D)与特征A给定条件下D的经验条件熵H(D | A)之 差,即 g(D, A) = H(D) − H(D | A) 一一般地,熵H(Y)与条件熵H(Y | X)之差称为互信息。决策树学习中的信息增益等价于训练数据集中 类与特征的互信息。 于是我们可以应用用信息增益准则来选择特征,信息增益表示由于特征A而而使得对数据集D的分类 的不不确定性减少的程度。对数据集D而而言言,信息增益依赖于特征,不不同的特征往往具有不不同的信 息增益。信息增益大大的特征具有更更强的分类能力力力。 2.2.4 信息增益算法 根据信息增益准则的特征选择方方法为对训练数据集(或子子集)D,计算其每个特征的信息增益, 并比比较它们的大大小小,选择信息增益最大大的特征。 在描述算法前,先对符号进行行行说明: 设训练数据集为D, | D | 表示其样本容量量,即样本个数。设有K个类C k,k = 1, 2, · · · , K, | C k | 为 属于类C k的样本个数, ∑ K 的取值将D划分为n个子子集D 1, D 2, · · · , D n, | D i | 为D i的样本个数, ∑ n
相关文档
最新文档