1. 决策树
决策树(Decision Tree)又称为判定树,是运用于分类的一种树结构。其中的每个内部结点
(internal node)代表对某个属性的一次测试,每条边代表一个测试结果,叶结点(leaf)代表某
个类(class)或者类的分布(class distribution),最上面的结点是根结点。
决策树提供了一种展示在什么条件下会得到什么类别这类规则的方法。
下例是为了解决这个问题而建立的一棵决策树,从中可以看到决策树的基本组成部分:决策结点、
分支和叶结点。
下图给出了一个商业上使用的决策树的例子,他表示了一个关心电子产品的用户是否会购买电脑的
知识用它可以预测某条记录或者某个人的购买意向。
这棵决策树对销售记录进行分类,指出一个电子产品消费者是否会购买一台计算机“buys_
computer”。每个内部结点(方形框)代表对某个属性的一次检测。每个叶结点(椭圆框)代表一
个类:buys_computers=yes 或者 buys_computers=no
在这个例子中,特征向量为:
(age, student, credit rating, buys_computers)
被决策数据的格式为:
(age, student, credit rating)
输入新的被决策的记录,可以预测该记录隶属于哪个类。
总结:决策树是⼀种树形结构,本质是⼀颗由多个判断节点组成的树,其中每个内部节点表示⼀个
属性上的判断, 每个分⽀代表⼀个判断结果的输出, 最后每个叶节点代表⼀种分类结果。
2. CLS算法
CLS(Concept Learning System)算法是早期的决策树学习算法。它是许多决策树学习算法的基
础。CLS的基本思想是从一棵空决策树开始,选择某一属性(分类属性)作为测试属性。该测试属
性对应决策树中的决策结点。根据该属性的值的不同,可将训练样本分成相应的子集,如果该子集
为空,或该子集中的样本属于同一个类,则该子集为叶结点,否则该子集对应于决策树的内部结
点,即测试结点,需要选择一个新的分类属性对该子集进行划分,直到所有的子集都为空或者属于
同一类。
CLS算法存在的问题:
采用不同的测试属性及先后顺序将会产生不同的决策树。