《Clementine第四讲.ppt》由会员分享,可在线阅读,更多相关《Clementine第四讲.ppt(44页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、分类预测:决策树(一)分类预测:决策树(一)主要内容n决策树算法概述决策树算法概述n从学习角度看,决策树属有指导学习算法从学习角度看,决策树属有指导学习算法n目标:用于分类和回归目标:用于分类和回归nC5.0C5.0算法及应用算法及应用n分类回归树及应用分类回归树及应用n模型的对比分析模型的对比分析决策树算法概述:基本概念n得名其分析结论的展示方式类似一棵倒置的树得名其分析结论的展示方式类似一棵倒置的树根节点根节点叶节点叶节点中间节点中间节点2 2叉树和多叉树和多叉树叉树决策树算法概述:特点n体现了对样本数据的不断分组过程体现了对样本数据的不断分组过程n决策树分为分类树和回归树决策树分为分类树
2、和回归树n体现了输入变量和输出变量取值的逻辑关系体现了输入变量和输出变量取值的逻辑关系n逻辑比较形式表述的是一种推理规则逻辑比较形式表述的是一种推理规则n每个叶节点都对应一条推理规则每个叶节点都对应一条推理规则n对新数据对象的分类预测对新数据对象的分类预测决策树算法概述:几何理解n决策树建立的过程就是决策树各个分枝依次形成决策树建立的过程就是决策树各个分枝依次形成的过程的过程n决策树的每个分枝在一定规则下完成对决策树的每个分枝在一定规则下完成对n n维特征维特征空间的区域划分空间的区域划分n决策树建立好后,决策树建立好后,n n维特征空间会被划分成若干维特征空间会被划分成若干个小的边界平行或垂
3、直于坐标轴的矩形区域个小的边界平行或垂直于坐标轴的矩形区域确定每一步特征空间划分标准时,都同时兼顾由此将确定每一步特征空间划分标准时,都同时兼顾由此将形成的两个区域,希望划分形成的两个区域所包含的形成的两个区域,希望划分形成的两个区域所包含的样本点尽可能同时样本点尽可能同时“纯正纯正”决策树算法概述:核心问题n第一,决策树的生长第一,决策树的生长n利用训练样本集完成决策树的建立过程利用训练样本集完成决策树的建立过程n第二,决策树的剪枝第二,决策树的剪枝n利用测试样本集对所形成的决策树进行精简利用测试样本集对所形成的决策树进行精简决策树算法概述:树生长n决策树的生长是对训练样本集的不断分组决策树
4、的生长是对训练样本集的不断分组分枝准则的确定涉及:分枝准则的确定涉及:第一,如何从众多的输入变第一,如何从众多的输入变量中选择一个当前最佳的分量中选择一个当前最佳的分组变量组变量第二,如何从分组变量的众第二,如何从分组变量的众多取值中找到一个最佳的分多取值中找到一个最佳的分割点割点决策树算法概述:树剪枝n树剪枝的原因:完整的决策树对训练样本特征的树剪枝的原因:完整的决策树对训练样本特征的捕捉捕捉“过于精确过于精确”-过拟和(过拟和(OverfittingOverfitting)n常用的修剪技术:常用的修剪技术:n预修剪(预修剪(pre-pruningpre-pruning):用来限制决策树的)
5、:用来限制决策树的充分生长。策略:充分生长。策略:n事先指定决策树生长的最大深度事先指定决策树生长的最大深度n事先指定树节点样本量的最小值事先指定树节点样本量的最小值n后修剪(后修剪(post-pruningpost-pruning):待决策树充分生长):待决策树充分生长完毕后再进行剪枝完毕后再进行剪枝决策树算法概述:树剪枝n后修剪:待决策树生长完毕,根据一定规则,剪后修剪:待决策树生长完毕,根据一定规则,剪去不具一般代表性的子树。策略:去不具一般代表性的子树。策略:n事先指定允许的事先指定允许的最大误差值最大误差值n通常依据测试样通常依据测试样本集剪枝本集剪枝C5.0算法nC5.0C5.0是
6、在是在ID3(J R Quinlan,1979)ID3(J R Quinlan,1979)基础上发展起基础上发展起来。来。C5.0C5.0是是C4.5C4.5算法的商业化版本算法的商业化版本n特点:特点:nC5.0C5.0用于建立多叉分类树用于建立多叉分类树n输入变量是分类型或数值型,输出变量应为分输入变量是分类型或数值型,输出变量应为分类型类型n以信息增益率确定最佳分组变量和分割点以信息增益率确定最佳分组变量和分割点C5.0算法:熵n信息熵是信息论信息熵是信息论(C.E.Shannon,1948C.E.Shannon,1948)中的基本概中的基本概念。信息论主要用于解决信息传递过程中的问题,
7、念。信息论主要用于解决信息传递过程中的问题,也称统计通信理论也称统计通信理论n信息论的基本出发点认为:信息论的基本出发点认为:n信息传递通过由信源、信道和信宿组成的传递信息传递通过由信源、信道和信宿组成的传递系统实现系统实现信道信道信源信源(发送端发送端)信宿信宿(接收端接收端)C5.0算法:熵n信息论的基本出发点认为:信息论的基本出发点认为:n传递系统存在于一个随机干扰环境之中传递系统存在于一个随机干扰环境之中n将发送的信息记为将发送的信息记为U U,接收的信息记为,接收的信息记为V V,那么,那么信道可看作为信道模型,记为信道可看作为信道模型,记为P(U|V)P(U|V)信道信道信源信源(
8、发送端发送端)U Uu1,u2,.uru1,u2,.ur信宿信宿(接收端接收端)V Vv1,v2,.vqv1,v2,.vqP(U|V)P(U|V)C5.0算法:熵n信道模型是一个条件概率矩阵信道模型是一个条件概率矩阵P(U|V)P(U|V),称为信道,称为信道传输概率矩阵传输概率矩阵nP(ui|vj)是信宿收到是信宿收到vj而信源发出而信源发出ui的概率的概率,且,且n信源也同样被看做是某种随机过程,有:信源也同样被看做是某种随机过程,有:C5.0算法:熵n例如:二元信道模型例如:二元信道模型C5.0算法:熵n先验不确定性:通信发生前,信宿对信源的状态具先验不确定性:通信发生前,信宿对信源的状
9、态具有不确定性有不确定性n后验不确定性:通信发生后,信宿收到发自信源的后验不确定性:通信发生后,信宿收到发自信源的信息,先验不确定性部分被消除,信宿对信源仍有信息,先验不确定性部分被消除,信宿对信源仍有一定程度的不确定性一定程度的不确定性n后验不确定性等于先验不确定性,表示信宿没有后验不确定性等于先验不确定性,表示信宿没有收到信息;收到信息;n后验不确定性等于零,表示信宿收到了全部信息后验不确定性等于零,表示信宿收到了全部信息n信息是用来消除随机不确定性的,信息量的大小信息是用来消除随机不确定性的,信息量的大小可由所消除的不确定性大小来计量可由所消除的不确定性大小来计量C5.0算法:熵n信息量
10、的数学定义:信息量的数学定义:n信息熵是信息量的数学期望,是信源发出信息前的信息熵是信息量的数学期望,是信源发出信息前的平均不确定性,也称先验熵。信息熵的数学定义:平均不确定性,也称先验熵。信息熵的数学定义:n信息熵等于信息熵等于0,表示只存在唯一的信息发送可能表示只存在唯一的信息发送可能,P(ui)=1,没有发送的不确定性没有发送的不确定性;n如果信源的如果信源的k个信号有相同的发送概率个信号有相同的发送概率,P(ui)=1/k,则信息发送的不确定性最大,信息熵达到最大则信息发送的不确定性最大,信息熵达到最大nP(ui)差别小,信息熵大,平均不确定性大;反之差别小,信息熵大,平均不确定性大;
11、反之C5.0算法:信息增益n已知信号已知信号U的概率分布的概率分布P(U)且收到信号且收到信号V=vj,发出信发出信号的概率分布为号的概率分布为P(U|vj),信源的平均不确定性:信源的平均不确定性:n称为后验熵。后验熵的期望称为后验熵。后验熵的期望(条件熵或信道疑义条件熵或信道疑义度度):n信息增益信息增益n信息消除随机不确定性的程度信息消除随机不确定性的程度C5.0:生长算法n如何从众多输入变量中选择一个最佳分组变量:如何从众多输入变量中选择一个最佳分组变量:nC5.0C5.0以信息增益率为标准。例如:以信息增益率为标准。例如:n决策树建立之前:决策树建立之前:n决策树建立过程中,考察输入
12、变量,如决策树建立过程中,考察输入变量,如T1T1:n问题:类别值多的输入变量比类别值少的输入变量问题:类别值多的输入变量比类别值少的输入变量有更多的机会成为当前最佳分组变量有更多的机会成为当前最佳分组变量n信息增益率:信息增益率:n如何评价数值型输入变量消除平均不确定性的能力如何评价数值型输入变量消除平均不确定性的能力n首先分箱:首先分箱:Clementine Clementine的的C5.0C5.0节点包含了节点包含了MDLPMDLP分箱算法分箱算法n然后再根据上述方法判定然后再根据上述方法判定C5.0:生长算法n如何从分组变量的众多取值中找到最佳分割点如何从分组变量的众多取值中找到最佳分
13、割点n默认策略默认策略:n对分类型分组变量:有对分类型分组变量:有k个类别,将样本分成个类别,将样本分成k组,形成树的组,形成树的k个分支个分支n对数值型分组变量:以对数值型分组变量:以MDLPMDLP分箱所得的最小组分箱所得的最小组限值为界,将小于组限的样本划为一组,大于限值为界,将小于组限的样本划为一组,大于的划为另一组,形成两个分叉的划为另一组,形成两个分叉n其他策略其他策略:nChiMerge分箱法,合并分组变量的多个类别后分箱法,合并分组变量的多个类别后再分支再分支C5.0:生长算法nChiMergeChiMerge分箱:有指导的分箱方法,基本思路:分箱:有指导的分箱方法,基本思路:
14、n将输入变量按变量值升序排序将输入变量按变量值升序排序n定义初始区间,将输入变量值分成若干组定义初始区间,将输入变量值分成若干组C5.0:生长算法nChiMergeChiMerge分箱基本思路:分箱基本思路:n计算输入变量相邻两组与输出变量的列联表计算输入变量相邻两组与输出变量的列联表n在列联表的基础上计算卡方观测值在列联表的基础上计算卡方观测值n观测值小于临界值,输入变量在该相邻区间上的划分观测值小于临界值,输入变量在该相邻区间上的划分对输出变量取值没有显著影响,应合并。首先合并卡对输出变量取值没有显著影响,应合并。首先合并卡方观测值最小的区间。方观测值最小的区间。n重复以上,直到任何两个相
15、临组无法合并,即卡重复以上,直到任何两个相临组无法合并,即卡方观测值都不小于临界为止。方观测值都不小于临界为止。C5.0:剪枝算法n采用后修剪方法,从叶节点向上逐层剪枝,关键:采用后修剪方法,从叶节点向上逐层剪枝,关键:n误差的估计、剪枝标准的设置误差的估计、剪枝标准的设置n误差估计:利用统计学置信区间的估计方法,直接误差估计:利用统计学置信区间的估计方法,直接在训练样本集上估计误差在训练样本集上估计误差nClementineClementine中中1-1-默认默认75%75%。置信度用于控制剪枝。置信度用于控制剪枝的程度,决定了所允许的误差上限的程度,决定了所允许的误差上限C5.0:剪枝算法
16、n剪枝标准:剪枝标准:“减少误差(减少误差(reduce-errorreduce-error)”法法nk为待剪子树中叶节点的个数为待剪子树中叶节点的个数,pi为第为第i个叶节点个叶节点所含样本占子树所含样本的比例所含样本占子树所含样本的比例,ei为第为第i个叶节个叶节点的估计误差点的估计误差,e为父节点的估计误差为父节点的估计误差C5.0:剪枝算法n例:能否剪掉例:能否剪掉C C节点下的节点下的3 3个叶节点(个叶节点(E E、F F、G G)估计估计3 3个节点的误差:个节点的误差:0.550.55、0.910.91、0.550.55加权求和:加权求和:计算计算C C节点的误差估计:节点的误
17、差估计:0.500.50可剪掉叶节点可剪掉叶节点E E、F F、G G第一个数字是本节点所含样第一个数字是本节点所含样本量本量N,第二个数为错判样第二个数为错判样本数本数EC5.0的应用举例n以以Students.xlsStudents.xls为例,目标:研究哪些因素是显著为例,目标:研究哪些因素是显著影响学生是否参与社会公益活动的因素影响学生是否参与社会公益活动的因素n变量重要性的测度变量重要性的测度(Calculate variable importance)nPropensity Scores(valid only for flag targets):计算计算变量的倾向性得分变量的倾向性
18、得分nCalculate raw propensity scores:基于训练样本基于训练样本集计算分类模型给出预测值为真的概率集计算分类模型给出预测值为真的概率n置信度:经拉普拉斯调整后的结果置信度:经拉普拉斯调整后的结果N(t)N(t)是节点是节点t t包含的样本量包含的样本量Nj(t)Nj(t)是节点是节点t t包含第包含第j j类的样本量类的样本量k k是输出变量的类别个数是输出变量的类别个数C5.0的推理规则集n决策树对逻辑关系的表述并非是最简洁的决策树对逻辑关系的表述并非是最简洁的IF a AND b THEN yesELSE IF c AND d THEN yesOTHERWIS
19、E no推理规则集的生成算法nPRISMPRISM(Patient Rule Induction Space MethodPatient Rule Induction Space Method,CendrowskaCendrowska,19871987),),“覆盖覆盖”算法,规则在训练样算法,规则在训练样本集上本集上100100正确正确n基本思路:确定输出变量的某个类别为期望类别基本思路:确定输出变量的某个类别为期望类别n在当前样本范围内,寻找能最大限度在当前样本范围内,寻找能最大限度“覆盖覆盖”期望类别期望类别样本的推理规则样本的推理规则n在在M M个样本范围内,按照正确覆盖率最大原则确定
20、附加条个样本范围内,按照正确覆盖率最大原则确定附加条件,得到一个再小些的样本范围,直到推理规则不再件,得到一个再小些的样本范围,直到推理规则不再“覆盖覆盖”属于期望类别外的样本属于期望类别外的样本n从当前样本集合中剔除已经被正确从当前样本集合中剔除已经被正确“覆盖覆盖”的样本,检的样本,检查剩余样本中是否还有属于期望类别的样本。如果有则查剩余样本中是否还有属于期望类别的样本。如果有则回到第一步。否则结束。回到第一步。否则结束。年龄段年龄段=A(2/5)=A(2/5),年龄段,年龄段=B(4/4)=B(4/4),年龄段,年龄段=C(3/5)=C(3/5),性别,性别=0(6/8)=0(6/8),
21、性别,性别=1(3/6)=1(3/6),推理规则为:,推理规则为:IF IF 年龄段年龄段=B THEN=B THEN 是否是否购买购买=yes=yes。剔除已被正确覆盖的。剔除已被正确覆盖的4 4个样本个样本年龄段年龄段=A(2/5)=A(2/5),年龄段,年龄段=C(3/5)=C(3/5),性别,性别=0(4/6)=0(4/6),性别,性别=1(1/4)=1(1/4),推理规则为:,推理规则为:IF IF 性别性别=0 THEN=0 THEN 是否购买是否购买=yes=yes需附加逻辑与条件,样本范围为表中灰色部分。需附加逻辑与条件,样本范围为表中灰色部分。年龄段年龄段=A(1/3)=A(
22、1/3),年龄段,年龄段=C(3/3)=C(3/3)。推理规则修正为:。推理规则修正为:IF IF 性别性别=0 AND=0 AND 年龄段年龄段=C THEN=C THEN 是否购买是否购买=yes=yesYes为期望类别为期望类别C5.0其他:损失矩阵n不同错误类型所造成的实际损失可能不同,置信度不同错误类型所造成的实际损失可能不同,置信度会影响决策,错判损失同样会影响决策会影响决策,错判损失同样会影响决策n损失矩阵损失矩阵n使用损失矩阵的策略:使用损失矩阵的策略:n数据建模型阶段使用损失矩阵数据建模型阶段使用损失矩阵n样本预测时使用损失矩阵样本预测时使用损失矩阵C5.0其他:损失矩阵nC
23、5.0C5.0对损失矩阵的使用对损失矩阵的使用n剪枝时采用剪枝时采用“减少损失减少损失”法,判断待剪子树中法,判断待剪子树中叶节点的加权损失是否大于父层节点的损失,如叶节点的加权损失是否大于父层节点的损失,如果大于则可以剪掉果大于则可以剪掉C5.0其他:损失矩阵n损失矩阵对预测的影响:损失矩阵对预测的影响:nc(i|j)是损失矩阵中将是损失矩阵中将j类错判为类错判为i类的损失类的损失,p(j|t)是被节点是被节点t判为判为j类的归一化概率,定义为:类的归一化概率,定义为:n例如:例如:预测值123实际值1c(2|1)c(3|1)2c(1|2)c(3|2)3c(1|3)c(2|3)C5.0其他:
24、N折交叉验证n偏差和方差:预测的差异性来自两个方面,定义输偏差和方差:预测的差异性来自两个方面,定义输出变量出变量Y Y的均方误差(的均方误差(Mean Squared ErrorMean Squared Error)为:)为:n模型复杂度是导致偏差大小的重要因素:模型复杂度是导致偏差大小的重要因素:n常数预测和复杂模型的预测常数预测和复杂模型的预测n方差较大的预测仍是无法令人满意的方差较大的预测仍是无法令人满意的n方差测度了模型对训练样本的敏感程度方差测度了模型对训练样本的敏感程度n偏差总是未知的,方差的测度显得较为重要偏差总是未知的,方差的测度显得较为重要nN N折交叉验证:估计模型参数的
25、方差,估计预测精度折交叉验证:估计模型参数的方差,估计预测精度的方差的方差C5.0其他n偏差和方差的存在,使建立在一组训练样本集上的偏差和方差的存在,使建立在一组训练样本集上的一个模型,所给出的预测往往缺乏稳健性一个模型,所给出的预测往往缺乏稳健性n数据挖掘中的策略数据挖掘中的策略nBaggingBagging技术技术nBoostingBoosting技术技术n均包括建模和投票两个阶段均包括建模和投票两个阶段C5.0应用其他:Bagging技术建模过程(输入:训练样本集建模过程(输入:训练样本集T T,训练次数,训练次数k k;输出:;输出:多个决策树模型多个决策树模型C1,C2,Ck)C1,
26、C2,Ck)For i=1,2,k doFor i=1,2,k do 从从T T中随机有放回抽取样本,形成有相同样本中随机有放回抽取样本,形成有相同样本容量的样本集合容量的样本集合TiTi 以以TiTi为训练集构造模型为训练集构造模型CiCiEnd forEnd forC5.0其他:Bagging技术决策过程(输入:新数据决策过程(输入:新数据X X,多个决策树模型,多个决策树模型C1,C2,CkC1,C2,Ck;输出:分类预测结果;输出:分类预测结果C(X)C(X))For i=1,2,k doFor i=1,2,k do 根据根据CiCi对对X X做预测,结果为做预测,结果为Ci(X)Ci
27、(X)End forEnd for统计各类别得票,得票数最高的为统计各类别得票,得票数最高的为C(X)C(X),或计算平,或计算平均值均值 如果将投票改进为:输出概率而非简单的分类结果,如果将投票改进为:输出概率而非简单的分类结果,概率的平均值来代替投票将更有意义概率的平均值来代替投票将更有意义C5.0其他:Boosting技术建立建立k k个模型;个模型;k k个模型投票个模型投票C5.0其他:Boosting技术建模过程(输入:训练样本集建模过程(输入:训练样本集T T,训练次数,训练次数k k;输出:;输出:多个决策树模型多个决策树模型C1,C2,Ck)C1,C2,Ck)初始化样本权数:
28、初始化样本权数:w wj j(1)=1/n(1)=1/n对每次迭代:对每次迭代:根据样本权数根据样本权数w wj j(i)(i),从,从T T中有放回地抽取中有放回地抽取n n个样个样本形成训练样本集本形成训练样本集T Ti i;根据训练集根据训练集T Ti i得到模型得到模型C Ci i;计算模型的误差计算模型的误差e(i)e(i)如果如果e(i)0.5 e(i)0.5 或者或者e(i)=0e(i)=0,则终止建模过程;,则终止建模过程;C5.0其他:Boosting技术建模过程建模过程对每次迭代:对每次迭代:根据误差更新每个样本的权数:根据误差更新每个样本的权数:正确分类的样本权数:正确分
29、类的样本权数:w wj j(i+1)=w(i+1)=wj j(i)*(i)(i)*(i),(i)(i)e(i)/(1-e(i)e(i)/(1-e(i)错误分类的样本权数保持不变错误分类的样本权数保持不变w wj j(i+1)=w(i+1)=wj j(i)(i)调整调整w wj j(i+1)(i+1)使得各样本的权重之和等于使得各样本的权重之和等于1 1经过经过k k次迭代,将得到次迭代,将得到k k个模型和个模型和k k个误差个误差C5.0其他:Boosting技术投票过程(决策过程)投票过程(决策过程)采用加权投票,给不同的模型赋予不同的权数,采用加权投票,给不同的模型赋予不同的权数,权数与模型的误差成反比,具体为:权数与模型的误差成反比,具体为:对新样本对新样本X X,每个模型,每个模型CiCi都给出预测值都给出预测值Ci(X)Ci(X),给预测类给预测类Ci(X)Ci(X)加权:加权:求各类权数的总和,总权数最高的类即为最终求各类权数的总和,总权数最高的类即为最终的分类结果的分类结果嵌套建模技术,弱嵌套建模技术,弱(WeakWeak)模型到强()模型到强(StrongStrong)模型)模型