收藏 分享(赏)

决策树_ID3算法.ppt

上传人:mcady 文档编号:6546745 上传时间:2019-04-16 格式:PPT 页数:57 大小:732KB
下载 相关 举报
决策树_ID3算法.ppt_第1页
第1页 / 共57页
决策树_ID3算法.ppt_第2页
第2页 / 共57页
决策树_ID3算法.ppt_第3页
第3页 / 共57页
决策树_ID3算法.ppt_第4页
第4页 / 共57页
决策树_ID3算法.ppt_第5页
第5页 / 共57页
点击查看更多>>
资源描述

1、决策树基本概念,决策树,决策树是一种典型的分类方法,首先对数据进行处理,利用 归纳算法生成可读的规则和决策树,然后使用决策对新数据进行 分析。本质上决策树是通过一系列规则对数据进行分类的过程。,ID3,决策树算法,ID3算法主要针对属性选择问题。是决策树学习方法中最 具影响和最为典型的算法。该方法使用信息增益度选择测试属性。当获取信息时,将不确定的内容转为确定的内容,因此信 息伴着不确定性。从直觉上讲,小概率事件比大概率事件包含的信息量大。 如果某件事情是“百年一见”则肯定比“习以为常”的事件包含的 信息量大。如何度量信息量的大小?,ID3 信息量大小的度量,决策树算法,Shannon1948

2、年提出的信息论理论。事件ai的信息量I( ai )可 如下度量:,其中p(ai)表示事件ai发生的概率。 假设有n个互不相容的事件a1,a2,a3,.,an,它们中有且仅有一个 发生,则其平均的信息量可如下度量:,ID3 信息量大小的度量,决策树算法,上式,对数底数可以为任何数,不同的取值对应了熵的不同单位。通常取2,并规定当p(ai)=0时 =0,公式1,在决策树分类中,假设S是训练样本集合,|S|是训练样本数,样本 划分为n个不同的类C1,C2,.Cn,这些类的大小分别标记为|C1|, |C2|,,|Cn|。则任意样本S属于类Ci的概率为:,ID3 信息量大小的度量,决策树算法,Entro

3、py(S,A)=(|Sv|/|S|)* Entropy(Sv)公式2,是属性A的所有可能的值v,Sv是属性A有v值的S子集 |Sv|是Sv 中元素的个数;|S|是S中元素的个数。,ID3 信息量大小的度量,决策树算法,Gain(S,A)是属性A在集合S上的信息增益Gain(S,A)= Entropy(S) -Entropy(S,A) 公式3Gain(S,A)越大,说明选择测试属性对分类提供的信息越多,决策树算法,第1步计算决策属性的熵,决策属性“买计算机?”。该属性分 两类:买/不买 S1(买)=641 S2(不买)= 383 S=S1+S2=1024P1=641/1024=0.6260 P2

4、=383/1024=0.3740I(S1,S2)=I(641,383)=-P1Log2P1-P2Log2P2=-(P1Log2P1+P2Log2P2)=0.9537,决策树算法,第2步计算条件属性的熵,条件属性共有4个。分别是年龄、 收入、学生、信誉。 分别计算不同属性的信息增益。,决策树算法,第2-1步计算年龄的熵,年龄共分三个组:青年、中年、老年 青年买与不买比例为128/256S1(买)=128 S2(不买)= 256 S=S1+S2=384P1=128/384 P2=256/384I(S1,S2)=I(128,256)=-P1Log2P1-P2Log2P2=-(P1Log2P1+P2L

5、og2P2)=0.9183,决策树算法,第2-2步计算年龄的熵,年龄共分三个组:青年、中年、老年 中年买与不买比例为256/0S1(买)=256 S2(不买)= 0 S=S1+S2=256P1=256/256 P2=0/256I(S1,S2)=I(256,0)=-P1Log2P1-P2Log2P2=-(P1Log2P1+P2Log2P2)=0,决策树算法,第2-3步计算年龄的熵,年龄共分三个组:青年、中年、老年 老年买与不买比例为125/127S1(买)=125 S2(不买)=127 S=S1+S2=252P1=125/252 P2=127/252I(S1,S2)=I(125,127)=-P1

