- 40
- 0
- 约7.42千字
- 约 52页
- 2017-12-24 发布于河南
- 举报
分类算法(决策树学习)
2003.11.18 机器学习-决策树学习 译者:曾华军等 作者:Mitchell 讲者:陶晓鹏 决策树学习 概论 决策树学习是应用最广的归纳推理算法之一 是一种逼近离散值函数的方法 很好的健壮性 能够学习析取表达式 ID3, C4.5,SLIQ 搜索一个完整表示的假设空间 归纳偏置是优先选择较小的树 决策树表示了多个if-then规则 决策树表示法 决策树 通过把实例从根节点排列到某个叶子节点来分类实例。 叶子节点即为实例所属的分类 树上每个节点说明了对实例的某个属性的测试 节点的每个后继分支对应于该属性的一个可能值 决策树代表实例属性值约束的合取(与)的析取(或)式。从树根到树叶的每一条路径对应一组属性测试的合取,树本身对应这些合取的析取。 决策树示例 决策树学习的适用问题 适用问题的特征 实例由“属性-值”对表示 目标函数具有离散的输出值 可能需要析取的描述 训练数据可以包含错误 问题举例 根据疾病分类患者 根据起因分类设备故障 根据拖欠支付的可能性分类贷款申请 分类问题 核心任务是把样例分类到各可能的离散值对应的类别 基本的决策树学习算法 大多数决策树学习算法是一种核心算法的变体 采用自顶向下的贪婪搜索遍历可能的决策树空间 ID3是这种算法的代表 基本的决策树学习算法(2) ID3的思想 自顶向下构造决策树 从“哪一个属性将在树的根节点被测试”开始 使用统计测试来确定每一个实例属性单独分类训练样例的能力 ID3的过程 分类能力最好的属性被选作树的根节点 根节点的每个可能值产生一个分支 训练样例排列到适当的分支 重复上面的过程 算法 最佳分类属性 信息增益 用来衡量给定的属性区分训练样例的能力 ID3算法在增长树的每一步使用信息增益从候选属性中选择属性 用熵度量样例的均一性 熵刻画了任意样例集的纯度 信息论中对熵的一种解释,熵确定了要编码集合S中任意成员的分类所需要的最少二进制位数 更一般地,如果目标属性具有c个不同的值,那么S相对于c个状态的分类的熵定义为 Entropy(S)= 最佳分类属性(2) 用信息增益度量期望的熵降低 属性的信息增益,由于使用这个属性分割样例而导致的期望熵降低 Gain(S,A)是在知道属性A的值后可以节省的二进制位数 实例 根据下列数据,决策是否更换某一设备。 使用信息增益进行属性选择 更新的设备件数为p,不更新的为n,则 I(p,n)=I(9,5)=0.94 各属性的熵 E(役龄)=(5/14)*I(2,3)+(4/14)*I(4,0)+(5/14)*I(3,2) =0.6936 则 Gain(役龄)=I(p,n)-E(役龄)=0.2464 同理 Gain(价格)=0.2098 Gain(关键部件)=0.2098 Gain(可靠性)=0.2098 因为 Gain(可靠性) Gain(关键部件) Gain(价格) Gain(役龄) 可以看出“役龄”被选为用于划分的属性进行训练集分类信息赢取值最大,于是役龄被选为用于划分的属性,以此类推,得到以下决策树: ID3算法的缺点及改进算法C4.5 ID3算法总的来说是一个很有实用价值的示例学习算法,它的基础理论清晰,算法较简单。但也存在着一些缺点: ⑴ 算法往往偏向于选择取值较多的属性,而在很多情况下属性较多的属性并不总是最优的属性。 ID3算法的缺点及改进算法C4.5 (2)在建树时,每个结点仅含一个特征,是一种单变元的算法,特征间的相关性不够紧。虽然在一棵树上连在一起,但联系还是松散的。 ⑶ ID3对燥声比较敏感,不容易除去燥声。也就是特征值取错或类别给错。 ⑷ 当训练集增加时,ID3决策树随之变化。在建树过程中,各特征的相互信息会随例子的增加而改变,决策树也随之变化,这对变化的数据集的学习是不适合的。 ⑸ ID3算法虽然理论清晰,但它的计算比较复杂,在学习和训练数据集的过程中机器内存占用率比较大,比较耗费资源,影响数据学习的时间和成本。 ID3算法的缺点及改进算法C4.5 C4.5是对ID3的改进算法,增加的功能如下 用增益率来选择属性,克服了用信息增益选择属性时偏向选择取值多属性的不足; 能够完成对连续属性的离散化处理; 可以处理缺少属性值的训练样本; 通过使用不同的修剪技术以避免树的不平衡; K次迭代交叉验证; 规则的产生。 增益率gain ratio 增益率衡量属性分裂数据的广度和均匀性 分裂信息 S1到Sc是c个值的属性A分割S而形成的c个样本子集。 实际上,分裂信息是S关于属性A的各值的熵 决策树学习中的假设空间搜索 观察ID3的搜索空间和搜索策略,认识到这个算法的优势和不足 假设空间包含所有的决策树,它是关于现有属性的有限离散值函数的一
原创力文档

文档评论(0)