决策树

决策树_决策树模型.png

在《统计学习方法》书中对决策树的模型有一个规范的回答。最顶端的是根节点,对样本所有的预测都是从根节点开始依次判断。每个圆形的都是一个用于判断的节点,每一个节点只对属性的其中一个特征进行判断,比如说上文的苹果,圆形节点要么判断颜色,要么判断硬度等等,总之只判断其中的一个特征。在判断节点中只保存告诉你该往哪走的信息,在判断节点中并没有有关结论的信息。矩形节点就是标记节点,在判断中走到矩形就可以认为预测过程结束,将矩形中的标签作为预测结果返回。

那么在训练过程中构建这棵决策树的时候需要怎么做呢?就是一个一个特征属性依次比较过去然后建立分支吗?不是的,我们需要挑选最有代表性的特征。比如说苹果的形状,我们把形状作为一个特征,建立球形和立方体形两个分支,所有样本都会进入到球形这个分支里去,这样的判断并没有进行有效的划分,属于没有意义。除此之外很特别的特征,比如说某特征判断10个苹果,9个会进入A分支,1个进入B分支。另外有一个特征使得5个进入A分支,5个进入B分支。显然第二个特征选取得好,是一个很明显地将所有样本划分的一个特征。

在构建决策树的过程中,最重要的就是怎么选取合适的特征来构建它。如果选取不合理,可能会造成产生的决策树过于庞大,提升程序的复杂度,此外也会造成决策树的泛化性能降低。生成决策树的算法通常有ID3、C4.5、CART。

标签: 决策树

添加新评论