机器学习方法篇(10)------随机森林

来源:互联网 发布:淘宝怎么帮朋友代付款 编辑:程序博客网 时间:2024/05/16 11:05

● 每周一言

因年龄增长所带来的理解力,与努力无关。

导语

前面介绍了决策树算法应用之一的GBDT模型,本节讲讲决策树另一个比较火的应用模型,随机森林。与GBDT模型相比,同样属于集成学习,随机森林模型的原理更为直观简洁,性能也同样十分强悍。那么,随机森林算法模型的原理与思想是怎样的?

随机森林

所谓多树成林,Random forests(或者Random decision forests)随机森林,顾名思义由多棵决策树构成,这些决策树都是CART(Classification And Regression Tree)分类或回归树。

fig1

随机森林的算法核心思想有二:采样完全分裂采样又分为行采样和列采样,这里的行与列对应的就是样本与特征。完全分裂指的是决策树每一次分裂扩展节点时,能分裂必须分裂,分裂依据可以是信息增益或者增益率(具体可参见 机器学习方法篇(3)——决策树入门)。

对于行采样,模型从M条数据集中随机采样m条数据,一般情况下m取M的平方根大小,分别作为每一棵决策树的训练集。行采样保证了每棵决策树使用的训练集各不相同,这在一定程度上抑制了over-fitting问题。

fig2

对于列采样,每一棵决策树都从M个特征中随机挑选m个特征作为节点分裂特征来计算,一般情况下m也取M的平方根大小。列采样具体又分为两种方式,一种是全局列采样,即同一棵树的建树过程均采用同一批采样特征;另一种是局部列采样,即每一次节点分裂的时候均单独随机挑选m个特征进行扩展。列采样进一步保证了随机森林不会出现over-fitting问题。
fig3

随机森林的最终输出由每一棵决策树的结果共同决定。如果是分类树则通过投票产生最终分类,如果是回归树则取所有结果的平均值。敬请期待下节内容。

结语

感谢各位的耐心阅读,后续文章于每周日奉上,敬请期待。欢迎大家关注小斗公众号 对半独白

face

原创粉丝点击