集体智慧编程--决策树

决策树是一种非常简单直观的对观测数据进行分类的方法。
构造决策树的算法有很多种,CART/ID3等等算法我们都可以选择,此处就不再一一赘述。本章的重点在于之前完全没有接触过的算法部分:决策树的剪枝与处理数值型结果。

决策树的剪纸

在使用上述算法训练决策树会带来一个很大的问题,那就是决策树可能会变得过度拟合,过于针对训练数据而创建出树的分支会导致使用测试集时结果并不如意。
针对这个问题,我们采用了一种方法来消除过多的分支:先构造好如前所述的整棵树,然后再尝试消除多余的节点,这个过程就是剪枝。剪枝时,对具有相同父节点的一组节点进行检查,判断如果将其合并,熵的增加量是否会小于某个指定的阈值。如果确实如此,则这些叶节点会被合并为一个单一的节点,合并后的新节点包含了所有可能的结果值。

处理数值型结果

处理数值型结果时若把数字看作绝对的离散类型,这样会使决策树分支非常多,解决方法暂时没有很好的收获,可以日后补充。

发布了18 篇原创文章 · 获赞 1 · 访问量 989

猜你喜欢

转载自blog.csdn.net/qq_34328980/article/details/94479149