集成方法Ensemble Method(bagging, AdaBoost)

1 主要思想

  • 将原始数据分成几个组
  • 训练一组分类器,里面有很多种弱分类器
  • 每个分类器的标签看作一次投票,投票最多的标签为最终标签

其架构如下所示:

2 为什么集成方法可行

假设这里有25个训练的弱分类器,且这些分类器独立工作,不会相互影响。

每一个分类器的出错率 \varepsilon =0.35

集成分类器的最终做出一个错误预测的概率(超过一半的基础分类器都预测错了)为:

P(X\geq 13)=\sum_{i=13}^{25}\binom{25}{i}\varepsilon ^i(1-\varepsilon )^{25-i}=0.06

其中:X为做出错误预测的弱分类器的数量

由此可见,集成分类器做出一个错误预测的概率比弱分类器低很多。

下图显示了,弱分类器(有的文档也称base classifier)的错误率(做出错误预测的概率)与集成分类器(ensemble classifier)的错误率之间的关系

由上图可见,当弱分类器的错误率低于0.5时,集成分类器才有效。

集成分类器主要分为两种,一种处理数据的分布,例如bagging,boosting;

另一种处理输入特征,例如 random forests

 

3 Bagging Algorithm

3.1 Pseudo code

  • 放回抽样(sampling with replacement)

3.2 实例

已知一维原始数据集:

弱分类器是一个单层决策树(desicion stump)

抽样,分类

统计各标签的得票数(正票数+负票数):

上图中最后一行为预估类(或标签)

 

4 AdaBoosting Algorithm

4.1 Boosting

在bagging中,每一轮sampling,数据被取得概率都是一样的,而Boosting更加关注哪些被误分类的数据。

在Boosting算法中,首先,在第一轮Boosting中,所有的数据都被分配相同的权重(被抽取的概率),

在以后的几轮抽取中,被抽取的权重发生变化,错误分类的数据的被抽取的权重将会提升,

而正确分类的数据被抽取的权重将会降低。

4.2 AdaBoosting 

4.2.1 Pseudo code

首先初始化权重w=1/n 并训练弱分类器:C1, C2, …, CT

其次,计算错误率:

计算一个分类器的重要性:

更新权重:

Z_j 使所有 w_i 之和为1.

如果错误率高于0.5,所有权重再次被分配为1/n

分类公式:

4.2.2 实例

3.2中的一维原始数据集:

基本分类器任然是一个单层决策树(desicion stump)

训练数据过程:

总结:

计算权重:

分类:

预测分类的计算:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值