Answers:
CART和决策树(例如算法)通过对训练集进行递归划分来工作,以获得对给定目标类别尽可能纯的子集。树的每个节点都与特定的记录集相关联,该记录集T由对功能的特定测试进行了拆分。例如,在连续的属性分裂甲可由试验来诱导甲≤ X。然后将记录集T分为两个子集,这两个子集通向树的左分支和右分支。
和
类似地,分类特征可以用于根据其值来引起分裂。例如,如果乙= { b 1,... ,b ķ }每个分支我可以由测试来诱导乙= b 我。
用于推导决策树的递归算法的划分步骤考虑了每个特征的所有可能划分,并根据选择的质量度量(划分标准)尝试找到最佳划分。如果您的数据集是根据以下方案得出的
其中是属性,C是目标类,将生成所有候选拆分并通过拆分标准进行评估。如上所述,生成了连续属性和分类属性的拆分。最佳分割的选择通常通过杂质测量来进行。父节点的杂质必须通过拆分来减少。令(E 1,E 2,… ,E k)是在记录集E上引起的分裂,利用杂质测度I (⋅ )的分裂准则为:
标准的杂质度量是香农熵或基尼系数。更具体地说,CART如下使用为集合定义的基尼索引。令p j为类c的 E中记录的分数j p j = | { 吨∈ Ê :吨[ C ^ ] = c ^ Ĵ } | 那么 Gini(E)=1- Q ∑ j=1p 2 j 其中Q是类数。
当所有记录都属于同一类时,导致零杂质。
作为一个例子,让我们说,我们有一个二进制类集记录的其中类分布为(1 / 2 ,1 / 2 ) -以下是一个很好的分裂ŧ
第一个分割将被选作最佳分割,然后算法以递归方式进行。
使用决策树对新实例进行分类很容易,实际上只要遵循从根节点到叶子的路径就足够了。记录按到达的叶子的多数类别进行分类。
假设我们要对该图上的正方形进行分类
可能的诱导决策树可能如下:
很显然,记录方将通过决策树分类为圆鉴于记录落在标有圆叶。
在这个玩具示例中,训练集的准确性为100%,因为树没有错误地分类记录。在上面训练集的图形表示中,我们可以看到树用于对新实例进行分类的边界(灰色虚线)。
关于决策树的文献很多,我只想写下一个粗略的介绍。另一个著名的实现是C4.5。
我不是CART的专家,但是您可以尝试免费在线获得“统计学习的要素”这本书(有关CART的信息,请参阅第9章)。我相信这本书是由CART算法的创建者之一(Friedman)写的。