(7.2.1)--7.2决策树.pdf
《(7.2.1)--7.2决策树.pdf》由会员分享,可在线阅读,更多相关《(7.2.1)--7.2决策树.pdf(41页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第7章章 分类分类目录目录 CONTENTS2 7.17.27.37.4分类概述分类概述决策树决策树朴素贝叶斯分类朴素贝叶斯分类惰性学习法惰性学习法7.57.6神经网络神经网络分类模型的评估分类模型的评估Chapter 7.2决策树决策树决策树基本概念:决策树基本概念:决策树算法的基础是二叉树,但不是所有的决策树都是二叉树,还有可能是多叉树,如图所示。4 7.2 决策树(1)构造决策树决策树构造过程如下。输入数据,主要包括训练集的特征和类标号。选取一个属性作为根节点的分裂属性进行分裂。对于分裂的每个分支,如果已经属于同一类就不再分了,如果不是同一类,依次选取不同的特征作为分裂属性进行分裂,同
2、时删除已经选过的分列属性。不断的重复,直到到达叶子节点,也就是决策树的最后一层,这时这个节点下的数据都是一类了。最后得到每个叶子节点对应的类标签以及到达这个叶子节点的路径。(2)决策树的预测得到由训练数据构造的决策树以后就可以进行预测了,当待预测的数据输入决策树的时候,根据分裂属性以及分裂规则进行分裂,最后即可确定所属的类别。5 7.2 决策树决策树算法过程决策树算法过程设A是分裂属性,根据训练数据,A具有n个不同值a1,a2,an,选取A作为分裂属性进行分裂时有如下三种情况。A是离散值:对A的每个值aj创建一个分支,分区Dj是D中A上取值为aj的类标号元组的子集,如图7-3(a)所示。A是连
3、续的:产生两个分支,分别对应于Asplit_point和Asplit_point,其中split_point是分裂点,数据集D被划分为两个分区,D1包含D中Asplit_point的类标号组成的子集,而D2包括其他元组,如图7-3(b)所示。A是离散值且必须产生二叉树(由属性选择度量或所使用的算法指出):结点的判定条件为“ASA?”,其中SA是A的分裂子集。根据A的值产生两个分支,左分支标记为yes,使得D1对应于D中满足判定条件的类标记元组的子集;右分支标记为no,使得D2对应于D中不满足判定条件的类标记元组的子集,如图7-3(c)所示。6 7.2 决策树Aa1a2anAAsplit_poi
4、ntAsplit_pointASA?yesno(a)(b)(c)。图7-3 属性分裂的三种情况属性分裂的三种情况属性分裂的三种情况ID3算法的构建方法和决策树的构建基本是一致的,不同的是分裂节点的特征选择的标准。该算法在分裂节点处将信息增益作为分裂准则进行特征选择,递归的构建决策树。ID3算法的步骤如下:输入数据,主要包括训练集的特征和类标号。如果所有实例都属于一个类别,则决策树是一个单结点树,否则执行。计算训练数据中每个特征的信息增益。从根节点开始选择最大信息增益的特征进行分裂。依次类推,从上向下构建决策树,每次选择具有最大信息增益的特征进行分裂,选过的特征后面就不能继续进行选择使用了。不断
5、的构建决策树,至没有特征可以选择或者分裂后的所有元组属于同一类别时候停止构建。决策树构建完成,进行预测。7 7.2 决策树ID3例例7.4 使用使用ID3算法进行分类预测算法进行分类预测表7-2和表7-3为训练数据和测试数据,其中“患病与否”是类标记,使用ID3算法构建决策树然后进行分类预测。8 7.2 决策树ID3表7-2 某疾病患病情况的训练数据ID年年龄龄吸烟史吸烟史有无家族有无家族病史病史体重范围体重范围患病与否患病与否123无无较低否225无无中否3270-5年无中否4300-5年有低是539无无较低否641无无低否743无无高否8455年以上有高是946无有高是1047无有高是11
6、62无有较高是1263无有高是13665年以上无高是14665年以上无较高是15680-5年无中否表7-3 某疾病患病情况的测试数据ID年年龄龄吸烟史吸烟史有无家有无家族病史族病史体重范围体重范围患病与否患病与否125无无较低?242无无高?3675年以上无较高?解:连续型数据的离散化。ID3算法不能直接处理连续型数据,只有通过离散化将连续型数据转化成离散型数据再进行处理。此例采用等宽分箱法对连续型特征“年龄”离散化:设定区域范围(设箱子数为3,箱子宽度为(68-23)/3=15),分箱结果为:箱1:23 25 27 30 箱2:39 41 43 45 46 47箱3:62 63 66 66
7、689 7.2 决策树ID3年龄23 25 27 30 39 41 43 45 46 47 62 63 66 66 68离散化23 25 27 30 39 41 43 45 46 4762 63 66 66 68青年老年中年图7-4 对特征“年龄”分箱离散后训练数据集如表7-4所示。10 7.2 决策树ID3表7-4 某疾病患病情况的训练数据(离散化后)ID年龄年龄吸烟史吸烟史有无家族病史有无家族病史体重范围体重范围患病与否患病与否1青年无无较低否2青年无无中否3青年0-5年无中否4青年0-5年有低是5中年无无较低否6中年无无低否7中年无无高否8中年5年以上有高是9中年无有高是10中年无有高是
8、11老年无有较高是12老年无有高是13老年5年以上无高是14老年5年以上无较高是15老年0-5年无中否根据训练数据构造ID3算法的决策树,其中Z代表训练集,A、B、C、D分别代表特征“年龄”、“吸烟史”、“有无家族病史”、“体重范围”,按照每个特征计算其分裂的信息增益。?X Gy?=815log?815715log?715=0.997?X Gy?|?=415?34log?3414log?14?+615?36log?3636log?36?+515?45log?4515log?15?=0.857?X Gy?|?=915?59log?5949log?49?+315?23log?2313log?13?
9、+315?33log?33?=0.77811 7.2 决策树ID3根据训练数据构造ID3算法的决策树,其中Z代表训练集,A、B、C、D分别代表特征“年龄”、“吸烟史”、“有无家族病史”、“体重范围”,按照每个特征计算其分裂的信息增益。?X Gy?|?=915?79log?7929log?29?+615?66log?66?=0.459?X Gy?|?=215?22log?22?+215?12log?1212log?12?+315?33log?33?+615?56log?5616log?16?+215?22log?22?=0.39312 7.2 决策树ID3根据训练数据构造ID3算法的决策树,其中
10、Z代表训练集,A、B、C、D分别代表特征“年龄”、“吸烟史”、“有无家族病史”、“体重范围”,按照每个特征计算其分裂的信息增益。?|?=?X Gy?X Gy?|?=0.997 0.857=0.140?|?=?X Gy?X Gy?|?=0.997 0.778=0.219?|?=?X Gy?X Gy?|?=0.997 0.459=0.538?|?=?X Gy?X Gy?|?=0.997 0.393=0.604选择信息增益最大特征“体重范围”作为根结点的分裂属性,将训练集Z划分为5个子集?、?、?、?和?,对应的“体重范围”取值分别为“低”、“较低”、“中”、“较高”、“高”。由于?、?和?只有一类
11、数据,所以它们各自成为一个叶结点,三个结点的类标签分别为“否”、“否”、“是”。13 7.2 决策树ID314 7.2 决策树ID3ID年龄年龄吸烟史吸烟史有无家族病史有无家族病史体重范围体重范围患病与否患病与否4青年0-5年有低是6中年无无低否表 Z1训练数据集ID年龄年龄吸烟史吸烟史有无家族病史有无家族病史体重范围体重范围患病与否患病与否2青年无无中否3青年0-5年无中否15老年0-5年无中否表 Z3训练数据集ID年龄年龄吸烟史吸烟史有无家族病史有无家族病史体重范围体重范围患病与否患病与否1青年无无较低否5中年无无较低否表 Z2训练数据集ID年龄年龄吸烟史吸烟史有无家族病史有无家族病史体重
12、范围体重范围患病与否患病与否11老年无有较高是14老年5年以上无较高是ID年龄年龄吸烟史吸烟史有无家族病史有无家族病史体重范围体重范围患病与否患病与否7中年无无高否8中年5年以上有高是9中年无有高是10中年无有高是12老年无有高是13老年5年以上无高是表 Z5训练数据集表 Z4训练数据集对于?继续进行分裂,选择剩余特征中信息增益最大的作为分裂属性。?X Gy?=12log?1212log?12=1?X Gy?|?=12?11log?11?+12?11log?11?=0?X Gy?|?=12?11log?11?+12?11log?11?=0?X Gy?|?=12?11log?11?+12?11l
13、og?11?=015 7.2 决策树ID3对于?继续进行分裂,选择剩余特征中信息增益最大的作为分裂属性。?|?=?X Gy?X Gy?|?=1 0=1?|?=?X Gy?X Gy?|?=1 0=1?|?=?X Gy?X Gy?|?=1 0=1选择信息增益最大特征作为?结点的分裂属性,由于三个属性的信息增益相同,随机挑选一个作为分裂属性,此处选取“有无家族病史”作为分裂属性,它将数据集?分成2个子集?和?,对应的“有无家族病史”的取值分别为“有”和“无”,在这2个子集中的数据都各自属于同一类,于是就不需要再继续分裂。16 7.2 决策树ID317 7.2 决策树ID3ID年龄年龄吸烟史吸烟史有无
14、家族病史有无家族病史体重范围体重范围患病与否患病与否4青年0-5年有低是ID年龄年龄吸烟史吸烟史有无家族病史有无家族病史体重范围体重范围患病与否患病与否6中年无无低否表 Z21训练数据集表 Z22训练数据集对于?继续进行分裂,选择剩余特征中信息增益最大的作为分裂属性。?X Gy?=16log?1656log?56=0.650?X Gy?|?=46?14log?1434log?34?+26?22log?22?=0.541?X Gy?|?=46?34log?3414log?14?+26?22log?22?=0.541?X Gy?|?=46?44log?44?+26?12log?1212log?12
15、?=0.33318 7.2 决策树ID3对于?继续进行分裂,选择剩余特征中信息增益最大的作为分裂属性。?|?=?X Gy?X Gy?|?=0.650 0.541=0.109?|?=?X Gy?X Gy?|?=0.650 0.541=0.109?|?=?X Gy?X Gy?|?=0.650 0.333=0.317选择信息增益最大特征“有无家族病史”作为?结点的分裂属性,将数据集?分成2个子集?和?,对应的“有无家族病史”的取值分别为“有”和“无”,“有”对应的?中的数据都属于同一类,不需要再继续分裂,“无”对应的?中的数据属于不同类,需要对其进行分裂。19 7.2 决策树ID320 7.2 决策
16、树ID3ID年龄年龄吸烟史吸烟史有无家族病史有无家族病史体重范围体重范围患病与否患病与否8中年5年以上有高是9中年无有高是10中年无有高是12老年无有高是ID年龄年龄吸烟史吸烟史有无家族病史有无家族病史体重范围体重范围患病与否患病与否7中年无无高否13老年5年以上无高是表 Z52训练数据集表 Z51训练数据集对于?继续进行分裂,选择剩余特征中信息增益最大的作为分裂属性。?X Gy?=12log?1212log?12=1?X Gy?|?=12?11log?11?+12?11log?11?=0?X Gy?|?=12?11log?11?+12?11log?11?=0?|?=?X Gy?X Gy?|?
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 7.2 决策树
限制150内