6、Log2P1-P2Log2P2=-(P1Log2P1+P2Log2P2)=0.9157,决策树算法,第2-4步计算年龄的熵,年龄共分三个组:青年、中年、老年 所占比例 青年组 384/1025=0.375 中年组 256/1024=0.25 老年组 384/1024=0.375计算年龄的平均信息期望 E(年龄)=0.375*0.9183+0.25*0+0.375*0.9157=0.6877 G(年龄信息增益)=0.9537-0.6877=0.2660 (1),决策树算法,第3步计算收入的熵,收入共分三个组:高、中、低 E(收入)=0.9361 收入信息增益=0.9537-0.9361=0.01

7、76 (2),决策树算法,第4步计算学生的熵,学生共分二个组:学生、非学生 E(学生)=0.7811 年龄信息增益=0.9537-0.7811=0.1726 (3),决策树算法,第5步计算信誉的熵,信誉分二个组:良好,优秀 E(信誉)= 0.9048 信誉信息增益=0.9537-0.9048=0.0453 (4),决策树算法,第6步计算选择节点,年龄信息增益=0.9537-0.6877=0.2660 (1)收入信息增益=0.9537-0.9361=0.0176 (2)年龄信息增益=0.9537-0.7811=0.1726 (3)信誉信息增益=0.9537-0.9048=0.0453 (4),决

8、策树算法,年龄,青年,中年,老年,买/ 不买,买,买/ 不买,叶子,决策树算法,青年买与不买比例为128/256S1(买)=128 S2(不买)= 256 S=S1+S2=384P1=128/384 P2=256/384I(S1,S2)=I(128,256)=-P1Log2P1-P2Log2P2=-(P1Log2P1+P2Log2P2)=0.9183,决策树算法,如果选择收入作为节点 分高、中、低,平均信息期望(加权总和): E(收入)= 0.3333 * 0 + 0.5 * 0.9183 + 0.1667 * 0 = 0.4592 Gain(收入) = I(128, 256) - E(收入)

9、=0.9183 0.4592 = 0.4591,I(0,128)=0 比例: 128/384=0.3333I(64,128)=0.9183 比例: 192/384=0.5I(64,0)=0 比例: 64/384=0.1667,注意,决策树算法,年龄,青年,中年,老年,学生,买,信誉,叶子,否,是,优,良,买,不买,买/ 不买,买,叶子,叶子,叶子,决策树算法,ID3 决策树建立算法1 决定分类属性; 2 对目前的数据表,建立一个节点N 3 如果数据库中的数据都属于同一个类,N就是树叶,在树叶上标出所属的类 4 如果数据表中没有其他属性可以考虑,则N也是树叶,按照少数服从多数的原则在树叶上标出所

10、属类别 5 否则,根据平均信息期望值E或GAIN值选出一个最佳属性作为节点N的测试属性 6 节点属性选定后,对于该属性中的每个值:从N生成一个分支,并将数据表中与该分支有关的数据收集形成分支节点的数据表,在表中删除节点属性那一栏如果分支数据表非空,则运用以上算法从该节点建立子树。,决策树算法,决策树的数据准备,原始表,决策树算法,整理后的数据表,决策树的数据准备,Data cleaning删除/减少noise,补填missing values Data transformation数据标准化(data normalization)数据归纳(generalize data to higher-l

11、evelconcepts using concept hierarchies)例如:年龄归纳为老、中、青三类控制每个属性的可能值不超过七种(最好不超过五种) Relevance analysis对于与问题无关的属性:删对于属性的可能值大于七种又不能归纳的属性:删,决策树算法,决策树的数据准备,决策树算法,处理连续属性值,决策树算法比较适合处理离散数值的属性。实际应用中 属性是连续的或者离散的情况都比较常见。在应用连续属性值时,在一个树结点可以将属性Ai的值 划分为几个区间。然后信息增益的计算就可以采用和离散值 处理一样的方法。原则上可以将Ai的属性划分为任意数目的 空间。C4.5中采用的是二元

12、分割(Binary Split)。需要找出 一个合适的分割阈值。参考C4.5算法 Top 10 algorithms in data mining Knowledge Information System 2008 14:137,决策树算法,ID3算法小结,ID3算法是一种经典的决策树学习算法,由Quinlan于1979年 提出。ID3算法的基本思想是,以信息熵为度量,用于决策树节 点的属性选择,每次优先选取信息量最多的属性,亦即能使熵值 变为最小的属性,以构造一颗熵值下降最快的决策树,到叶子节 点处的熵值为0。此时,每个叶子节点对应的实例集中的实例属于 同一类。,决策树算法,ID3算法实际应

