Bootstrap

《8.3.2 前向分步算法与 AdaBoost》 公式8.22简化过程

本文是将文章《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=1Nwmiexp(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=1NwmiI(yi=G(xi))+eαi=1Nwmi

公式(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=1Nwmiexp(yiαG(xi))=yi=Gm(xi)wmieα+yi=Gm(xi)wmieα

这个公式将样本分成了两部分:

  1. 正确分类的样本(即 y i = G m ( x i ) y_i = G_m(x_i) yi=Gm(xi)),这些样本的权重乘以 e − α e^{-\alpha} eα
  2. 错误分类的样本(即 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=1Nwmiexp(yiαG(xi))=i=1Nwmi(eα(1I(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=1Nwmi(1I(yi=G(xi)))+eαi=1NwmiI(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=1NwmiI(yi=G(xi))+eαi=1Nwmi

最终结果

通过以上步骤,我们将第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=1NwmiI(yi=G(xi))+eαi=1Nwmi

总结

通过使用指示函数 I ( y i ≠ G ( x i ) ) I(y_i \neq G(x_i)) I(yi=G(xi)),我们能够将正确分类和错误分类的项合并到一个表达式中。这样做的好处是简化了公式,使得我们可以在同一个公式中处理不同的分类情况,并便于后续计算。

;