您好,欢迎访问三七文档
第1.2节决策树学习(DecisionTree)内容决策树的基本原理和算法熵、信息增益和特征选择决策树学习中的过拟合问题交叉验证与树的修剪内容决策树的基本原理和算法熵、信息增益和特征选择决策树学习中的过拟合问题交叉验证与树的修剪决策树学习——决定是否打网球看看天气看看湿度阳光明媚下雨看看风速高正常不去打球去打球大小不去打球去打球节点:每一个节点测试一个特征,分支:特征的可选数值(此处为离散值)叶子节点:最终预测去打球阴天ix(|)YorPYYLeaf基本的决策树学习算法—(ID3,C4.5)node=root循环{1.为当下一个节点选择一个最好的属性x2.将属性x分配给节点node3.对于x的所有可能数值,创建一个降序排列的节点node4.将所有训练样本在叶子节点排序分类5.如果分类结果达到了错误率要求,跳出循环,否则,在叶子节点开始新循环-〉递归}决策树学习的适用问题适用问题的特征实例由“特征-值”对表示目标函数具有离散的输出值训练数据可以包含一定的错误训练数据可以包含缺少特征值的实例问题举例根据天气好坏确定是否去打球根据疾病分类患者根据起因分类设备故障根据拖欠支付的可能性分类贷款申请分类问题核心任务是把样例分类到各可能的离散值对应的类别基本的决策树学习算法—(ID3,C4.5)ID3的思想自顶向下构造决策树从“哪一个特征将在树的根节点被测试”开始使用统计测试来确定每一个实例特征单独分类训练样例的能力ID3的过程分类能力最好的特征被选作树的根节点根节点的每个可能值产生一个分支训练样例排列到适当的分支重复上面的过程基本的决策树学习算法—(ID3,C4.5)编号天气温度湿度风是否去打球1晴天炎热高弱不去2晴天炎热高强不去3阴天炎热高弱去4下雨适中高弱去5下雨寒冷正常弱去6下雨寒冷正常强不去7阴天寒冷正常强去8晴天适中高弱不去9晴天寒冷正常弱去10下雨适中正常弱去11晴天适中正常强去12阴天适中高强去13阴天炎热正常弱去14下雨适中高强不去表-1:是否去打球的数据统计—训练数据决策树学习原理简介—(ID3,C4.5算法)湿度高正常(3+,4-)(6+,1-)S:(9+,5-)风弱强(6+,2-)(3+,3-)S:(9+,5-)问题:哪一个属性(特征)更好?内容决策树的基本原理和算法熵、信息增益和特征选择决策树学习中的过拟合问题交叉验证与树的修剪熵:物理学概念宏观上:热力学定律—体系的熵变等于可逆过程吸收或耗散的热量除以它的绝对温度(克劳修斯,1865)微观上:熵是大量微观粒子的位置和速度的分布概率的函数,是描述系统中大量微观粒子的无序性的宏观参数(波尔兹曼,1872)结论:熵是描述事物无序性的参数,熵越大则无序性越强,在信息领域定义为“熵越大,不确定性越大”(香浓,1948年)熵随机变量的熵()IX熵比较多的用于信源编码,数据压缩,假设是最有效的编码方式是使用位编码于是对于随即变量的最有效编码位之和:Xi21()()log()niIXPXiPXi熵熵表示训练集合中的样本S表示训练集合中反例样本的比例p表示训练集合中正例样本的比例p22()log()log()ISpppp表示训练集合的熵信息增益(InformationGain)信息的增加意味着不确定性的减少,也就是熵的减小;信息增益在诸多系统中定义为:在某一个操作之前的系统熵与操作之后的系统熵的差值也即是不确定性的减小量信息增益(InformationGain)原来的不确定性知道x之后的不确定性信息增益:原来-知道x之后的原来不确定性-经过属性x划分以后的不确定性信息增益(InformationGain)选择特征的标准:选择具有最大信息增益(InformationGain)的特征假设有两个类,+和-假设集合S中含有p个类别为+的样本,n个类别为-的样本将S中已知样本进行分类所需要的期望信息定义为:npnnpnnppnppnpI22loglog),(假设特征x将把集合S划分成K份{S1,S2,…,SK}如果Si中包含pi个类别为“+”的样本,ni个类别为“-”,的样本。那么划分后的熵就是:在x上进行决策分枝所获得的信息增益为:1()(,)KiiiiipnExIpnpn()(,)()GainxIpnEx信息增益(InformationGain)(,)GainSx()(,)()()vvvValuesxSGainSxEntropySEntropySSxv的子集信息增益(InformationGain)表示给定特征后不确定性的减少,即信息增益x表示了特征与数据集合的互信息问题:哪一个属性(特征)更好?分析极端的情况温度高正常(4+,4-)(4+,4-)S:(8+,8-)心情好坏(8+,0-)(0+,8-)S:(8+,8-)E=1.0E=0.0E=0.0Gain(S,温度)=1.0-(8/16)*1.0-(8/16)*1.0=0.0Gain(S,心情)=1.0-(8/16)*0.0-(8/16)*0.0=1.0E=1.0E=1.0信息增益(InformationGain)湿度高正常(3+,4-)(6+,1-)S:(9+,5-)风弱强(6+,2-)(3+,3-)S:(9+,5-)问题:哪一个属性(特征)更好?I=0.985I=0.592I=0.811I=1.00Gain(S,湿度)=0.940-(7/14).985-7/14*0.592=0.151Gain(S,风)=0.940-(8/14).811-(6/14)1.0=0.048E=0.940E=0.940信息增益(InformationGain)基本的决策树学习算法—(ID3,C4.5)决策树的构造过程示意x1x3x8x3x7+-+-+-基本的决策树学习算法—模型将树转化为规则将树转化为规则集合测试规则是否相互矛盾将规则排序存储Tree:If(阴天)-〉去打球If(晴天)If(风速低)then去打球Else不去打球内容决策树的基本原理和算法熵、信息增益和特征选择决策树学习中的过拟合问题交叉验证与树的修剪决策树学习的over-fitting看看天气看看湿度晴天下雨看看风速高正常不去打球去打球大小不去打球去打球去打球阴天1晴天炎热高强去打球在使用学习到的决策树模型时,此测试样本出现错误Overfitting:过度拟合对于一个模型假设,当存在其他的假设对训练样本集合的拟合比它差,但事实上在整个样本集合上上表现得却更好时,我们说这个假设过度拟合训练样例定义:给定一个假设空间H,hH,如果存在其他的假设h’H,使得在训练样本集合上h的错误率比h’小,但在整个样本集合上,h’的错误率比h小,那么就说假设h过度拟合训练数据。决策树学习的over-fitting'()()traintrainerrorherrorh'()()DDerrorherrorh决策树学习的over-fitting导致过度拟合的原因一种可能原因是训练样例含有随机错误或噪声当训练数据没有噪声时,过度拟合也有可能发生,特别是当少量的样例被关联到叶子节点时,很可能出现巧合的规律性,使得一些特征恰巧可以很好地分割样例,但却与实际的目标函数并无关系。决策树学习的over-fitting决策树学习及over-fitting避免过拟合的方法如果对数据划分没有明显好处的属性不选择,同时不再将决策数细分构建完成整个树以后进行剪枝在训练数据上测量性能在交叉验证数据上测量性能MDLMinmize(Size(tree)+Size(misclassifications(tree))内容决策树的基本原理和算法熵、信息增益和特征选择决策树学习中的过拟合问题交叉验证与树的修剪交叉验证与树的修剪避免过度拟合的方法及早停止树增长树的修剪两种方法的特点第一种方法更直观第一种方法中,精确地估计何时停止树增长很困难第二种方法被证明在实践中更成功避免过度拟合的关键使用什么样的准则来确定最终正确树的规模解决方法使用与训练样例截然不同的一套分离的样例,来评估通过后修剪方法从树上修建节点的效用。使用所有可用数据进行训练,但进行统计测试来估计扩展(或修剪)一个特定的节点是否有可能改善在训练集合外的实例上的性能。使用一个明确的标准来衡量训练样例和决策树的复杂度,当这个编码的长度最小时停止树增长。交叉验证与树的修剪方法评述第一种方法是最普通的,常被称为交叉验证法。可用数据分成两个样例集合:训练集合,形成学习到的假设验证集合,评估这个假设在后续数据上的精度方法的动机:即使学习器可能会被训练集合误导,但验证集合不大可能表现出同样的随机波动验证集合应该足够大,以便它本身可提供具有统计意义的实例样本。常见的做法是,样例的三分之二作训练集合,三分之一作验证集合。交叉验证与树的修剪将树上的每一个节点作为修剪候选对象修剪步骤删除以此节点为根的子树,使它成为叶结点把和该节点关联的训练样例的最常见分类赋给它反复修剪节点,每次总是选取那些删除后可以最大提高决策树在验证集合上的精度的节点继续修剪,直到进一步的修剪是有害的为止数据分成多个子集训练样例,形成决策树验证样例,修剪决策树测试样例,精度的无偏估计交叉验证与树的修剪从训练集合推导出决策树,增长决策树直到尽可能好地拟合训练数据,允许过度拟合发生将决策树转化为等价的规则集合,方法是为从根节点到叶节点的每一条路径创建一条规则通过“任何能导致估计精度提高的前提”来修剪每一条规则按照修剪过的规则的估计精度对它们进行排序,并按这样的顺序应用这些规则来分类后来的实例交叉验证与树的修剪本章作业本章作业:写出“利用决策树建立转基因植物生物安全评价的读书报告”格式为PPT或者Word,素材见课程网站
本文标题:机器学习决策树学习
链接地址:https://www.777doc.com/doc-4965362 .html