13、用-在电信行业应用实例(1),通过ID3算法来实现客户流失的预警分析,找出客户流失的 特征,以帮助电信公司有针对性地改善客户关系,避免客户流失利用决策树方法进行数据挖掘,一般有如下步骤:数据预处 理、决策树挖掘操作,模式评估和应用。 电信运营商的客户流失有三方面的含义:一是指客户从一个 电信运营商转网到其他电信运营商,这是流失分析的重点。二是 指客户月平均消费量降低,从高价值客户成为低价值客户。三、 指客户自然流失和被动流失。在客户流失分析中有两个核心变量:财务原因非财务原因、 主动流失被动流失。客户流失可以相应分为四种类型:其中非财务原因主动流失 的客户往往是高价值的客户。他们会正常支付服务

14、费用,并容易 对市场活动有所响应。这种客户是电信企业真正需要保住的客户。,决策树算法,ID3算法实际应用-在电信行业应用实例(2),数据预处理数据挖掘的处理对象是大量的数据,这些数据一般存储在数 据库系统中(该用户相关数据存储在其CRM中),是长期积累的 结果。但往往不适合直接挖掘,需要做数据的预处理工作,一般 包括数据的选择(选择相关的数据)、净化(消除冗余数据)、转换、 归约等。数据预处理工作准备是否充分,对于挖掘算法的效率乃 至正确性都有关键性的影响。该公司经过多年的电脑化管理,已有大量的客户个人基本信息 (文中简称为客户信息表)。在客户信息表中,有很多属性,如姓名 用户号码、用户标识、

15、用户身份证号码(转化为年龄)、在网时间 (竣工时间)、地址、职业、用户类别、客户流失(用户状态) 等等,数据准备时必须除掉表中一些不必要的属性,一般可采用面 向属性的归纳等方法去掉不相关或弱相关属性。,决策树算法,ID3算法实际应用-在电信行业应用实例(3),属性删除:将有大量不同取值且无概化操作符的属性或者可用其 它属性来代替它的较高层概念的那些属性删除。比如客户信息表 中的用户标识、身份证号码等,它们的取值太多且无法在该取值 域内找到概化操作符,应将其删除,得到表1。,决策树算法,ID3算法实际应用-在电信行业应用实例(4),属性概化:用属性概化阈值控制技术沿属性概念分层上卷或下钻 进行概

16、化。文化程度分为3类:W1初中以下(含初中),W2高中(含 中专),W3大学(专科、本科及以上);职业类别:按工作性质来分 共分3类:Z1一Z3; 缴费方式:托收:T1,营业厅缴费:T2,充值卡:T3。连续型属性概化为区间值:表中年龄、费用变化率和在网时间为 连续型数据,由于建立决策树时,用离散型数据进行处理速度最 快,因此对连续型数据进行离散化处理,根据专家经验和实际计 算信息增益,在“在网时长”属性中,通过检测每个划分,得到在 阈值为5年时信息增益最大,从而确定最好的划分是在5年处,则 这个属性的范围就变为5:H1,H2。而在“年龄”属性中, 信息增益有两个锋值,分别在40和50处,因而该

17、属性的范围变为 40-50即变为青年,中年,老年:N1,N2,N3;费 用变化率:指(当月话费近3个月的平均话费)/近3个月的平 均话费)0,F1:30%,F2:30%-99%, F3:100%变为 F1,F2,F3。,决策树算法,ID3算法实际应用-在电信行业应用实例(5),决策树算法,ID3算法实际应用-在电信行业应用实例(6),在图中,NO表示客户不流失,YES表示客户流失。从图可以看出,客户费用变化率 为100%的客户肯定已经流失;而费用变化率低于30%的客户;即每月资费相对稳定的客 户一般不会流失,费用变化率在30%99%的客户有可能流失,其中年龄在4050岁之间 的客户流失的可能性

