数据挖掘-决策树

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据挖掘论文——决策树

1.什么是决策树

1.决策树(Decision Tree)是在已知各种情况发生概率的基础上,通

过构成决策树来求取净现值的期望值大于等于零的概率,评价项目

风险,判断其可行性的决策分析方法,是直观运用概率分析的一种

图解法。由于这种决策分支画成图形很像一棵树的枝干,故称决策

树。

2.决策树图示

1.

3.实例描述

1.女儿:多大年纪了?

母亲:26。

女儿:长的帅不帅?

母亲:挺帅的。

女儿:收入高不?

母亲:不算很高,中等情况。

女儿:是公务员不?

母亲:是,在税务局上班呢。

女儿:那好,我去见见。

2.这个女孩的决策过程就是典型的分类树决策。相当

于通过年龄、长相、收入和是否公务员对将男人分

为两个类别:见和不见。假设这个女孩对男人的要

求是:30岁以下、长相中等以上并且是高收入者或

中等以上收入的公务员,那么这个可以用下图表示

女孩的决策逻辑:

2.

4.决策树的组成

1.□——决策点,是对几种可能方案的选择,即最后选择的最佳方案。

如果决策属于多级决策,则决策树的中间可以有多个决策点,以决

策树根部的决策点为最终决策方案。[1]

2.○——状态节点,代表备选方案的经济效果(期望值),通过各状

态节点的经济效果的对比,按照一定的决策标准就可以选出最佳方

案。由状态节点引出的分支称为概率枝,概率枝的数目表示可能出

现的自然状态数目每个分枝上要注明该状态出现的概率。[1]

1.——结果节点,将每个方案在各种自然状态下取得的损益值

标注于结果节点的右端

5.决策树的构建

1.不同于贝叶斯算法,决策树的构造过程不依赖领域知识,它使用属

性选择度量来选择将元组最好地划分成不同的类的属性。所谓决策

树的构造就是进行属性选择度量确定各个特征属性之间的拓扑结

构。

2.构造决策树的关键步骤是分裂属性。所谓分裂属性就是在某个节点

处按照某一特征属性的不同划分构造不同的分支,其目标是让各个

分裂子集尽可能地“纯”。尽可能“纯”就是尽量让一个分裂子集

中待分类项属于同一类别。分裂属性分为三种不同的情况:

6.属性是离散值且不要求生成二叉决策树。此时用属性的每一个划分作为一

个分支。

7.属性是离散值且要求生成二叉决策树。此时使用属性划分的一个子集进行

测试,按照“属于此子集”和“不属于此子集”分成两个分支。

8.属性是连续值。此时确定一个值作为分裂点split_point,按

照>split_point和<=split_point生成两个分支。

9.量化纯度算法选择

1.构造决策树的关键性内容是进行属性选择度量,属性选择度量是一

种选择分裂准则,是将给定的类标记的训练集合的数据划分D“最

好”地分成个体类的启发式方法,它决定了拓扑结构及分裂点

split_point的选择。

2.我们采用熵公式来进行纯度选择计算

10.公式及算法描述

1.熵(entropy):刻画了任意样例集的纯度(purity)。

2.熵确定了要编码集合S中任意成员(即以均匀的概率随机抽出

的一个成员)的分类所需要的最小二进制位数。

3.如果目标属性具有c个不同的值,那么S相对c个状态(c-wise)

的分类的熵定义为:

4.

1.P

i

是S中属于类别i的比例。

5.信息增益(information gain):一个属性的信息增益就是由于使

用这个属性分割样例而导致的期望熵降低。

6.

1.Values(A)是属性A所有可能值的集合,S

v

是S中属性A的

值为v的子集。

7.例如,假定S包含14个样例-[9+,5-]。在这14个样例中,假定正

例中的6个和反例中的2个有Wind=Weak,其他的有Wind=Strong。

由于按照属性Wind分类14个样例得到的信息增益可以计算如下。

1.Values(Wind)=Weak,Strong

2.S=[9+,5-]

3.S

Weak

←[6+,2-]

4.S

strong

←[3+,3-]

5.=Entropy(S)-(8/14)Entropy(S

Weak )-(6/14)Entropy(S

strong

)

6.=0.940-(8/14)0.811-(6/14)1.00

7.=0.048

11.停止条件

1.决策树的构建过程是一个递归的过程,所以需要确定停止条件,否

则过程将不会结束。一种最直观的方式是当每个子节点只有一种类

型的记录时停止,但是这样往往会使得树的节点过多,导致过拟合

问题(Overfitting)。另一种可行的方法是当前节点中的记录数低

于一个最小的阀值,那么就停止分割,将max(P(i))对应的分类作

为当前叶节点的分类。

12.过渡拟合

1.采用上面算法生成的决策树在事件中往往会导致过滤拟合。也就是

该决策树对训练数据可以得到很低的错误率,但是运用到测试数据

上却得到非常高的错误率。过渡拟合的原因有以下几点:

13.噪音数据:训练数据中存在噪音数据,决策树的某些节点有噪音数据作为

分割标准,导致决策树无法代表真实数据。

14.缺少代表性数据:训练数据没有包含所有具有代表性的数据,导致某一类

数据无法很好的匹配,这一点可以通过观察混淆矩阵(Confusion Matrix)分析得出。

15.多重比较(Mulitple Comparition):举个列子,股票分析师预测股票涨

或跌。假设分析师都是靠随机猜测,也就是他们正确的概率是0.5。每一个人预测10次,那么预测正确的次数在8次或8次以上的概率为

,只有5%左右,比较低。但是如果50个分析师,每个人预测10次,选择至少一个人得到8次或以上的人作为

代表,那么概率为,概率十分大,随着分析师人数的增加,概率无限接近1。但是,选出来的分析师其实是打酱油的,他对未来的预测不能做任何保证。上面这个例子就是多重比较。这一情况和决策树选取分割点类似,需要在每个变量的每一个值中选取一个作为分割的代表,所以选出一个噪音分割标准的概率是很大的。

16.优化方案

1.以修剪枝叶为例:

2.决策树过渡拟合往往是因为太过“茂盛”,也就是节点过多,

所以需要裁剪(Prune Tree)枝叶。裁剪枝叶的策略对决策

树正确率的影响很大。主要有两种裁剪策略。

3.前置裁剪在构建决策树的过程时,提前停止。那么,会将

切分节点的条件设置的很苛刻,导致决策树很短小。结果就

是决策树无法达到最优。实践证明这中策略无法得到较好的

结果。

4.后置裁剪决策树构建好后,然后才开始裁剪。采用两种方

法:1)用单一叶节点代替整个子树,叶节点的分类采用子

树中最主要的分类;2)将一个字数完全替代另外一颗子树。

后置裁剪有个问题就是计算效率,有些节点计算后就被裁剪

了,导致有点浪费。

17.准确值估计

1.决策树T构建好后,需要估计预测准确率。直观说明,比如N条测

试数据,X预测正确的记录数,那么可以估计acc = X/N为T的准

相关文档
最新文档