本文是将文章《8.3.2 前向分步算法与 AdaBoost》中的公式单独拿出来做一个详细的解析,便于初学者更好的理解。
接下来我们解析公式(8.22)具体的简化过程:
∑
i
=
1
N
w
m
i
exp
(
−
y
i
α
G
(
x
i
)
)
=
∑
y
i
=
G
m
(
x
i
)
w
m
i
e
−
α
+
∑
y
i
≠
G
m
(
x
i
)
w
m
i
e
α
\sum_{i=1}^N w_{mi} \exp(-y_i \alpha G(x_i)) = \sum_{y_i = G_m(x_i)} w_{mi} e^{-\alpha} + \sum_{y_i \ne G_m(x_i)} w_{mi} e^\alpha
i=1∑Nwmiexp(−yiαG(xi))=yi=Gm(xi)∑wmie−α+yi=Gm(xi)∑wmieα
= ( e α − e − α ) ∑ i = 1 N w m i I ( y i ≠ G ( x i ) ) + e − α ∑ i = 1 N w m i = (e^\alpha - e^{-\alpha}) \sum_{i=1}^N w_{mi} I(y_i \ne G(x_i)) + e^{-\alpha} \sum_{i=1}^N w_{mi} =(eα−e−α)i=1∑NwmiI(yi=G(xi))+e−αi=1∑Nwmi
公式(8.22)第1部分
第1部分是:
∑ i = 1 N w m i exp ( − y i α G ( x i ) ) = ∑ y i = G m ( x i ) w m i e − α + ∑ y i ≠ G m ( x i ) w m i e α \sum_{i=1}^N w_{mi} \exp(-y_i \alpha G(x_i)) = \sum_{y_i = G_m(x_i)} w_{mi} e^{-\alpha} + \sum_{y_i \neq G_m(x_i)} w_{mi} e^{\alpha} i=1∑Nwmiexp(−yiαG(xi))=yi=Gm(xi)∑wmie−α+yi=Gm(xi)∑wmieα
这个公式将样本分成了两部分:
- 正确分类的样本(即 y i = G m ( x i ) y_i = G_m(x_i) yi=Gm(xi)),这些样本的权重乘以 e − α e^{-\alpha} e−α。
- 错误分类的样本(即 y i ≠ G m ( x i ) y_i \neq G_m(x_i) yi=Gm(xi)),这些样本的权重乘以 e α e^{\alpha} eα。
使用指示函数 I ( y i ≠ G ( x i ) ) I(y_i \neq G(x_i)) I(yi=G(xi))
为了将正确分类和错误分类合并成一个表达式,我们可以引入指示函数 I ( y i ≠ G ( x i ) ) I(y_i \neq G(x_i)) I(yi=G(xi)),它的定义是:
I ( y i ≠ G ( x i ) ) = { 1 , 如果 y i ≠ G ( x i ) 0 , 如果 y i = G ( x i ) I(y_i \neq G(x_i)) = \begin{cases} 1, & \text{如果 } y_i \neq G(x_i) \\ 0, & \text{如果 } y_i = G(x_i) \end{cases} I(yi=G(xi))={1,0,如果 yi=G(xi)如果 yi=G(xi)
利用这个指示函数,我们可以将两个部分合并:
- 对于正确分类的样本( y i = G ( x i ) y_i = G(x_i) yi=G(xi)),指示函数 I ( y i ≠ G ( x i ) ) = 0 I(y_i \neq G(x_i)) = 0 I(yi=G(xi))=0,因此这部分的项为 w m i e − α w_{mi} e^{-\alpha} wmie−α。
- 对于错误分类的样本( y i ≠ G ( x i ) y_i \neq G(x_i) yi=G(xi)),指示函数 I ( y i ≠ G ( x i ) ) = 1 I(y_i \neq G(x_i)) = 1 I(yi=G(xi))=1,因此这部分的项为 w m i e α w_{mi} e^{\alpha} wmieα。
重写公式第1部分
将公式第1部分用指示函数表示,可以得到:
∑ i = 1 N w m i exp ( − y i α G ( x i ) ) = ∑ i = 1 N w m i ( e − α ( 1 − I ( y i ≠ G ( x i ) ) ) + e α I ( y i ≠ G ( x i ) ) ) \sum_{i=1}^N w_{mi} \exp(-y_i \alpha G(x_i)) = \sum_{i=1}^N w_{mi} \left( e^{-\alpha} (1 - I(y_i \neq G(x_i))) + e^{\alpha} I(y_i \neq G(x_i)) \right) i=1∑Nwmiexp(−yiαG(xi))=i=1∑Nwmi(e−α(1−I(yi=G(xi)))+eαI(yi=G(xi)))
在这个表达式中:
- 当 y i = G ( x i ) y_i = G(x_i) yi=G(xi) 时, I ( y i ≠ G ( x i ) ) = 0 I(y_i \neq G(x_i)) = 0 I(yi=G(xi))=0,该项为 w m i e − α w_{mi} e^{-\alpha} wmie−α。
- 当 y i ≠ G ( x i ) y_i \neq G(x_i) yi=G(xi) 时, I ( y i ≠ G ( x i ) ) = 1 I(y_i \neq G(x_i)) = 1 I(yi=G(xi))=1,该项为 w m i e α w_{mi} e^{\alpha} wmieα。
提取公因式
现在,我们可以将 e α e^{\alpha} eα 和 e − α e^{-\alpha} e−α 提取出来:
= e − α ∑ i = 1 N w m i ( 1 − I ( y i ≠ G ( x i ) ) ) + e α ∑ i = 1 N w m i I ( y i ≠ G ( x i ) ) = e^{-\alpha} \sum_{i=1}^N w_{mi} (1 - I(y_i \neq G(x_i))) + e^{\alpha} \sum_{i=1}^N w_{mi} I(y_i \neq G(x_i)) =e−αi=1∑Nwmi(1−I(yi=G(xi)))+eαi=1∑NwmiI(yi=G(xi))
进一步分解并整理得到:
= ( e α − e − α ) ∑ i = 1 N w m i I ( y i ≠ G ( x i ) ) + e − α ∑ i = 1 N w m i = (e^{\alpha} - e^{-\alpha}) \sum_{i=1}^N w_{mi} I(y_i \neq G(x_i)) + e^{-\alpha} \sum_{i=1}^N w_{mi} =(eα−e−α)i=1∑NwmiI(yi=G(xi))+e−αi=1∑Nwmi
最终结果
通过以上步骤,我们将第1部分中的公式成功地合并成一个公式,即第2部分 中的结果:
= ( e α − e − α ) ∑ i = 1 N w m i I ( y i ≠ G ( x i ) ) + e − α ∑ i = 1 N w m i = (e^{\alpha} - e^{-\alpha}) \sum_{i=1}^N w_{mi} I(y_i \neq G(x_i)) + e^{-\alpha} \sum_{i=1}^N w_{mi} =(eα−e−α)i=1∑NwmiI(yi=G(xi))+e−αi=1∑Nwmi
总结
通过使用指示函数 I ( y i ≠ G ( x i ) ) I(y_i \neq G(x_i)) I(yi=G(xi)),我们能够将正确分类和错误分类的项合并到一个表达式中。这样做的好处是简化了公式,使得我们可以在同一个公式中处理不同的分类情况,并便于后续计算。