第5章-数据分类-决策树解析课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第5章-数据分类-决策树解析课件.ppt》由用户(ziliao2023)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 分类 决策树 解析 课件
- 资源描述:
-
1、2023-5-231数据仓库与数据挖掘技术数据仓库与数据挖掘技术2023-5-232 第5章章 决策树和决策规则决策树和决策规则 5.1 引例引例 n分类的定义n分类是指把数据样本映射到一个事先定义的类中的学习过程,即给定一组输入的属性向量及其对应的类,用基于归纳的学习算法得出分类。2023-5-233AgeSalaryClass30highc125highc221lowc243highc118lowc233lowc1描述属性描述属性类别属性类别属性分类问题使用的数据集格式:分类问题使用的数据集格式:2023-5-2345.1 引例n分类问题使用的数据集格式n描述属性可以是连续型属性,也可以是
2、离散型属性;而类别属性必须是离散型属性。n连续型属性是指在某一个区间或者无穷区间内该属性的取值是连续的,例如属性“Age”n离散型属性是指该属性的取值是不连续的,例如属性“Salary”和“Class”2023-5-2355.1 引例n分类问题使用的数据集格式n分 类 问 题 中 使 用 的 数 据 集 可 以 表 示 为X=(xi,yi)|i=1,2,totalnxi=(xi1,xi2,xid),其中xi1,xi2,xid分别对应d个描述属性A1,A2,Ad的具体取值nyi表示数据样本xi的类标号,假设给定数据集包含m个类别,则yic1,c2,cm,其中c1,c2,cm是类别属性C的具体取值
3、n未知类标号的数据样本x用d维特征向量x=(x1,x2,xd)来表示2023-5-2365.2 分类问题概述n5.2.1 分类的过程n5.2.2 分类的评价准则2023-5-2375.2.1 分类的过程获取数据获取数据预处理预处理分类器设计分类器设计分类决策分类决策2023-5-2385.2.1 分类的过程n获取数据n输入数据、对数据进行量化n预处理n去除噪声数据、对空缺值进行处理n数据集成或者变换 n分类器设计n划分数据集、分类器构造、分类器测试n分类决策n对未知类标号的数据样本进行分类2023-5-2395.2.2 分类的评价准则n给定测试集Xtest=(xi,yi)|i=1,2,NnN表
4、示测试集中的样本个数nxi表示测试集中的数据样本nyi表示数据样本xi的类标号n对于测试集的第j个类别,假设n被正确分类的样本数量为TPjn被错误分类的样本数量为FNjn其他类别被错误分类为该类的样本数据量为FPj2023-5-23105.2.2 分类的评价准则n精确度:代表测试集中被正确分类的数据样本所占的比例 NTPAccuracym1jj2023-5-23115.2.2 分类的评价准则n查全率:表示在本类样本中被正确分类的样本所占的比例 n查准率:表示被分类为该类的样本中,真正属于该类的样本所占的比例 mj1,FNTPTPRecalljjjjmj1,FPTPTPPrecisionjjjj
5、2023-5-23125.2.2 分类的评价准则nF-measure(加权调合平均数加权调合平均数):是查全率和查准率的组合表达式 n是可以调节的,通常取值为1 mj1,PrecisionRecallPrecisionRecall)1(measureFjj2jj2j2023-5-23135.2.2 分类的评价准则n几何均值:是各个类别的查全率的平方根 m1jjcallRemeanG2023-5-2314 决策树方法的起源是亨特(决策树方法的起源是亨特(HuntHunt,19661966)的)的概念学习系统概念学习系统CLSCLS方法,然后发展到由方法,然后发展到由QuinlanQuinlan研
6、制研制ID3ID3方法,然后到著名的方法,然后到著名的C4.5C4.5算法,算法,C4.5C4.5算算法的一个优点是它能够处理连续属性。还有法的一个优点是它能够处理连续属性。还有CARTCART算法和算法和AssistantAssistant算法也是比较有名的决策算法也是比较有名的决策树方法。树方法。5.3 5.3 决策树决策树2023-5-2315n决策树的优点:n进行分类器设计时,决策树分类方法所需时间相对较少n决策树的分类模型是树状结构,简单直观,比较符合人类的理解方式n可以将决策树中到达每个叶节点的路径转换为IFTHEN形式的分类规则,这种形式更有利于理解2023-5-23161.1.
7、什么是决策树什么是决策树q 决策树(决策树(Decision TreeDecision Tree)又称为判定树,是运)又称为判定树,是运用于分类的一种树结构。其中的每个内部结点用于分类的一种树结构。其中的每个内部结点(internal nodeinternal node)代表对某个属性的一次测试)代表对某个属性的一次测试,每条边代表一个测试结果,叶结点(,每条边代表一个测试结果,叶结点(leafleaf)代表某个类(代表某个类(classclass)或者类的分布()或者类的分布(class class distributiondistribution),最上面的结点是根结点。),最上面的结点是
8、根结点。q 决策树提供了一种展示类似在什么条件下会得决策树提供了一种展示类似在什么条件下会得到什么值这类规则的方法。下例是为了解决这到什么值这类规则的方法。下例是为了解决这个问题而建立的一棵决策树,从中可以看到决个问题而建立的一棵决策树,从中可以看到决策树的基本组成部分:决策结点、分支和叶结策树的基本组成部分:决策结点、分支和叶结点。点。2023-5-2317例图例图5-2 给出了一个商业上使用的决策树的例子。它表给出了一个商业上使用的决策树的例子。它表示了一个关心电子产品的用户是否会购买示了一个关心电子产品的用户是否会购买PC(buys_computer)的知识,用它可以预测某条记录(某个)
9、的知识,用它可以预测某条记录(某个人)的购买意向。人)的购买意向。Age?Credit_rating?student?yes no yes yes no 40 3040 yes no fair excellent 图图5-2 buys_computer的决策树的决策树 2023-5-2318这棵决策树对销售记录进行分类,指出一个电子产品消费者这棵决策树对销售记录进行分类,指出一个电子产品消费者是否会购买一台计算机是否会购买一台计算机“buys_computerbuys_computer”。每个内部结点。每个内部结点(方形框)代表对某个属性的一次检测。每个叶结点(椭圆(方形框)代表对某个属性的一
10、次检测。每个叶结点(椭圆框)代表一个类:框)代表一个类:buys_computers=yes buys_computers=yes 或者或者 buys_computers=nobuys_computers=no在这个例子中,样本向量为:在这个例子中,样本向量为:(age,student,credit_rating;buys_computersage,student,credit_rating;buys_computers)被决策数据的格式为被决策数据的格式为:(age,student,credit_ratingage,student,credit_rating)输入新的被决策的记录,可以预测该
11、记录隶属于哪个类。输入新的被决策的记录,可以预测该记录隶属于哪个类。2023-5-23192.2.使用决策树进行分类使用决策树进行分类 构造决策树是采用自上而下的递归构造方法。以多叉树构造决策树是采用自上而下的递归构造方法。以多叉树为例,如果一个训练数据集中的数据有几种属性值,则按为例,如果一个训练数据集中的数据有几种属性值,则按照属性的各种取值把这个训练数据集再划分为对应的几个照属性的各种取值把这个训练数据集再划分为对应的几个子集(分支),然后再依次递归处理各个子集。反之,则子集(分支),然后再依次递归处理各个子集。反之,则作为叶结点。作为叶结点。决策树构造的结果是一棵二叉或多叉树,它的输入
12、是决策树构造的结果是一棵二叉或多叉树,它的输入是一组带有类别标记的训练数据。二叉树的内部结点(非叶一组带有类别标记的训练数据。二叉树的内部结点(非叶结点)一般表示为一个逻辑判断,如形式为结点)一般表示为一个逻辑判断,如形式为(a=b)的逻辑判的逻辑判断,其中断,其中a 是属性,是属性,b是该属性的某个属性值;树的边是逻是该属性的某个属性值;树的边是逻辑判断的分支结果。多叉树(辑判断的分支结果。多叉树(ID3)的内部结点是属性,边)的内部结点是属性,边是该属性的所有取值,有几个属性值,就有几条边。树的是该属性的所有取值,有几个属性值,就有几条边。树的叶结点都是类别标记。叶结点都是类别标记。202
13、3-5-2320使用决策树进行分类分为两步:使用决策树进行分类分为两步:q 第第1 1步:利用训练集建立并精化一棵决策树,建立决策步:利用训练集建立并精化一棵决策树,建立决策树模型。这个过程实际上是一个从数据中获取知识,树模型。这个过程实际上是一个从数据中获取知识,进行机器学习的过程。进行机器学习的过程。q 第第2 2步:利用生成完毕的决策树对输入数据进行分类。步:利用生成完毕的决策树对输入数据进行分类。对输入的记录,从根结点依次测试记录的属性值,直对输入的记录,从根结点依次测试记录的属性值,直到到达某个叶结点,从而找到该记录所在的类。到到达某个叶结点,从而找到该记录所在的类。2023-5-2
14、321问题的关键是建立一棵决策树。这个过程通常分为两个阶问题的关键是建立一棵决策树。这个过程通常分为两个阶段:段:q建树(建树(Tree BuildingTree Building):决策树建树算法见下,这):决策树建树算法见下,这是一个递归的过程,最终将得到一棵树。是一个递归的过程,最终将得到一棵树。q剪枝(剪枝(Tree PruningTree Pruning):剪枝的目的是降低由于训):剪枝的目的是降低由于训练集存在噪声而产生的起伏。练集存在噪声而产生的起伏。2023-5-2322 由由Quinlan在在80年代中期提出的年代中期提出的ID3算法是分类规则算法是分类规则挖掘算法中最有影响
15、的算法。挖掘算法中最有影响的算法。ID3即决策树归纳(即决策树归纳(Induction of Decision Tree)。早期的)。早期的ID算法只能就两类算法只能就两类数据进行挖掘(如正类和反类);经过改进后,现在数据进行挖掘(如正类和反类);经过改进后,现在ID算法可以挖掘多类数据。待挖掘的数据必须是不矛盾的、算法可以挖掘多类数据。待挖掘的数据必须是不矛盾的、一致的,也就是说,对具有相同属性的数据,其对应的类一致的,也就是说,对具有相同属性的数据,其对应的类必须是唯一的。在必须是唯一的。在ID3算法挖掘后,分类规则由决策树来算法挖掘后,分类规则由决策树来表示。表示。5.4 5.4 分类规
16、则挖掘的分类规则挖掘的ID3ID3算法算法2023-5-23231.ID31.ID3算法的基本思想算法的基本思想 由训练数据集中全体属性值生成的所有决策树的集合由训练数据集中全体属性值生成的所有决策树的集合称为搜索空间,该搜索空间是针对某一特定问题而提出的称为搜索空间,该搜索空间是针对某一特定问题而提出的。系统根据某个评价函数决定搜索空间中的哪一个决策树。系统根据某个评价函数决定搜索空间中的哪一个决策树是是“最好最好”的。评价函数一般依据分类的准确度和树的大的。评价函数一般依据分类的准确度和树的大小来决定决策树的质量。如果两棵决策树都能准确地在测小来决定决策树的质量。如果两棵决策树都能准确地在
17、测试集进行分类,则选择较简单的那棵。相对而言,决策树试集进行分类,则选择较简单的那棵。相对而言,决策树越简单,则它对未知数据的预测性能越佳。寻找一棵越简单,则它对未知数据的预测性能越佳。寻找一棵“最最好好”的决策树是一个的决策树是一个NP完全问题。完全问题。NPNP完全问题是这样的问题:用确定性的算法在多项式时间完全问题是这样的问题:用确定性的算法在多项式时间内无法解决的问题。实际之中,解决这样的问题,往往是内无法解决的问题。实际之中,解决这样的问题,往往是根据用启发式算法,求出近似的解。根据用启发式算法,求出近似的解。2023-5-2324ID3ID3使用一种自顶向下的方法在部分搜索空间创建
18、决策使用一种自顶向下的方法在部分搜索空间创建决策树,同时保证找到一棵简单的决策树树,同时保证找到一棵简单的决策树可能不是最简单的。可能不是最简单的。ID3ID3算法的基本思想描述如下:算法的基本思想描述如下:step 1step 1任意选取一个属性作为决策树的根结点,然后任意选取一个属性作为决策树的根结点,然后就这个属性所有的取值创建树的分支;就这个属性所有的取值创建树的分支;step 2step 2用这棵树来对训练数据集进行分类,如果一个用这棵树来对训练数据集进行分类,如果一个叶结点的所有实例都属于同一类,则以该类为标记标识此叶叶结点的所有实例都属于同一类,则以该类为标记标识此叶结点;如果所
19、有的叶结点都有类标记,则算法终止;结点;如果所有的叶结点都有类标记,则算法终止;step 3step 3否则,选取一个从该结点到根路径中没有出现否则,选取一个从该结点到根路径中没有出现过的属性为标记标识该结点,然后就这个属性所有的取值继过的属性为标记标识该结点,然后就这个属性所有的取值继续创建树的分支;重复算法步骤续创建树的分支;重复算法步骤step 2step 2;agestudentcredit_ratingbuys_computers25YESexcellantYES35NOfairYES2023-5-2325这个算法一定可以创建一棵基于训练数据集的正确的这个算法一定可以创建一棵基于训练
20、数据集的正确的决策树,然而,这棵决策树不一定是简单的。显然,不同决策树,然而,这棵决策树不一定是简单的。显然,不同的属性选取顺序将生成不同的决策树。因此,适当地选取的属性选取顺序将生成不同的决策树。因此,适当地选取属性将生成一棵简单的决策树。属性将生成一棵简单的决策树。在在ID3算法中,采用了一种基于信息的启发式的方法算法中,采用了一种基于信息的启发式的方法来决定如何选取属性。启发式方法选取具有最高信息量的来决定如何选取属性。启发式方法选取具有最高信息量的属性,也就是说,生成最少分支决策树的那个属性。属性,也就是说,生成最少分支决策树的那个属性。2023-5-2326算法:算法:Generat
21、e_decision_treeGenerate_decision_tree由给定的训练数据产生一棵决策树由给定的训练数据产生一棵决策树输入:训练数据集输入:训练数据集samplessamples,用离散值属性表示;候选属性的集合,用离散值属性表示;候选属性的集合attribute_listattribute_list。输出:一棵决策树输出:一棵决策树方法:方法:(1 1)创建结点)创建结点N N;(2 2)if samples if samples 都在同一个类都在同一个类C thenC then(3 3)返回)返回N N作为叶结点,用类作为叶结点,用类C C标记;标记;(4 4)if att
22、ribute_list if attribute_list 为空为空 then then(5 5)返回)返回N N作为叶结点,标记作为叶结点,标记samplessamples中最普通的类;中最普通的类;/多数表决多数表决(6 6)选择)选择attribute_listattribute_list中具有最高信息增益的属性中具有最高信息增益的属性test_attributetest_attribute;/用信息增益作为属性选择度量用信息增益作为属性选择度量(7 7)标记结点)标记结点N N为为test_attributetest_attribute;(8 8)for each test_attri
23、butefor each test_attribute中的已知值中的已知值aiai /划分划分samplessamples(9 9)由结点)由结点N N生长出一个条件为生长出一个条件为test_attributetest_attributeaiai的分枝;的分枝;(1010)设)设sisi为为samplessamples中中test_attributetest_attributeaiai的样本集合;的样本集合;/一个划分一个划分(1111)if siif si为空为空 thenthen(1212)加上一个叶结点,标记为标记)加上一个叶结点,标记为标记samplessamples中最普通的类;中
24、最普通的类;/多数表决多数表决(1313)else else 加上一个由加上一个由Generate_decision_treeGenerate_decision_tree(sisi,attribute_list-test_attribute,attribute_list-test_attribute)返回的结点;)返回的结点;2023-5-23272.2.属性选择度量属性选择度量在在Generate_decision_treeGenerate_decision_tree算法的算法的Step 6Step 6,算法需选择,算法需选择a t t r i b u t e _ l i s ta t t
25、r i b u t e _ l i s t 中 具 有 最 高 信 息 增 益 的 属 性中 具 有 最 高 信 息 增 益 的 属 性test_attributetest_attribute。ID3ID3算法在树的每个结点上以信息增益(算法在树的每个结点上以信息增益(information gaininformation gain)作为度量来选择测试属性。这种度量称)作为度量来选择测试属性。这种度量称为属性选择度量或分裂的优良性度量。选择具有最高信息增为属性选择度量或分裂的优良性度量。选择具有最高信息增益(或最大熵压缩)的属性作为当前结点的测试属性。该属益(或最大熵压缩)的属性作为当前结点的
展开阅读全文