模式识别期末论文9精编.doc

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
深圳大学研究生课程:模式识别理论与方法 课程作业实验报告 实验名称:Classification and Regression Tree 实验编号:Proj08-01 姓 名:萧嘉慰 学 号:2110130216 规定提交日期:2012年7月14 日 实际提交日期:2012年7月13日 摘 要:本实验编程实现了分类回归树算法,采用非剪枝完全树分类和进行进行非二叉分支。 实验内容: 写一个生成二叉分类树的通用程序,并使用课本 359页的表中的数据来训练该树,使用熵 不纯度进行分支。 (a) 采用非剪枝完全树分类下列模式: {A,E,I,L,N}, {D,E,J,K,N}, {B,F,J,K,M}, {C,D,J,L,N}。 (b) 对叶节点进行剪枝,使剪枝后树的不纯度的增加尽可能小。 (c) 修改程序,使之可以进行非二叉分支,以生成多叉树。其中每个节点的分叉数可根据该节点 在训练时的情况进行自动确定。 用增益比不纯度重新训练生成一个新树, 并用该树重新对(a)进行分类。 技术论述: 分类回归树算法其采用基于最小距离的基尼指数估计函数, 这是因为基尼指数可以单独考虑子数据集中类属性的分布情况, 用来决定由该子数据集生成的决策树的拓展形状。CART创建简单二叉树结构对新事例进行分类, 这样可以有效地处理缺失数据, 尤其对于分类与预测时更好。并且 CART方法中有贝叶斯分类的特征, 使用者可以提供主观的分类先验概率作为选择分类的权重, 则 CART在获得最终选择树前使用交叉检验来评估候选树的误分类率, 这对分析复杂样本数据非常有用。CART处理离散变量与连续变量同样容易, 这是由于它使用了或形状的几乎不依靠无关变量的分支。而且, 被CART 考虑到的分支在任何单调转换下是不变的,如对一个或更多的特征取对数、平方根等都是不变的。 实验结果与讨论: Tree = Label: 1 Value: 66 Num: 20 Right: [1x1 struct] Left: [1x1 struct] (a)W1 = 1 W2 = 3 W3 = 1 W4 = 3 (b)W1 = 1 W2 = 3 W3 = 1 W4 = 3 (c) 做不出来,程序出不了结果。 附录:实验程序 (1)子函数 function Tree=CART_MakeBinaryTree(TrainingSamples, ClassificationProperties, Region) % 基于 熵不纯度 递归地实现 非剪枝完全二叉树 %输入参数:目标数据(训练样本)TrainingSamples n*d、 (特征向量依次放置) % 对应的类别属性 ClassificationProperties n*1、(取值范围 1--C) % 特征向量维度顺序下上限 Region d*2 (特征值取离散的自然数区间,左小右大) %输出参数:一个基本树形节点 Tree % 基本树形节点结构 %一:标签(记录当前节点判定所用的维度,表叶子时为空); %二:阈值(记录当前所用维度判定之阈值,叶子节点时表类别); %三:左枝(小于等于阈值的待分目标 归于此,表叶子时为空) %四:右枝(大于阈值的 归于此,表叶子时为空) [n,Dim]=size(TrainingSamples); [t,m]=size(Region); if Dim ~= t || m ~= 2 disp(参数错误,请检查); return; end %检查类别属性是否单纯,如果只有一个属性,那么则是叶子,否则需要继续分 if ( length(unique(ClassificationProperties)) == 1) Tree.Right = []; Tree.Left = []; Tree.Label = []; Tree.Value = ClassificationProperties(1); Tree.Num =n; return; end %如果两个样本 为两类 直接设置为左右叶子 差异最大维度做为查询项目 %单独处理此类情况,做为一种优化方法应对 后面提到的缺陷 if length(ClassificationProperties) == 2 [m,p]=max(abs(Tr

文档评论(0)

a336661148 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档