18、非常大,而年龄低于40岁的客户,用充值卡缴费的客户和在网时间较 短的客户容易流失;年龄较大的客户,则工人容易流失。,主要内容,决策树基本概念,决策树算法,决策树研究问题,主要参考文献,决策树研究问题,理想的决策树有三种:(1)叶子结点数最少;(2)叶子结点深度最小;(3)叶子结点数最少且叶子结点深度最小。然而,洪家荣等人已经证明了要找到这种最优的决策树是NP难 题。因此,决策树优化的目的就是要找到尽可能趋向于最优的 决策树。,关于过渡拟合,上述的决策树算法增长树的每一个分支的深度,直到恰好能 对训练样例比较完美地分类。实际应用中,当数据中有噪声或训练 样例的数量太少以至于不能产生目标函数的有代

19、表性的采样时,该 策略可能会遇到困难。在以上情况发生时,这个简单的算法产生的树会过渡拟合训练 样例(过渡拟合:Over Fitting).,决策树研究问题,关于过渡拟合,对于一个假设,当存在其它的假设对训练样例的拟合比它差, 但事实上在实例的整个分布上(包含训练集合以外的实例)表现得 却更好时,则称该假设过度拟合训练样例。过度拟合:给定一个假设空间H,一个假设hH,如果存在其 它的假设h1 H ,使得在训练样例上h的错误率比h1小,但在整个实 例发布上h1的错误率比h小,则称假设h过度拟合训练数据过度拟合产生的原因:噪声,训练样例太小等,决策树研究问题,关于过渡拟合,对学习算法是否成功的真正测

20、试是看它对于训练中未见到的 数据的执行性能。训练过程应该包含训练样本和验证样本。验证样本用于测试 训练后的性能。如果验证结果差,则需要考虑采用不同的结构重 新进行训练,例如使用更大的样本集,或者改变从连续值到离散 值得数据转换等。通常应该建立一个验证过程,在训练最终完成后用来检测训 练结果的泛化能力。,决策树研究问题,关于过渡拟合,分类模型的误差,一般可以将分类模型的误差分为:1、训练误差(Training Error);2、泛化误差(Generalization Error),决策树研究问题,关于过渡拟合,分类模型的误差,训练误差是在训练记录上误分类样本比例;泛化误差是模型在未知记录上的期望

21、误差;一个好的模型不仅要能够很好地拟合训练数据,而且对未知 样本也要能够准确地分类。一个好的分类模型必须具有低的训练误差和泛化误差。因为 一个具有低训练误差的模型,其泛化误差可能比具有较高训练误 差的模型高。(训练误差低,泛化误差高,称为过渡拟合),决策树研究问题,关于过渡拟合,模型过渡拟合的潜在因素,(1)噪声导致的过渡拟合;错误的类别值/类标签,属性值等,(2)缺乏代表性样本所导致的过渡拟合根据少量训练记录作出的分类决策模型容易受过渡拟合的影响。由于训练样本缺乏代表性的样本,在没有多少训练记录的情况下,学习算法仍然继续细化模型就会导致过渡拟合。,决策树研究问题,关于过渡拟合,模型过渡拟合的

22、潜在因素,哺乳动物分类的训练样例,体温,恒温,冷血,冬眠,N,Y,N,N,4条腿,Y,N,N,Y,哺乳动物分类的训练样例,按照训练模型。人和大象都不是 哺乳动物。决策树作出这样的判 断是因为只有一个训练样例具有 这些特点(鹰,恒温,不冬眠) 被划分为非哺乳动物。 该例清楚表明,当决策树的叶节 点没有足够的代表性时,可能会 预测错误。,决策树研究问题,关于过渡拟合,解决过度拟合的手段:1 及早停止树增长;2 后修剪法。,决策树研究问题,关于过渡拟合,1 及早停止树增长由于决策树学习要从候选集合众选择满足给定标准的 最大化属性,并且不回溯,也就是我们常说的爬山策略,其 选择往往会是局部最优而不是全

23、局最优。树结构越复杂,则 过渡拟合发生的可能性越大。因此,要选择简单的模型。Occan法则(又称Occan剃刀 Occan Razor):具有相同 泛化误差的两个模型,较简单的模型比复杂的模型更可取。,决策树研究问题,关于过渡拟合,后修剪法(后剪枝法)在训练过程中允许对数据的过渡拟合,然后再对树进行修剪 该方法称为后剪枝法。,决策树研究问题,关于过渡拟合,后修剪法(后剪枝法)例,A,B,负,C,正,正,负,Y,Y,Y,N,N,N,一棵通过 训练集合 学好的决策树,决策树研究问题,关于过渡拟合,后修剪法(后剪枝法)例,A,B,负,C,正,正,负,Y,Y,Y,N,N,N,对以上的决策树通过右侧的

