- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ID3算法的改进.doc
ID3算法的改进
摘要:ID3算法是决策树学习里面很重要的算法之一。ID3算法采用自顶向下贪婪搜索遍历可能的决策树空间[1]54,由于该算法存在两个大的缺点:一、属性取值偏向;二、抛弃较小数据。针对这两个缺点本文给出了两个改进方法:一、增加属性权值;二:增加信息增益度。通过实验结果表明使用这两种方法的综合应用的结果比没有使用这两种方法的效果更好。
关键词:决策树 ID3 算法 属性权值 信息增益
1 引言
决策树学习是应用最广的归纳推理算法之一。决策树的结果是实例属性值的合取的析取式的结果。合取是从每条树根到树叶的属性测试的结果,对所有合取进行析取的结果就是整个决策树的结果。因为在决策树学习中ID3算法很有用,所以很多人都进行了研究和探索。决策树学习起源于概念学习系统,最早是由Quinlan[2]81提出来的, 通过应用分治策略,对一个训练集进行学习最后生成一棵决策树。当训练数据集变大的时候ID3算法由于之前的决策树已经确定,所以再次加入其它样本的时候就要重新进行树的构建,就会花费较多的时间,这会使算法的效率变得很低。由于ID3算法以最高信息增益作为选择属性的标准[1]54,这就会导致最后的结果偏向于选取属性取值更多的那个属性。针对这两个问题本文采取了从两个方面进行改进:一、属性权值;二、信息增益度。从这两个方面进行改进的好处就是可以提高决策树的准确性和决策树的实时性,减少了决策树依赖于取值较多的属性,通过实验验证这种改进的方法比以前的方法更有效率。
2 ID3 算法的原理
ID3 是基于信息熵的决策树分类算法,其核心思想是在决策树中各层分枝节点上选择属性, 用信息增益作为属性选择标准,使得在每一非叶子节点进行测试时,能获得关于被测试例子最大的类别信息,使用该属性将样本集划分成子集后,系统的信息熵值最小[3]3073。
2.1 ID3算法思想
现假设一个训练集仅有两种分类:正例和反例,并且所有的属性都是离散型数据[4]63。在生成决策树的过程中,通过计算每个结点的信息增益来确定它们的位置,根据信息增益的高低来对每个属性进行排列,树的每个结点的确定都是从信息增益的从高到低的顺序来进行排列。
2.2 ID3算法的理论基础如下
1948 年,香农提出了信息论[5]57。其中对信息量和熵的定义[5]57为:
(1)
(2)
2.2.1 数据集S划分前的熵
设数据集S有 , C共有n + l个属性。其中分类属性C有m个不同的离散属性值 。即数据集S中的记录要分成m个类别。设数据集S中全部的记录数为s,分类属性值为 的记录数分别为 。那么划分之前,数据集S的总熵为:
(2.1) 其中Pi是任意一个记录属于类别的概率,用Si/S估计。
2.2.2 数据集S划分后的熵
一个属性的信息增益就是由于使用这个属性分割样例而导致的期望熵降低[11]。其中,属性A有v个值,并且把S分割成了v个不同的子集 。设子集Sj中全部的记录数为Sj,其中分类属性值为C1,C2,…Cm的记录数分别为S1j,S2j,…Svj。子集Sij的熵为:
(2.2)
其中Pij是Sj中任意一个记录属于类别Ci的概率,用Sij/Sj估计。S的总熵是v个子集的熵的加权平均。数据集S划分后的熵为:
2.2.3 数据集S划分前与划分后的熵差
信息增益:表示系统由于分类获得的信息量。由系统熵的减少值定量描述。数据集S用属性A划分后的信息增益为数据集S划分前后的熵差:
(2. 4)
在结点划分方面,选择属性应该具有最高信息增益。熵刻画了任意样例集的纯度,就可以使用熵减少量最大的作为划分方案中最好的那张方法,所以就把信息增益最大的属性作为当前结点。
3 ID3算法改进
3.1属性加权
从上面的算法我们可以看出ID3算法存在两个大的缺点:一、属性取值偏向;二、只对较小数据有效。针对以上两个缺点本文进行了下面的改进。通过对2.2.3中的公式(2. 4)中的属性进行加权,以此来增加属性的权值,减小不重要的属性的权值,通过增加权值的方法使得最后生成的决策树的结点的时候数量少的数据元组也会得到重视,而属性值较多但是并不重要的属性就会得不到重视,这样的结果就会使得决策树不会对取值较多的属性存在依赖,从根本上减少由于数据多而属性并不重要但是得到重视,数据少而属性重要的属性得不到重视的情况。经过加权,原式(2. 4)将修改为下式:
其中 是属性j的加权后的值,从上面的公式我们可以看出重要性高的属性,他的权值参数的取值就会越大,但是不管他有多大最终都要满足 。
3.2信息增益度
在公式(3. 1)改进的基础之上,增加信息增益度的概
文档评论(0)