随机森林

  1. 集成学习
    集成学习 (ensemble learning)通过构建并结合多个学习器来完成学习任务。先产生一组"个体学习器" (individual learner),再用某种策略将它们结合起来。

  2. 个体学习器
    个体学习器通常由一个现有的学习算法从训练数据产生,例如 C4.5 决策树算法、 BP 神经网络算法等。当集成中只包含同种类型的个体学习器,例如"决策树集成" 中全是决策树,“神经网络集成"中全是神经网络,这样的集成是"同质” 的(homogeneous)。 集成也可包含不同类型的个体学习器,例如同时包含决策树和神经网络,这样的集成是"异质"的(heterogenous)。
    在一般经验中,如果把好坏不等的东西掺到一起,那么通常结果会是比最坏的要好一些,比最好的要坏一些。集成学习把多个学习器结合起来,如何能获得比最好的单一学习器更好的性能呢?
    在这里插入图片描述
    考虑一个简单的例子:在二分类任务中,假定三个分类器在三个测试样本上的表现如图 所示,集成学习的结果通过投票法产生,即"少数服从多数"在图(a) 中,每个分类器都只有 66.6% 的精度,但集成学习却达到了 100%;在图(b)中,三个分类器没有差别,集成之后性能没有提高;在图 ©中,每个分类器的精度都只有 33.3%,集成学习的结果变得更糟。这个简单的例子显示出:要获得好的集成,个体学习器应"好而不同”,即个体学习器要有一定的准确性,且个体学习器之间要有差异。

  3. boosting与bagging
    Boosting串行式集成学习方法最著名的代表。这族算法的工作机制类似:先从初始训练集训练出一个基学习器,再根据基学习器的表现对训练样本分布进行调整,使得先前基学习器做错的训练样本在后续受到更多关注,然后基于调整后的样本分布来训练下一个基学习器;如此重复进行,直至基学习器数目达到事先指定的值 T, 最终将这 T 个基学习器进行加权结合。Boosting 族算法最著名的代表是 AdaBoost。
    从偏差一方差分解的角度看出, Boosting 主要关住降低偏差,因此 Boosting 能基于泛化性能相当弱的学习器构建出很强的集成。
    Bagging并行式集成学习方法最著名的代表。从名字即可看出,它直接基于西瓜书 2.2.3 节介绍过的自助采样法 (bootstrap sampling)。给定包含 m 个样本的数据集,我们先随机取出一个样本放入采样集中,再把该样本放回初始数据集,使得下次采样时该样本仍有可能被选中,这样,经过 m 次随机采样操作,我们得到含 m 个样本的采样集,初始训练集中有的样本在采样集里多次出现,有的则从未出现。由西瓜书中式(2.1)可知,初始训练集中约有 63.2% 的样本出现在来样集中。
    采样出 T 个含 m 个训练样本的采样集,然后基于每个采样集训练出一个基学习器,再将这些基学习器进行结合。这就是 Bagging 的基本流程。在对预测输出进行结合时, Bagging 通常对分类任务使用简单投票法,对回归任务使用简单平均法。若分类预测时出现两个类收到同样票数的情形,则最简单的做法是随机选择一个,也可进一步考察学习器投票的置信度来确定最终胜者。
    Bagging 是一个很高效的集成学习算法,与标准 AdaBoost 只适用于二分类任务不同,

  • 12
    点赞
  • 65
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值