通俗解读随机森林Random Forest

写在前面

声明:本文主要参考的是周志华老师的《机器学习》西瓜书,参杂了一些自己的小理解。读者有兴趣也可去阅读原书。

1. 什么是集成学习

集成学习(ensemble learning)通过构建并结合多个学习器来完成学习任务,有时也被成为多分类器系统(multi-classifier system)、基于委员会的学习(committee-based learning)。
简单举例来说,就是对于一个分类问题,我同时训练三个分类器。假如我用简单的“投票法”来产生结果的话,那么当分类器1分类结果为1,分类器2分类结果也为1,而分类器3分类结果为2。按照少数服从多数原则,我们输出最后结果为1。

2. 什么是Bagging

Bagging是并行式集成学习方法最著名的代表,缩写是"Boosttrap AGGreatING"。并行式集成学习方法的假设前提是基学习器之间不存在强依赖关系,基学习器可并行生成。多说一句,集成学习中还存在串行式集成学习方法。串行式集成方法的假设前提是基学习器之间存在强依赖关系,基学习器必须串行生成。其中代表方法是Boosting。有兴趣可以自行了解。
简单来说,Bagging是一个算法。Bagging算法的基本流程是这样的:给定包含m个样本的数据集,我们先随机抽取一个样本放入采样集中,再把该样本放回初始数据集,使得下次采样时该样本仍有可能被选中(即有放回采样)。这样,经过m次随机采样操作,我们得到含m个样本的采样集。
假设我们采样T次,得到T个含m个训练样本的采样集。然后基于每个采样集训练出一个基学习器。我们共可以训练出T个基分类器。再将这些基学习器进行结合。对于分类任务,Bagging通常使用简单投票法。对于回归任务则是使用简单平均法。

3 随机森林

随机森林(Random Foreast)是Bagging的一个扩展变体。被誉为“代表集成学习技术水平的方法”。RF在以决策树为基学习器构建Bagging集成的基础上,进一步在决策树的训练过程中引入了随机属性选择。在理解随机森林之前,必须先理解决策树。这里可以参考我之前的一篇文章link
具体来说,传统决策树在选择划分属性时是在当前结点的属性集合(假定有d个属性)中选择一个最优属性;而在RF中,对基决策树的每个结点,先从该节点的属性集合中随机选择一个包含k个属性的子集,然后再从这个子集中选择一个最优属性进行划分。这里的参数k控制了随机性的引入程度。若令k=d,则基决策树的构建与传统决策树相同。若令k=1,则是随机选择一个属性进行划分。一般情况下,推荐值 k = l o g 2 d k=log_{2}d k=log2d
RF中基学习器的多样性来自两方面,一是样本扰动,二是属性扰动。这使得最终集成的学习器泛化性能可通过个体基学习器之间差异度的增加而进一步提升。
通常情况下,RF相对于决策树、Bagging会有更低的泛化误差。但是,由于RF在集成过程中引入了两次随机性,所以RF的模型可解释性也往往较差

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值