前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >集成学习之随机森林通俗理解

集成学习之随机森林通俗理解

作者头像
企鹅号小编
发布2018-01-16 09:22:38
8240
发布2018-01-16 09:22:38
举报
文章被收录于专栏:人工智能人工智能

scikit-learn官方general example第5个例子中涉及到了随机森林(RandomForest),随机森林是集成学习的一种,因此本文先通俗理解一下随机森林。

1.集成学习

集成学习(ensemblelearning,简称EL),不是单独的机器学习算法,是通过构建并结合多个机器学习器来完成学习任务。高端点的说叫“博彩众长”,庸俗的说叫“三个臭皮匠,顶个诸葛亮”。一般是先生存一组个体学习器,然后采用某种策略将他们结合起来。个体学习器可以由不同的学习算法生成,之间也可以按照不同的规律生成。原理如下图所示:

根据个体学习器的生成方式,集成学习方法大致可以分为两大类。一是个体学习器之间存在着墙依赖关系,必须串行生成的序列化方法,此类代表是Boosting;另一类是个体学习器之间没有强依赖关系,可同时并行生成,此类代表为Bagging和随机森林。

2.bagging以及随机森林

随机森林是bagging的升级版,bagging个体学习器不做修改,对训练数据集随机取样,使用取样后的数据子集,训练每个个体学习器,预测时整体结果采用个体结果的平均。为了增强个体学习器的多样性,在每颗随机数的生长过程中,节点分裂时只选择了部分的属性,并且对选择的属性采用了某种策略来选择1个属性作为该结点的分裂属性。

上面的说法有点难以理解,于是我们通俗的打个比方:

我们有一个决策公司(集成学习器),公司里有许多的预测大师(个体学习器),我们现在要找这个决策公司对某堆(测试集)西瓜的好坏做预测(分类)或者定量预测西瓜的甜度(回归)。当然我们首先需要拿一堆西瓜N个(测试集)给这些预测大师。每个西瓜有M个属性(比如颜色、纹路、尾巴等)。我们有以下两种方式来进行西瓜的预测。

第一种,每次从N个西瓜中随机选择几个西瓜(子集),对某个预测大师进行训练,预测大师学习西瓜的各种M个属性与结果的关系,比如先判断颜色如何?再判断纹路如何?再判断尾巴如何?预测大师开始预测然后自我调节学习,最后成为研究西瓜的人才。所有的预测大师都采用这种训练方式,都学成归来。测试的时候,每拿出一个西瓜,所有专家一致投票,我们把最高投票的结果作为最终结果。这种方式就是所谓的bagging。

第二种,每次从N个西瓜中随机选择几个西瓜(子集),每个预测大师只选项西瓜的m(m

各位亲,秒懂了吧~~

参考资料:

《机器学习》,周志华

知乎,说说随机森林

知乎,【scikit-learn文档解析】集成方法 Ensemble Methods(上):Bagging与随机森林

说明:

本文为小编原创文章,敲字不易,若转载请标明出处,谢谢。如果觉得写的不错,请点赞!

本文来自企鹅号 - 有点意思haha媒体

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文来自企鹅号 - 有点意思haha媒体

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档