机器学习原理 || 集成算法: Adaboost


参考书籍:
周志华.机器学习 P171
​李航.统计学习方法 P137
范明译.数据挖掘导论 P168
the element of statistical learning datamining .inference and prediction P337
Anintroduction to statitic learning P316
PRML P657

这里写图片描述

这里先介绍Adaboost

Adaboost:基于加性模型迭代式优化指数损失函数

1、思想:

  • 先从初始训练集训练出一个基学习器
  • 根据基学习器的表现对样本分布进行调整,将分错的样本的权重增大
  • 基于调整后的样本分布来训练下一个基学习器
  • 反复进行,训练T个学习器,采用结合策略进行预测

2、目标函数

最小化指数损失函数

Lexp(HD)=E(xD)e(yH(x))

H(x)=ΣTt=1αtht(x)

Lexp(HD)=E(xD)eyH(x) 最小化损失函数
Lexp(HD)H(x)=E(xD)(eyH(x)(y)) Lexp(HD)H(x)=0
=eH(x)P(y=1x)+eH(x)P(y=1x)
H(x)=12lnP(y=1x)P(y=1x)
sign(H(x))=sign(12lnP(y=1x)P(y=1x)))
该指数函数是 0-1 损失函数的替代函数

3、步骤

输入:训练集 D=(x1,y1),(x2,y2),,(xn,yn) ;基学习算法;训练轮数T
输出:最终分类器

过程:

1.初始化样本权值分布 D1=(w11,,w1i,,w1n),w1i=1n,i=1,2,,n
fort 1,2,…,T:
2. 基于分布 Dt 从数据训练集 D 中训练分类器 ht
3. 计算 ht 在训练集上的分类误差率
et=P(ht(x)y)=Σni=1wtiI(ht(xi)yi)
if et<0.5 then break ( 或者采用重采样的方法)
4. 确定分类器 ht 的权重
αt=12ln1etet
5. 更新样本分布
Dt+1=(wt+1,1,,wt+1,i,,wt+1,n)
wt+1,i=wtiZte(yiαtht(x),i=1,2,,n
end for
构建分类器的线性组合: f(x)=ΣTt=1αtht(x)
最终分类器: H(x)=sign(ΣTt=1αtht(x))

注:
1、对无法接受带权样本的基学习算法,可通过重采样处理;即根据新的样本分布对训练集进行采样

2、每轮生成基学习器时,需满足基本条件: et<0.5

3、 αt et 的关系:当 et<0.5 时, αt>0 , αt et 的减小而增大,分类误差率越小的基本分类器在最终分类器中的作用最大。

猜你喜欢

转载自blog.csdn.net/qq_29737811/article/details/79176308
今日推荐