集成学习总结

内容基于周志华老师的《机器学习》书籍。

 

集成学习通常将多个“弱学习器”结合从而得到显著优越的泛化性能。如果希望学习器的个数较少,通常会选用较强一些的学习器。

 

Boosting: 个体学习器间存在强依赖关系,必须串行生成的序列方法

Bagging & random forest:个体学习器间不存在强依赖关系,可同时生成的并行化方法。   

 

Bagging和random forest的区别:

1)bagging每次对数据集进行采样,使用子数据集进行分类器的训练,由于不同的数据集得到的基学习器差异较大,集成之后效果会有提升。但是,以决策树作为基分类器为例,这样的方法选择的优分裂点开始时可能都比较相似,这样生成的决策树结构也相似,做集成学习的效果就没有那么好了。

2)random forest相当于是对bagging的改进,除了对数据集进行采样,也对每次分裂点使用的候选特征集做采样,每次选择分裂点时,只从采样的特征子集中选择特征并生成分裂点,在下一个分裂点选择时重新进行采样,这样的方法使得生成的决策树间存在多样性,最终的集成效果较好。同时,因为候选分裂点较少,也减少了计算量。

 

Boosting     

以弱分类器作为基分类器,串行训练,从初始的训练集开始训练得到基分类器,根据其表现来调整样本的分布权重,使得分类错误的样本权重增加,然后学习下一个学习器。最终加权求和。代表为AdaBoost (通过基学习器的线性组合来最小化指数损失函数)。

Boosting的每一轮通过样本权重调整或者重采样(re-sampling)来改变样本分布,使得分类错误的样本更被重视。同时,在Boosting的每一轮,基学习器都要进行检查,判断其是否满足基本条件,即比随机猜测好,如果不满足条件,则会被弃用。这种时候,重采样能够获得重启动机会。

Boosting是一个降低偏差的过程,学习器的串行,不断地减小误差。

 

Bagging

Bagging需要对数据集进行采样,构造不同的子数据集,从而得到有差异的子分类器,最后集成。但是如果采样完全没有重叠,随着子分类器个数的增多,每个分类器使用到的数据集越小,效果可能会比较差。所以,为了避免这种情况,可以考虑有交叠的采样子集。

Bagging的采样过程:有放回的采样,每次随机取一个样本加入集合,然后放回,再采样,最后得到子数据集。

最终输出:分类任务采用简单投票法;回归任务采用简单平均法。

优点:因为每个分类器只使用一部分样本,所以剩余的样本可以自然而然被作为验证集,来验证分类器的泛化性能。在决策树中这种验证集可以被用于剪枝,在神经网络中可以辅助早起停止以防止过拟合。

Bagging是一个减小方差的过程,通过不同数据集上训练得到的分类器最终集成,能够降低集成模型的方差,即在不同数据集上表现的差异性。

 

Random Forest

刚才也提到了,random forest是bagging的扩展,不仅考虑了样本的采样,也考虑了属性的采样。  通常属性的采样子集的大小设为k=log2d,其中d为所有属性的个数。

优点:简单,容易实现,开销小,泛化性能强。

 

集成方法的优点:假设空间很大,有多个假设可能有同等性能,如果只使用单学习器,可能会因为误选而泛化性能不佳;单学习器可能惠晓茹局部极小值;多个学习器对应的假设空间扩大,能学得更好的近似。

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值