一、决策树学习
1.根节点和叶节点
从根结点到每个叶结点的路路径对应了一个判定测试序列列,其基本流程遵循简单且直观的 “分而治之” 策略。由此,局部区域通过少数几步递归分裂确定,每个决策节点实现一个具有离散输出的属性测试函数,标记分支。假设给定训练数据集输入:
在每个结点应用一个测试,并根据测试的输出确定一个分支。这一过程从根结点开始,并递归地重复,
直至到达一个叶结点,这时,该 leaf的值形成输出。
一旦构造了了决策树,对检验记录进行分类就相当于容易了,因为决策树本身生成的就是一系列规则,因此决策树是生成模型的算法。从树的根结点开始,将测试条件用于检验记录,根据测试结果选择适当的分支。沿着该分支或者到达另一个内部结点,使用新的测试条件,或者到达一个叶结点。叶结点的类称号就被赋值给该检验记录。
2. 学习算法
决策树学习本质上是从训练数据集中归纳出一组分类规则,也称为 “树归纳”。对于给定的训练数据集,
存在许多对它无错编码的树。而为了简单起见,我们感兴趣的是从中选出 “最小” 的树,这里的树的大小用树的结点数和决策节点的复杂性度量量。从另一个⻆角度看,决策树学习是由训练数据集估计条件概率模型。基于特征空间划分的类的条件概率模型有⽆无数个,我们选择的模型应该是不仅能对训练数据有很好的拟合,而且对未知数据也有很好的预测。
但是,因为从所有可能的决策树中选取最优决策树是NP完全问题,所以我们必须使用基于启发式的局部
搜索过程,在合理理的时间内得到合理理的树。
树的学习算法是 “贪心算法”,从包含全部训练数据的根开始,每一步都选择最佳划分。依赖于所选择的
属性是数值属性还是离散属性,每次将数据划分为两个或 n个子集,然后使用对应的子集递归地进行划
分,知道所有训练数据子集被基本正确分类,或者没有合适的特征为止,此