资源描述:
《C45决策树工具》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、C45决策树工具使用说明简介:本文档给出了有关C45决策树方法相关的一些资料,面向对象是研究人员。本文档的内容安排如下:C45决策树方法的使用场合描述;C45决策树如何训练,即C45_VC.exe使用说明;C45决策树训练结果如何在代码小使用,即CAskC45编程说明;C45的外围工具简介;C45的原理说明;联系方式。适合用C45解决的问题C45是一种决策树的算法,可以理解为数据挖掘算法的一种。从大规模的数据中挖掘规律,这里的大规模数据一般是用属性來描述,属性本身可以是连续量,如语音数据的基频值;也可以使离散量,如句子中词的个数;还可以使枚举量,如26个词类,声韵母
2、类型等。屈性分为输入属性,和结论属性(或称决策属性)。结论属性就是我们希望从输入属性中得到的结果,如希望从输入的词性序列小预测某个位置是不是L3边界,或者根据前后的音调、基频等预测当前的音节应该是哪一类的韵律曲线。结论属性必须是枚举量(当然包括布尔量)。而规律则以决策树的形式来表示,英形式如,在C45_VC.txt或者Screen.txt+可以看到类似的输出结果:DecisionTree:c_lv<=47.6:如果c_lv属性值小于等于47.6的话
3、n_lv<=45.8:NeiWen(76.0/2.0)如果n_lv值小于等于45.8,结论属性应该是NewiWen。
4、
5、n_lv>45.8:NeiBuWen(44.0)如果n_lv值大于45.8,结论属性应该是NewiBuWenoe_lv>47.6:如果e_lv属性值大于47.6的话
6、n_lv<=45.8:WaiWen(147.0)...
7、n」v>45.8:WaiBuWcn(32.0)...注:n_lv<=45.8:NeiWen(76.0/2.0)中的76.0表示到这个决策分支的有76个例子,其中2.0是错误的例子数目。这里有可能出现小数,这是决策树根据概率计算过程中可能将一个例子划分到多个子分支,每个分支算是(0.几)个事例到此。这里同时给出关于使用C45决策树方法的一些注意事项:
8、1)C45是狂揉的,只要你给它输入属性和输出属性,即使输出和输入之间没有任何关系,决策树一样可以给出很不错的决策正确率,尤其是集内测试正确率。2)要避免上述问题,两个方面重要:(1)集外测试,集内测试不说明问题。集外测试也要有一定的数目,这样才可以得到比较可信的测试结果。(2)输入数据量,理论上训练例子的个数应该是所有属性空间大小的10倍。属性空间大小计算为:每个属性可能的取值的种类数的连乘积。比如输入属性是3个词类,而每个词类可能有32种可能,则理论上需要的训练例子数为:32x32x32=32768个。当然考虑到有些词类组合不可能出现,所需训练例子数可以筹减。3)
9、理论上,C45能自动排除那些不相关的屈性,但是在训练数据稀疏的情况下,决策树一样会利用那些不相关的属性,得到一些结论。所以不能一咕脑儿把所有的属性扔给决策树,还是需要对输入属性与输出属性之间有没有关联进行仔细的分析。4)决策树的结论属性不宜太多。超过20就是很不好了,因为决策树认为结论属性完全是枚举类型的,结论属性之间的各个可能的収值没有任何关系,如果问题中结论属性有一定的连续意义,比如预测一个韵律环境下音节应该的长度,那么则决策树的效果就很有可能比其他的类似于拟合的算法差了。5)决策树在分析各个属性吋,是完全独立的。比如如果其实数据中只需要一条规律:“属性A的值比
10、属性B的值大的时候,输出为1,否则为0”的话,决策树无法给出这样的规律,因为它只会尝试属性A和某个常数的比较,属性B和某个常数的比较,而不会比较属性A和属性B的差值。如果觉得数据屮可能存在这样的规律的话,可以将属性A和属性B的差值作为一个新的属性(记为C)输入决策树训练算法,那么决策树有可能得出这样一条简洁的规律:如果属性C大于0,那么输出为1,否则为0。C45_VC.exe使用说明:3.1数据准备工作:而对于使用者来说,最重要的是要知道C4.5的输入数据格式,下面就详细介绍一下:现在假设我们所要研究的项目的名称是yu,则对于C4.5训练而言就至少需要两个文件yu.
11、nam和yu.dat,其中yu.nam是输入数据的格式文件,它定义了输入数据文件的格式,而yu.dat则是严格按照这个格式所生成的输入数据文件。在C45发布版本中有这个例子,在DemoTest目录屮。下面就这两个文件举一个例子,并同时对其屮的符号的意义作一下解释:下面是格式文件yu.namNeiBuWen,NeiWen,WaiBuWen,WaiWen.xingbei:nan,nv.e_lv:continuous.n」v:ignore.p_Iv:discrete6.I_lv:continuous.在文件yu.nam中,第一行是输入数据的决策类,必须是枚举量,也就