集成学习_boosting与bagging PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
算法
(x1, y1), (x2 , y2 ), ... , (xn , yn )
Step 2: 初始化权值
w1,i
1 ,1 2m 2l
for yi
0,1,
m 和 l分别为正样本和负样本的个数。
For t = 1, … , T 1. 归一化权值, wt,i
wt ,i w n
j 1 t , j
2. 对于第j个特征,在给定权值条件下训练弱分类器 hj ,弱分类器的分类错误率为:
,
则删掉此特征,当J(H )低于预测值或循环次数大于预定值M时,停止循环。 M
最终的预测函数:
M
H (x)sign( hm (x))
m 1
2 bagging算法
• Bagging算法的主要思想:
• 给定训练集 S ((x1, y1), (x2, y2 ),...(xn, yn )) 和弱学 习算法,对该学习算法进行T次调用,每次调 用时只使用训练集S中的某个子集作为当前训 练集,每一个训练例在某轮训练集中可以多 次或根本不出现。经过T次调用后,可得到T 个不同的分类器啊,当对于一个测试实例工 进行分类时,分别调用这T个分类器,得到T 个分类结果。最后对分类问题把这T个分类结 果中出现次数多的类赋予测试实例x。
算法是通过数据分布的改变来实现的,根据每次弱分类器训练集 中每个样本的分类正确与否,及上次总体分类的准确率,对每个样本 的权值进行调整,降低弱分类器中分类正确的样本的权值,提高弱分 类器分类错误的样本的权值。修改过权值的新数据表集作为下层分类 器的训练集,经过多次迭代得到相应的弱分类器,对训练得到的这些 弱分类器进行融合 , 得到最终的强分类器 。
脸部图像
False positive
j wi | hj (xi ) yi |
i
X (训练集)
非脸部图像
定义一个若分类器h j (x),其学习算法如下:
1, hj (x) 0
if Pj f j (x) Pj j 其他
其中, j 是阈值
Pj 取不同符号改变不等号方向
弱分类器训练 图示说明
训练集
Step 1: 训练
Bagging算法
Step 2: 初始化权值
(x1, y1), (x2 , y2 ), ... , (xn , yn )
For t = 1, … , T 1. S’ 为从给定训练集S中,随机抽样(有放回).
2. 在S’ 上训练弱学习器,得到第t 轮的预测函数 ht .
3. t = t + 1 .
• AdaBoost.M1 和 AdaBoost.M2 是用来解决 多分类单标签问题
Step 1: 训练集
AdaBoost.M1 算法
Step 2: 初始化权值
(x1, y1), (x2 , y2 ), ... , (xn , yn )
w1,i
1 2n
for yi
0,1,
For t = 1, … , T 1. 归一化权值,
特征
w1
fj
w2
fj
归一化权重
fj
误差
1 2 3 h1 h2 h3
更新权值
w1
错误
w2
正确
m in
ht
wi
正确
wn
每幅图像大约有180,000 个特征
fj
180,000
j wi | hj (xi ) yi |
i
h180,000
选出最小误差t ,分类器ht
wn
错误
wt 1,i
wt ,i
t 1t
wt
(i)
1 m
,i
1,
...m;J
min m
=max-value(t=1,...,Max),M=0
For t = 1, … , T
1. 每个弱分类器h,在权值下进行训练,得到预测函数 ht .
2.
h计(x算) 误10判率tT,1 t选ht (取x)参12ot数thT1erastt(:t
ln
wt,i t
wt ,i
,
如果样本被正确分类 其他
最终的强分类器:
h
(
x)=
argmax yY t
1...T
log
t
t
t 1t
Floatboost 算法
• 向前增加一个弱分类器之后,就需要向后 回馈r。r的取值取决于当前分类性能的稳定 性。这种弱分类器选择的方法相对于前向 搜索来说具有更大的灵活性,因此,增加 弱分类器组合的多样性,相比AdaBoost中 的单调搜索有更优的解集合。
Boosting and bagging算法
1 Boosting 算法
• Boosting 算法是近十年最有效的算法之一,其主要代表算 法有Adaboost算法和 AdaBoost算法改进等。(记单词)
• AdaBoost算法基本思想:
对同一个训练集使用不同的特征训练出不同的弱分类器 , 然后 将这些弱分类器组合起来 , 提升为一个分类能力更强的强分类器 。
)
t
t 1t
AdaBoost 人脸检测
特征计算
原始图像 级联结构
特征提取
Haar Basis Functions Haar Basis Functions Haar Basis Functions
大量的特征
小部分特征训练
特征选择
Ada Boost 训练
AdaBoost 应用于分类
特征集
训练集 +1 正样本 -1 负样本
1.1 AdaBoost系列
• 应用AdaBoost系列主要解决了:两类问题、 多类单标签问题、多类多标签问题、大类 单标签问题,回归问题。它用全部的训练 样本进行学习。
• 注:一般无特别说明,boosting都是指AdaBoost算法
Step 1: 训练集
图像
The AdaBoost
正样本 =1 负样本=-1
特征集
级联 AdaBoost
1
AdaBoost h1
2
T
T
AdaBoost
h1 h2
h10
Feature Select & Classifier
100% Detection Rate 50% False Positive
False
False
非人脸
n
AdaBoost
h1 h2
more
False
离散AdaBoost-AdaBoost.M1
1 jt
)
i
wi | hj (xi ) yi |
选择有最小错误率 t的若分类器ht。
3. 更新权值:
Wt1 ( xi
)
Wt
( xi
)exp(t Zt
yi
ht
( xi
))
,
Zt是使
M i1
Wt1( xi
)的归一化因子。
4.
设h'
arg
min,为
hHm
M
最小特征集合,若J(H
M
)(为漏检率与虚警率的加权和)<Jmin m
3. 更新权值:
End 最终的强分类器:
j wi | hj (xi ) yi | i
选择有最小错误率 t的若分类器ht。
wt 1,i
w 1ei t ,i t
wtw,i t,it
,
如果样本被正确分类 其他
h(x)
T
1 0 t1
tht (x)
1 2
T t 1
t (t
others
ln 1 t
End 最终输出: 对未知样本X分类时,每个模型 ht 得到一个分类器, 得票最高的未知样本x 的分类
Bagging 和 AdaBoost 区别
• Bagging的训练集是随机的,各训练集是独的, 而Boosting训练集的选择不是独立的,每一次选 择的训练集都依赖于上一次学习的结果。
• Bagging的每个预测函数(即弱假设)没有权重,而 Boosting根据每一次训练的训练误差得到该次预 测函数的权重。
图像
The AdaBoost算法 Step 1: 训练集
(x1, y1), (x2 , y2 ), ... , (xm , ym ) J (Hm )为此特征集合的目标函数值,
正样本 =1 Jmmin是目前m个特征构成的集合中目标函数的最小值。
负样本=-1
Step 2: 初始化权值 Step 3: 弱分类器训练
• Bagging的各个预测函数可以并行生成,而 Boosting的只能顺序生成。对于像神经网络这样 极为耗时的学习方法,Bagging可通过并行训练 节省大量时间开销。
wt,i
wt ,i w n
j 1 t , j
2. 对于第j个特征,在给定权值条件下训练若分类器 hj ,若分类器的分类错误率为:
j wi | hj (xi ) yi | i
如果t 1 / 2,设T t 1, 退出循环
3. 更新权值: End
wt 1,i
w 1ei t ,i t
24 24
学习处理
各种各样的特征
若分类器 1 若分类器 2 若分类器3
最终的强分类器
人脸 非人脸
最终的强分类器
AdaBoost 学习算法 用于特征选择
大约有180,000 个矩形特征
弱分类器训练图示说明
f j (x)
ex
如果 fj(x) > X 是脸部图像
hj (xi ) 1
Βιβλιοθήκη Baidu
False negative