




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、项目6 决策树和决策规则6.1 实验目的(1)掌握使用决策树进行分类决策的操作方法,并学会对结果进行解释、提取合理的分类规则;(2)理解决策树模型相对于其他预测模型(如神经网络)的优势所在,如它的决策模型可以为自然语言构成的规则或为逻辑陈述;(3)了解较为流行的决策树模型的不同特征,如CHAID和CART;(4)了解决策树模型中的替代规则对于处理缺失值的优势,掌握操作方法;(5)学会使用决策树模型进行变量选择。6.2 实验原理数据库内容丰富,蕴藏大量信息,可以用来作出智能的决策。分类和预测是数据分析的两种形式,可以用来提取描述重要数据类的模型或预测未来的数据趋势。分类是预测分类标号,而预测建立
2、连续值函数模型。在本章中,我们将学习利用决策树进行数据分类的技术。决策树是一个类似于流程图的树结构,其中每个内部节点表示在一个属性上的测试,每个分枝代表一个测试输出,而每个树叶节点代表类或类分布。树的最顶层节点是根节点。有些决策树算法只产生二叉树,而另一些决策树算法可以产生非二叉树。对于一个需要进行分类的数据,我们可以利用该数据的各个属性的值,在决策树的包括根节点在内的节点上对相应的数据的属性进行测试,这样就形成了一条由顶到底的或从根节点到某个叶子节点的路径。该数据所到达的叶子节点给出了该数据所应归属的类。决策树容易转换成为分类规则。我们可以根据需要分类的数据在决策树中所经过的所有可能的路径得
3、到一组分类规则,并利用分类规则对数据进行分类。决策树的构造不需要任何领域知识或参数设置,因此适合于探测式知识发现。决策树可以处理高维数据。获取的知识用树的形式表示是直观的,并且容易理解。决策树建立时,许多分枝可能反映的是训练数据中的噪声或离群点。树剪枝试图识别并剪去这种分枝,以提高对未知数据分类的准确性。6.2.1 决策树归纳目前比较有名的决策树算法大概有上百种,其中,最有影响的当属ID3、C4.5、C5.0,以及CART和CHAID。ID3(Iterative Dichotomiser)是在20世纪70年代和80年代初期,机器学习研究者J. Ross Quinlan开发的决策树算法,称作“迭
4、代的二分器”。由于ID3仅能处理离散变量,因此,后来Quinlan在其基础上提出了C4.5,分割标准用的是基于信息论的“熵”(Entropy),成为了新的监督学习算法的性能比较基准。不过,C4.5只能进行L型分叉、后向修剪。另外,C4.5有一个商品化的后继,称作C5.0。ID3、C4.5都采用贪心(即非回溯的)方法,其中决策树以自顶向下递归的分治方式构造。大多数决策树归纳算法都沿用这种自顶向下的方法,从训练集和它们的相关联的类标号开始构造决策树。随着树的构建,训练集递归地划分成较小的子集。CART(Classification and Regression Tree)也称分类回归树,是L. B
5、reiman, J. Friedman, R.Olshen和C. Stone 等几位统计学家于1984年提出的,CART只能进行二部分叉、后向修剪,分割标准用的是基尼系数(Gini Index)。CHAID(Chi-squared Automatic Interaction Detection)也称卡方自动交互检测法,主要特征是多向分叉,前向修剪,采用卡方检测法,CHAID只能处理类别型的输入变量,因此连续型的输入变量首先要进行离散处理。总之,CHAID、CART和C4.5应该算是决策树算法中最有名、商业上运用最成功的算法了。6.2.2 属性选择度量 属性选择度量是一种选择分裂准则,将给定的类
6、标记的训练元组的数据划分“最好”地分成个体类的启发式方法。如果要根据分裂准则的输出将数据划分分成较小的划分,理想地,每个划分是纯的(即落在给定划分的所有元组都属于相同的类)。从概念上讲,“最好”的分裂准则是导致最接近这种情况的划分。属性选择度量又称分裂规则,因为它们决定给定节点上的元组如何分裂。属性选择度量提供了每个属性描述给定训练元组的秩评定。具有最好度量得分的属性被选作给定元组的分裂属性。如果分裂属性是连续值得或者限于构造二叉树,则一个分裂点或一个分裂子集也必须作为分裂准则的一部分确定。为数据划分创建的树节点用分裂准则标记,从准则的每个输出生长出分枝,并且相应地划分元组。流行的属性选择度量
7、如信息增益、增益率和Gini指标。这些度量并非无偏的。信息增益偏向于多值属性。尽管增益率调整了这种偏倚,但是它倾向于不平衡的分裂,其中一个划分比其他划分小得多。Gini指标偏向于多值属性,当分类的数量很大时会有困难,并且倾向于导致相等大小的划分和纯度。尽管是有偏的,但这些度量在实践中产生相当好的结果。ID3使用信息增益作为属性选择度量。该度量基于Claude Shannon在研究消息的值或“信息内容”的信息论方面的先驱工作。选择具有最高信息增益的属性作为节点的分裂属性。该属性使结果划分中的元组分类所需的信息量最小,并反映这些划分中的最小随机性或“不纯性”。这种方法使对给定元组分类所需的期望测试
8、数目最小,并确保找到一棵简单的(但不必是最简单的)树。C4.5使用称作增益率的信息增益扩充,试图克服信息增益的偏倚。它使用“分裂信息”值将信息增益规范化,选择具有最大增益率的属性作为分裂属性。还有很多其他的属性选择度量,如C-SEP和G统计量等。流行的CHAID算法则使用一种基于独立统计检验的属性选择度量。6.2.3 树剪枝在决策树创建时,由于数据中的噪声和离群点,许多分枝反映的是训练数据中的异常。剪枝方法处理这种过分拟合数据的问题。通常使利用统计度量剪去最不可靠的分枝。剪枝后的树更小、复杂度更低,在对独立检验数据分类时比未剪枝的树更快、更好。有两种常用的剪枝方法:先剪枝和后剪枝。在先剪枝方法
9、中,通过提前停止树的构造而对树“剪枝”。一旦停止,该节点成为树叶。该树叶可能有子集元组中最频繁的类或这些元组的概率分布。在构造树时,可以使用如统计显著性、信息增益、Gini指标等度量评估分裂的优劣。如果划分一个节点的元组导致低于预定义阀值的分裂,则给定子集的进一步划分停止。后剪枝方法是由“完全生长”的树剪去子树。通过删除节点的分枝并用树叶替换它而剪掉给定节点的子树。树叶用被替换的子树中最频繁的类标记。作为选择,对于组合方法,先剪枝和后剪枝可以交叉使用。后剪枝所需的计算比先剪枝多,但是通常产生更可靠的树。CART使用的代价复杂度剪枝算法是一种后剪枝方法。C4.5使用悲观剪枝方法,类似于代价复杂度
10、方法,用错误率评估对子树剪枝作出决定。6.3 实验数据本次实验将重点学习如何利用决策树进行分类决策的操作方法,并根据结果提取出合理的决策规则。本次实验选用的数据集为“CoIL 2000 Challenge”的竞赛数据,可在UCI机器学习库中找到。它是一个保险公司的交叉销售方面的数据,数据来源于/databases/tic/tic.data.html。该集合中包含了调查对象的家庭成员、财产、收入以及参加保险等方面的情况。该数据已给出,其中ticdata2000.txt为训练和验证数据集,ticeval2000.txt为预测数据集(与ticdata2000
11、.txt格式相同,除了不包含目标变量,其目标变量另见tictgts2000.txt),数据各变量说明见表6.1,具体可参见文件TicDataDescr.txt,包括了所有对目标变量(CARAVAN Number of mobile home policies)具有影响的指标,主要为已经购买保险的数量、收入、拥有房子数量等,总共有为85个,前43个为社会人口统计数据,其他为产品相关数据。本实验的目的是通过对已有客户的分析找到潜在的对“caravan insurance”新业务感兴趣的客户,并能找到可能的决策规则,尽可能找出一般规律。表6.1 原始数据变量汇总表变量名称ROLELEVEL变量含义M
12、OSTYPE inputIntegerCustomer SubtypeMAANTHUI inputOrdinalNumber of housesMGEMOMV inputOrdinalAvg size householdMGEMLEEFinputOrdinalAvg ageMOSHOOFD inputOrdinalCustomer main typeMGODRK inputOrdinalRoman catholicMGODPR inputOrdinalProtestantMGODOV inputOrdinalOther religionMGODGEinputOrdinalNo religion
13、MRELGEinputIntegerMarriedMRELSA inputOrdinalLiving togetherMRELOV inputIntegerOther relationMFALLEEN inputIntegerSinglesMFGEKIND inputIntegerHousehold without childrenMFWEKIND inputIntegerHousehold with childrenMOPLHOOGinputIntegerHigh level educationMOPLMIDD inputIntegerMedium level educationMOPLLA
14、AG inputIntegerLower level educationMBERHOOGinputIntegerHigh statusMBERZELF inputOrdinalEntrepreneurMBERBOERinputIntegerFarmerMBERMIDD inputIntegerMiddle managementMBERARBG inputIntegerSkilled labourersMBERARBO inputIntegerUnskilled labourersMSKA inputOrdinalSocial class AMSKB1inputOrdinalSocial cla
15、ss B1MSKB2 inputOrdinalSocial class B2MSKCinputOrdinalSocial class CMSKDinputOrdinalSocial class DMHHUUR inputIntegerRented houseMHKOOP inputIntegerHome ownersMAUT1 inputOrdinal1 carMAUT2 inputOrdinal2 carsMAUT0 inputOrdinalNo carMZFONDS inputIntegerNational Health ServiceMZPART inputIntegerPrivate
16、health insuranceMINKM30 inputIntegerIncome < 30.000MINK3045 inputIntegerIncome 30-45.000MINK4575 inputintegerIncome 45-75.000MINK7512 inputintegerIncome 75-122.000MINK123M inputintegerIncome >123.000MINKGEM inputintegerAverage incomeMKOOPKLA inputOrdinalPurchasing power classPWAPARTinputOrdina
17、lContribution private third party insurancePWABEDRinputOrdinalContribution third party insurance (firms) .PWALAND inputOrdinalContribution third party insurane (agriculture)PPERSAUT inputOrdinalContribution car policiesPBESAUT inputOrdinalContribution delivery van policiesPMOTSCO inputOrdinalContrib
18、ution motorcycle/scooter policiesPVRAAUT inputUnaryContribution lorry policiesPAANHANG inputOrdinalContribution trailer policiesPTRACTOR inputOrdinalContribution tractor policiesPWERKT inputOrdinalContribution agricultural machines policiesPBROM inputOrdinalContribution moped policiesPLEVEN inputOrd
19、inalContribution life insurancesPPERSONG inputOrdinalContribution private accident insurance policiesPGEZONG inputOrdinalContribution family accidents insurance policiesPWAOREG inputOrdinalContribution disability insurance policiesPBRANDinputOrdinalContribution fire policiesPZEILPL inputOrdinalContr
20、ibution surfboard policiesPPLEZIER inputBinaryContribution boat policiesPFIETS inputOrdinalContribution bicycle policiesPINBOED inputBinaryContribution property insurance policiesPBYSTAND inputOrdinalContribution social security insurance policiesAWAPART inputOrdinalNumber of private third party ins
21、uranceAWABEDR inputOrdinalNumber of third party insurance (firms)AWALAND inputBinaryNumber of third party insurane (agriculture)APERSAUTinputBinaryNumber of car policiesABESAUT inputOrdinalNumber of delivery van policiesAMOTSCO inputOrdinalNumber of motorcycle/scooter policiesAVRAAUT inputUnaryNumber of lorry policiesAAANHANG inputOrdinalNumber of trailer policiesATRACTORinputOrdi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论