9-1 Decision Tree Hypothesis
上节课我们主要介绍了Adaptive Boosting。AdaBoost演算法通过调整每笔 资料的权重,得到不同的hypotheses,然后将不同的hypothesis乘以不同的 系数α进行线性组合。这种演算法的优点是,即使底层的演算法g不是特别好 (只要比乱选好点),经过多次迭代后算法模型会越来越好,起到了boost提 升的效果。本节课将在此基础上介绍一种新的aggregation算法:决策树 (Decision Tree)。
1、 从第7节课开始,我们就一直在介绍aggregation model。 aggregation的核心就是将许多可供选择使用的比较好的hypothesis融合起 来,利用集体的智慧组合成G,使其得到更好的机器学习预测模型。下面,我 们先来看看已经介绍过的aggregation type有哪些。 aggregation type有三种:uniform,non-uniform,conditional。它有两 种情况,一种是所有的g是已知的,即blending。对应的三种类型分别是 voting/averaging,linear和stacking。另外一种情况是所有g未知,只能通 过手上的资料重构g,即learning。其中uniform和non-uniform分别对应 的是Bagging和AdaBoost算法,而conditional对应的就是我们本节课将要 介绍的Decision Tree算法。
2、
9-2 Decision Tree Algorithm
1、 我们可以用递归形式将decision tree表示出来
9-3 Decision Tree Heuristics in C&RT
1、 现在我们已经知道了C&RT算法的基本流程:
9-4 Decision Tree in Action
最后我们来举个例子看看C&RT算法究竟是如何进行计算的。例如下图二维平 面上分布着许多正负样本,我们使用C&RT算法来对其进行决策树的分类。
在进行第四步切割之后,我们发现每个分支都已经非常纯净了,没有办法继续 往下切割。此时表明已经满足了迭代终止条件,这时候就可以回传base hypothesis,构成sub tree,然后每个sub tree再往上整合形成tree