机器学习(七)——集成学习:Boosting系列和Bagging系列

一、集成学习

1.基础概念

\qquad 集成学习(ensemble learning)通过构建并结合多个学习器来完成学习任务,也被称为多分类器系统、基于委员会的学习等。
\qquad 集成学习的一般结构是:先产生一组“个体学习器”,再用某种策略将它们结合起来。

同质集成,和异质集成
同质集成:所有的个体学习器都采用同种学习算法,例如C4.5决策树算法
异质集成:个体学习器采用不同的学习算法,例如个体学习器中同时包含决策树和神经网络等。
在这里插入图片描述

\qquad 集成学习通过将多个学习器进行结合,常可以获得比单一学习器显著优越的泛化性能。这对“弱学习器”尤为明显,因此集成学习的很多理论研究都是针对弱学习器进行的,而基学习器有时也被直接称为弱学习器。

2.结合策略

\qquad 集成学习是由多个个体学习器组成的,那怎样处理各个个体学习的输出,从而产生一个最终的输出呢?

通常采用的方法有三类:
(1)平均法
(2)投票法
(3)学习法

(1)平均法:
\qquad 针对的是数值型的输出,常采用此方法。
平均法有两种:
\qquad 简单平均法
\qquad 加权平均法
(2)投票法
\qquad 对于分类任务中,常采用的结合策略是投票法
投票法有三种:
\qquad 绝对多数投票法
\qquad 相对多数投票法
\qquad 加权投票法
(3)学习法
\qquad 当训练数据很多时,一种更为强大的结合策略是使用“学习法”,即通过另一个学习器来进行结合。其中,我们将个体学习器称为初级学习器,用于结合的学习器称为次级学习器或元学习器。
\qquad Stacking是学习法的典型代表。
\qquad Stacking先从初始数据集训练出初级学习器,然后“生成”一个新的数据集用于训练次级学习器。在这个新数据集中,初级学习器的输出被当做样例输入特征,而初始样本的标记仍被当作样例标记。

3.集成学习分类

\qquad 目前集成学习方法大致分为两大类:
\qquad 第一类:个体学习器间存在强依赖关系,必须串行生成的序列化方法。代表是:Boosting(提升方法)
\qquad 第二类:个体学习器间不存在强依赖关系、可同时生成的并行化方法。代表是:Bagging和随机森林(Random Forest)

二、Boosting系列

1.工作原理

\qquad Boosting系列算法的工作机制:先从初始训练集训练出一个基学习器,再根据基学习器的表现对训练样本分布进行调整,使得先前基学习器做错的训练样本在后续收到更多的关注度(即更有可能被抽样到),然后基于调整后的样本分布来训练下一个基学习器;如此重复进行,直至基学习器数目达到事先指定的值 T T T,最终将这 T T T个基学习器进行加权结合。

2.代表算法

(1)AdaBoost(Adaptive Boosting,自适应Boosting)
\qquad 具体实施过程:

1.刚开始每个样本的采样概率都是一样的,若有 N N N个样本,则每个样本的权值为: 1 / N 1/N 1/N;
2.训练弱分类器。在训练的过程中,如果某个样本点已经被准确的分类,那么在构造下一个训练集中,它的权值就降低;相反,要是分类错误,那么它的权值就增加,增加下次采样的概率。然后,对权值更新过的数据集进行采样,形成新的训练集,进行下一次的训练。
3.如此迭代进行下去.

用于分类问题
损失函数是指数函数

(2)GBDT(Gradient Boosting Decision Tree,梯度提升决策树,简称梯度提升树)
\qquad 它是一个在Boosting算法在损失函数上的泛化。能够用于分类和回归问题。
\qquad 梯度提升树的基本思想是拟合负梯度。
\qquad 梯度提升的典型基函数是决策树(CART)
\qquad 损失函数使用:平方误差

三、Bagging系列

Bagging是并行式集成学习方法最著名的代表

1.工作原理

\qquad Bagging算法,采用自助采样法,给定包含m个样本的数据集,我们先随机取出一个样本放入采样集中,再把该样本放回初始数据集,使得下次采样时该样本仍可能被选中,这样,经过m次随机采样操作,我们得到含m个样本的采样集。如此反复,我们可以采样出T个含有m个训练样本的采样集,然后基于每个采样集训练出一个基学习器,再将这些基学习器进行结合。以上就是Bagging的基本流程。

Bagging算法针对分类任务,采用简单投票法
针对回归任务,采用简单平均法

四、随机森林

\qquad 随机森林(Random Forest,简称RF)是Bagging的一个扩展变体。RF在以决策树为基学习器构建Bagging集成的基础上,进一步在决策树的训练过程中引入了随机属性选择。
\qquad 具体来说,传统决策树在选择划分属性时是在当前节点的额属性集合(假设有d个属性)中选择一个最优属性;而在RF中,对基决策树的每个结点,先从该结点的属性集合中随机选择一个包含k个属性的子集,然后再从这个子集中选择一个最优属性用于划分。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值