决策树分类和预测算法的原理及实现.docxVIP

决策树分类和预测算法的原理及实现.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE 1 PAGE 1 决策树分类和预测算法的原理及实现 算法决策树是一种通过对历史数据进行测算实现对新数据进行分类和预估的算法。简洁来说决策树算法就是通过对已有明确结果的历史数据进行分析,查找数据中的特征,并以此为依据对新产生的数据结果进行预估。 算法决策树是一种通过对历史数据进行测算实现对新数据进行分类和预估的算法。简洁来说决策树算法就是通过对已有明确结果的历史数据进行分析,查找数据中的特征。并以此为依据对新产生的数据结果进行预估。 决策树由3个主要部分组成,分别为决策节点,分支,和叶子节点。其中决策树最顶部的决策节点是根决策节点。每一个分支都有一个新的决策节点。决策节点下面是叶子节点。每个决策节点表示一个待分类的数据类别或属性,每个叶子节点表示一种结果。整个决策的过程从根决策节点开始,从上到下。依据数据的分类在每个决策节点给出不同的结果。 图1构造决策树 构造决策树是一个复杂的工作。下面我们将介绍决策树中的ID3算法和“信息熵”的概念。并手工创建一个简洁的决策树,用以说明整个构建的过程和思路。 ID3算法 构造决策树的方法有许多种,ID3是其中的一种算法。ID3算法最早是由罗斯昆(J.RossQuinlan)1975年在悉尼大学提出的一种分类预估算法,核心是“信息熵”。ID3算法认为“互信息”高的属性是好属性,通过计算历史数据中每个类别或属性的“信息熵”获得“互信息”,并选择“互信息”最高的类别或属性作为决策树中的决策节点,将类别或属性的值做为分支连续进行分裂。不断重复这个过程,直到生成一棵完整的决策树。 信息熵的含义及分类 信息熵是信息论中的一个重要的指标,是由香农在1948年提出的。香农借用了热力学中熵的概念来描述信息的不确定性。因此信息学中的熵和热力学的熵是有联系的。依据CharlesH.Bennett对Maxwell’sDemon的重新解释,对信息的销毁是一个不可逆过程,所以销毁信息是符合热力学第二定律的。而产生信息,则是为系统引入负(热力学)熵的过程。所以信息熵的符号与热力学熵应当是相反的。 简洁的说信息熵是衡量信息的指标,更准确的说是衡量信息的不确定性或混乱程度的指标。信息的不确定性越大,熵越大。打算信息的不确定性或者说复杂程度主要因素是概率。决策树中使用的与熵有关的概念有三个:信息熵,条件熵和互信息。下面分别来介绍这三个概念的含义和计算方法。 信息熵是用来衡量一元模型中信息不确定性的指标。信息的不确定性越大,熵的值也就越大。而影响熵值的主要因素是概率。这里所说的一元模型就是指单一事件,而不确定性是一个事件出现不同结果的可能性。例如抛硬币,可能出现的结果有两个,分别是正面和反面。而每次抛硬币的结果是一个特别不确定的信息。因为依据我们的经验或者历史数据来看,一个匀称的硬币出现正面和反面的概率相等,都是50%。因此很难推断下一次出现的是正面还是反面。这时抛硬币这个事件的熵值也很高。而假如历史数据告知我们这枚硬币在过去的100次试验中99次都是正面,也就是说这枚硬币的质量不匀称,出现正面结果的概率很高。那么我们就很简单推断下一次的结果了。这时的熵值很低,只有0.08。 图2信息熵 我们把抛硬币这个事件看做一个随机变量S,它可能的取值有2种,分别是正面x1和反面x2。每一种取值的概率分别为P1和P2。我们要获得随机变量S的取值结果至少要进行1次试验,试验次数与随机变量S可能的取值数量(2种)的对数函数Log有联系。Log2=1(以2为底)。因此熵的计算公式是: 图3公式 在抛硬币的例子中,我们借助一元模型自身的概率,也就是前100次的历史数据来消退了推断结果的不确定性。而对于许多现实生活中的问题,则无法仅仅通过自身概率来推断。例如:对于天气状况,我们无法像抛硬币一样通过晴天,雨天和雾霾在历史数据中出现的概率来推断明天的天气,因为天气的种类许多,并且影响天气的因素也有许多。同理,对于网站的用户我们也无法通过他们的历史购买频率来推断这个用户在下一次访问时是否会完成购买。因为用户是的购买行为存在着不确定性,要消退这些不确定性需要更多的信息。例如用户历史行为中的广告创意,促销活动,商品价格,配送时间等信息。因此这里我们不能只借助一元模型来进行推断和预估了,需要获得更多的信息并通过二元模型或更高阶的模型了解用户的购买行为与其他因素间的关系来消退不确定性。衡量这种关系的指标叫做条件熵。 条件熵是通过获得更多的信息来消退一元模型中的不确定性。也就是通过二元或多元模型来降低一元模型的熵。我们知道的信息越多,信息的不确定性越小。例如,只使用一元模型时我们无法依据用户历史数据中的购买频率来推

文档评论(0)

宝锋 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档