欢迎来到天天文库
浏览记录
ID:57101043
大小:489.50 KB
页数:32页
时间:2020-07-31
《2019以ID3算法为例探讨数据挖掘中决策树算法应用课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、以ID3算法为例探讨数据挖掘中决策树算法的应用主讲:郭佳2019.11.28决策树是一种常用于预测模型的算法,它通过将大量数据有目的分类,从中找到一些有价值的,潜在的信息。它的主要优点是描述简单,分类速度快,特别适合大规模的数据处理。最有影响和最早的决策树方法是由Quinlan在1986年提出的著名的基于信息熵的ID3算法。接下来主要介绍ID3算法。决策树算法的概念由ID3算法得到的决策树决策树分类是一种从无次序、无规则的训练样本集中推理出决策树表示形式的分类规则的方法。它采用自顶向下的方法,在决策
2、树的内部结点进行属性值的比较并根据不同的属性值判断从该结点向下的分支,在决策树的叶结点得到结论。所以从根结点到任一个叶结点所形成的一条路径就构成了一条分类规则,叶结点所标记的类别就构成了规则的结论内容。决策树算法的概念数据挖掘是由可以获取的数据驱动的,其成功在很大程度上取决于数据的数量和质量。我们应从大量的企业客户数据中找到与分析问题有关的样本数据子集。这样可以减少处理的数据量,但必须保证其样本子集具有典型的代表性。然后,进行数据预处理、分析,尽可能的对问题解决的要求进一步明确化、量化。按问题要求对
3、数据进行增删或组合生成新的变量,以体现对问题状态的有效描述。用于分类的训练数据源组将具体的客户年龄概化为<=30、31-50、>50三个年龄段,分别代表青年、中年和老年客户,将产品价格分为高、中、低三档等,具体见表1,有4个属性:客户年龄段、文化程度、销售地区、产品档次,类别是销售业绩,分为好和差两类。以某类产品的销售记录数据为例表1训练样本集合ID3算法是一种根据熵减(EntropyDeduce)理论选择最优的描述属性的方法。该算法从树的根节点处的所含训练样本开始,选取一个属性来区分这些样本。对属
4、性的每一个值产生一个分支。分支属性的相应样本子集被移到新生成的子节点上。这个算法递归地应用于每个子节点,直到一个节点上的所有样本都分区到某个类中。算法中属性选择的基础是基于使节点所含的信息熵最小化。ID3算法原理具体方法如下:设S为一个包含s个数据样本的集合,类别属性可以取m个不同的值,对应于m个不同的类别,。假设为类别中的样本个数,若要对一个给定数据对象进行分类,决策树的构造过程如下:(1)计算初始熵其中是任意一个数据对象属于类别的概率,可以按计算。ID3算法原理(2)属性的选择设一个属性A取v个
5、不同的值。可以用属性A将集合S划分为v个子集,其中包含了集合S中属性A取值的数据样本。若属性A被选为测试属性,设为子集中属于类别的样本数。则利用属性A划分当前样本集合所需要的信息(熵)可以计算如下:ID3算法原理其中被当作第j个子集的权值,它是由子集中属性A取aj值的样本数之和除以S集合中的样本总数,E(A)的值越小,表示子集划分结果越好。I是对于一个给定子集的信息熵,计算方法为:这样利用属性A对当前分支节点进行相应样本集合划分所获得的信息增益为:Gain(A)=-E(A)换言之,Gain(A)被认
6、为是根据属性A取值进行样本集合划分所获得的信息熵的减少量,也可以说是由于知道属性A的值而导致的熵的期望压缩。ID3算法原理ID3算法计算每个属性的信息增益,并从中选择出信息增益最大的属性作为给定集合的测试属性并由此产生相应的分支节点。所产生的节点被标记为相应的属性,并根据这一属性的不同取值分别产生相应决策树分支,每个分支代表一个被划分的样本子集。ID3算法原理由表1可知:类标号属性有两个不同的值,因此有两个不同的类(即m=2)设类C1对应于good,类C2对应于bad。类good有18个样本,类ba
7、d有8个样本。为了计算每个属性的信息增益,先使用计算初始信息熵为:I(s1,s2)=I(18,8)=-ID3算法分类模型的建立下一步,需要计算每个属性的熵,即客户年龄age、文化程度education、产品档次level和销售区域area。先看age属性,观察age的每个样本值的good、bad分布,对每个分布分别计算信息熵:当age<=30:s11=9s21=2时,I(s11,s21)=-当age在31-50间:s12=8s22=4时,I(s12,s22)=-当age>=50:s13=1s23=2
8、时,I(s13,s23)=-如果样本按age划分,对一个给定的样本分类所需的信息熵为:E(age)==0.8192类似的,可以得到:E(education)==0.7669E(level)==0.853E(area)=利用上述属性对当前分支节点进行相应样本集合划分所获得的信息增益分别为:Gain(age)=I(s1,s2)-E(age)=0.895-0.8192=0.0758Gain(education)=I(s1,s2)-E(education)=0.895-0.7
此文档下载收益归作者所有