24、验证集合进行测试,发现其 有5个错分类。,决策树研究 问题,关于过渡拟合,后修剪法(后剪枝法)例,A,B,负,C,正,正,负,Y,Y,Y,N,N,N,18,19,20,1,2,3,45,6,7,8,9,10,11,12,13,14,15,16,17,错分类5个,6,7,8,13,14,决策树研究问题,关于过渡拟合,后修剪法(后剪枝法)例,第1步 将决策树规则化,规则1 IF A=Y AND B=Y THEN +规则2 IF A=Y AND B=N AND C=YTHEN +规则3 IF A=Y AND B=N AND C=N THEN 规则4 IF A=N THEN -,A,B,负,C,正,正

25、,负,Y,Y,Y,N,N,N,决策树研究问题,关于过渡拟合,后修剪法(后剪枝法)例,规则1 IF A=Y AND B=Y THEN +规则2 IF A=Y AND B=N AND C=YTHEN +规则3 IF A=Y AND B=N AND C=N THEN 规则4 IF A=N THEN -,第2步 规则精度的计算,决策树研究问题,规则2与规则4精度为100%,保留,关于过渡拟合,后修剪法(后剪枝法)例,第3步 对规则进行修剪,决策树研究问题,?,关于过渡拟合,后修剪法(后剪枝法)例,第3步 对规则进行修剪-最终规则集合为,规则1 IF A=Y AND B=Y THEN + 规则2 IF

26、A=Y AND B=N AND C=YTHEN + 规则3 IF A=Y AND B=N AND C=N THEN 规则4 IF A=N THEN -原始规则集合,规则1 IF A=Y THEN + 规则2 IF A=Y AND B=N AND C=YTHEN + 规则3 IF C=N THEN 规则4 IF A=N THEN -最终规则集合,决策树研究问题,关于过渡拟合,后修剪法(后剪枝法)例,第4步 根据精度和泛化能力对对规则进行排序,IF A=N THEN - 18,19,20IF A=Y AND B=N AND C=Y THEN + 9,10,11,12IF C=N THEN 6,7,

27、8,13,14,15,16,17IF A=Y THEN +1,2,3,4,5,尽管13,14仍然被错分,但整个模型的精度提高了,决策树研究问题,主要内容,决策树基本概念,决策树算法,决策树研究问题,主要参考文献,主要参考文献,几个数据,万方数据库中查询涉及决策树的学位论文; 时间跨度是2005-2009; 查询结果是245篇(硕士论文居多)按照以下三个领域分类:1 利用决策树解决实际问题;2 利用决策树与其它数据挖掘(机器学习)结合改进;3 有关决策树的改进方法。,约150篇,约100篇,主要参考文献,几个数据,万方数据库中查询涉及决策树的期刊论文 时间跨度是2005-2009; 查询结果是9

28、82篇按照以下三个领域分类:1 利用决策树解决实际问题;2 利用决策树与其它数据挖 掘(机器学习)结合改进;3 有关决策树的改进方法。,约600篇,约400篇,非计算机领域占相当部分 计算机领域的主要期刊没有 一篇,以研究与发展为例,前100篇中有4篇 初略估计1000篇中有40篇,平均每年 8篇,该期刊每年发表文章360篇, 占比8/360=2.2%.研究与发展录用率 约8-10%。可以初略推算出每年收到 的关于决策树方面的论文约80-100篇,主要参考文献,几个数据,以上几个关于决策树的数据也许能够表明,尽管决策树非常古老, 但目前仍然有相当部分的研究人员和研究项目和工程项目。仍然 是硕士研究生可以加以研究的主要方向。另外,通过对这些数据的分析,我也想告诉大家,数据是非常宝贵 的。特别是学校科研项目多数是研究项目,对海量数据集合的获得 非常不容易。而目前数据挖掘研究和应用往往和大数据集合有关。 像网络日志、万方数据、国外数据挖掘通用数据集合(一般都比较 小)等都是我们可以利用的数据集合。,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 网络科技 > 数据结构与算法

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报