Skip to content

AdaBoost 算法

AdaBoost · Adaptive Boosting

通过提高误分样本权重,依次组合弱分类器为加权二元投票。

算法

训练集为 (xi,yi)i=1m,标签 yi{1,+1}。初始化 D1(i)=1/m。第 t 轮用分布 Dt 训练弱分类器 ht:X{1,+1},计算

εt=iDt(i)1[ht(xi)yi],αt=12log1εtεt,

并更新

Dt+1(i)=Dt(i)eαtyiht(xi)Zt,

其中 Zt 是使权重和为 1 的归一化常数。最终输出

H(x)=signt=1Tαtht(x).

权重变化的含义

正确分类时 yiht(xi)=1,权重乘 eαt;误分类时该乘积为 1,权重乘 eαt。归一化后,下一轮更重视当前组合的困难点。若 εt<1/2,则 αt>0;当 εt=1/2 时该分类器没有贡献;大于 1/2 时弱学习条件失效,通常应翻转分类器或停止,而不是照搬正系数解释。

指数损失推导

令加法 score FT(x)=tαtht(x)。经验指数损失为

1mieyiFT(xi).

按上述更新展开可得它等于 t=1TZt。对固定 ht,最小化 Zt=(1εt)eα+εteα 得到给定的 αt,且最小值 2εt(1εt)。又因为误分类时 eyiFT(xi)1,训练错误率不超过这组归一化常数的乘积。

具体过程与边界

在含少量几何上困难点的二维样本中,第一棵决策桩会分对大多数点;误分点权重上升后,第二棵桩沿另一坐标切分,最终加权 score 综合两条边界。若困难点实际是错标异常值,权重也会持续集中到它们上面,导致对噪声敏感;这不是算法必然“自动忽略异常”的场景。

指数训练损失下降不等于总体误差必然下降,仍需 margin 或复杂度泛化分析。AdaBoost 优化的代理是 exponential loss,与分类代理损失相关;它不是交叉熵算法,也不是单纯多数概率放大。

参考资料