《统计学习方法》第八章: 提升方法 读书笔记

8.提升方法

8.1几个概念

  • 集成学习:
    使用一系列学习器进行学习,使用某种规则将基本分类器组和,得到比单个学习器效果更好的模型。
    • 序列方法,当前模型进行学习时,依赖上一个模型的训练结果
    • 并行方法,模型间没有依赖关系
  • 强可学习:
    一个概念/类,如果存在多项式的学习算法,能正确率很高进行学习,这个概念/类是强可学习的。
  • 弱可学习:
    一个概念/类,如果存在多项式的学习算法,学习的正确率仅比随即猜测略好,这个概念是弱可学习的。
  • PAC学习框架(probably approximately correct,很可能接近正确的)
    • 等价于训练误差上界定理,用训练误差和 ϵ \epsilon 项以一定的概率控制泛化误差
    • 泛化误差上界:对于函数f,至少以概率 1 δ 1-\delta ,以下不等式成立
      R ( f ) R ^ ( f ) + ϵ ( d , N , δ ) R(f) \leqslant \hat{R}(f) +\epsilon(d,N,\delta)
      ϵ ( d , N , δ ) = 1 2 N ( l o g d + l o g 1 δ ) \epsilon(d,N,\delta)=\sqrt{\frac{1}{2N}(logd + log\frac{1}{\delta})}
    • 在PAC的学习框架下,一个概念是强可学习的充要条件是弱可学习的

8.2加法模型的向前分步算法

8.2.1加法模型
  • 模型:加法模型,表示为
    f ( x ) = m = 1 M β m b ( x ; γ m ) f(x) = \sum_{m=1}^M\beta_mb(x;\gamma_m)
    其中 b ( x ; γ m ) b(x;\gamma_m) 是基函数, γ m \gamma_m 是参数, β m \beta_m 是系数 (同一个基函数,只是参数不同)
  • 损失函数(极小化):
    min β m , γ m i = 1 N L ( y i , m = 1 M β m b ( x i ; γ m ) ) \min_{\beta_m,\gamma_m}\sum_{i=1}^NL(y_i, \sum_{m=1}^M\beta_mb(x_i;\gamma_m))
  • 算法:向前分步算法
    学习加法模型时,从前向后,每一步只学习一个基函数及其系数,逐步优化损失函数,即可以简化优化的复杂度。即每步只优化 min β , γ i = 1 N L ( y i , β b ( x i ; γ ) ) \min_{\beta,\gamma}\sum_{i=1}^NL(y_i, \beta b(x_i;\gamma))
8.2.2具体算法

输入:训练数据集 T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) ,   , ( x N , y N ) , } T=\{(x_1,y_1),(x_2,y_2),\cdots,(x_N,y_N),\} ;损失函数 L ( y , f ( x ) ) ; L(y,f(x)); 基函数集 { b ( x , r ) } \{b(x,r)\}
输出:加法模型f(x)

  • (1)初始化 f 0 ( x ) = 0 f_0(x) = 0
  • (2)每轮训练一个基本学习器 β m b ( x ; r m ) , m = 1 , 2 ,   , M \beta_mb(x;r_m),m=1,2,\cdots,M ,且到当前轮时 f m ( x ) = f m 1 ( x ) + β m b ( x ; r m ) f_m(x) = f_{m-1}(x) + \beta_mb(x;r_m)
    • (a) 极小化损失函数
      ( β m , γ m ) = a r g min β , γ i = 1 N L ( y i , f m ( x ) ) = a r g min β , γ i = 1 N L ( y i , f m 1 ( x ) + β m b ( x ; r m ) ) \begin{aligned} (\beta_m,\gamma_m) &= arg\min_{\beta,\gamma}\sum_{i=1}^NL(y_i, f_m(x)) \\ &= arg\min_{\beta,\gamma}\sum_{i=1}^NL(y_i, f_{m-1}(x) + \beta_mb(x;r_m)) \end{aligned}
      得到参数 β m , γ m \beta_m,\gamma_m
    • (b) 更新 f m ( x ) = f m 1 ( x ) + β m b ( x ; r m ) f_m(x) = f_{m-1}(x) + \beta_mb(x;r_m)
  • (3) 得到加法模型 f ( x ) = f M ( x ) = m = 1 M β m b ( x ; γ m ) f(x) =f_M(x) = \sum_{m=1}^M\beta_mb(x;\gamma_m)

8.3 提升方法

  • 主要思想:
    • 如果发现了“弱学习算法”,将其提升为“强学习算法”。
    • 即从一个弱学习算法出发,通过反复学习不同的参数,得到一系列基本分类器,通过组和这些弱分类器,构成一个强分类器。
    • 大多数的提升方法:在每轮学习中改变训练数据的概率分布(即训练数据的权值分布);在下轮学习中通过有新的概率分布的训练数据,用相同的基本学习方法学习到不同的参数,构成另一个基本分类器;将这些基本分类器组和为强分类器。
      • 问题一:如何改变训练数据的概率分布
      • 问题二:如何将弱分类器(基本分类器)组和成一个强分类器
8.3.1 AdaBoost算法
  • 用于解决二分类问题
  • 每轮训练中,提高被前一轮弱分类器错误分类的样本的权值,降低被正确分类的样本的权值
  • 通过加权多数表决的方法组和弱分类器:加大分类误差率小的弱分类器的权值,使其有更多的决定权;减少分类误差率大的弱分类器的权值,使其有更小的决定作用。
  • 在学习过程中不断减少训练误差,即分类误差率
算法

输入:训练数据集 T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) ,   , ( x N , y N ) , } T=\{(x_1,y_1),(x_2,y_2),\cdots,(x_N,y_N),\} ,其中 x i X R n , y i Y = { 1 , + 1 } x_i \in X \subseteq R^n,y_i \in Y=\{-1,+1\} ;及弱学习算法
输出:最终分类器G(x)

  • (1) 初始化训练数据的权值分布, D 1 = ( w 11 ,   , w 1 i ,   , w 1 N ) , w 1 i = 1 N D_1 = (w_{11},\cdots,w_{1i},\cdots,w_{1N}),w_{1_i}=\frac{1}{N}
  • (2) 反复学习分类器,共要学习M个弱分类器,对于第m次学习, m = 1 , 2 ,   , M m=1,2,\cdots,M
    • (a) 使用具有权值分布 D m D_m 的训练数据集学习,得到基本分类器
      G m ( x ) : X { + 1 , 1 } G_m(x):X \rightarrow \{+1,-1\}
    • (b) 计算 G m ( x ) G_m(x) 在训练数据集上的分类误差率( e m < 0.5 e_m<0.5 永远成立,可以把正负的标记反过来)
      e m = P ( G m ( x i ) y i ) = i = 1 N w m i I ( G m ( x i ) y i ) e_m=P(G_m(x_i) \neq y_i) = \sum_{i=1}^N w_{m_i}I(G_m(x_i) \neq y_i)
    • (c )计算 G m ( x ) G_m(x) 的系数(分类误差率 e m e_m 越小, α m \alpha_m 越大,且 α m > 0 \alpha_m>0 ,在最终分类器中作用越大)
      α m = 1 2 l o g 1 e m e m \alpha_m=\frac{1}{2}log\frac{1-e_m}{e_m}
    • (d) 更新训练数据集的权值分布(当样本 ( x i , y i ) (x_i,y_i) 在上一个分类器中误分类时,即 y i G m ( x i ) < 0 y_iG_m(x_i)<0 w m + 1 w_{m+1} 会被放大
      D m + 1 = ( w m + 1 , 1 ,   , w m + 1 , i ,   , w m + 1 , N ) D_{m+1} = (w_{m+1,1},\cdots,w_{m+1,i},\cdots,w_{m+1,N})
      w m + 1 , i = w m i Z m e x p ( α m y i G m ( x i ) ) , i = 1 , 2 ,   , N w_{m+1,i} = \frac{w_{mi}}{Z_m}exp(-\alpha_my_iG_m(x_i)),i=1,2,\cdots,N
      Z m = i = 1 N w m i e x p ( α m y i G m ( x i ) ) Z_m = \sum_{i=1}^Nw_{mi}exp(-\alpha_my_iG_m(x_i))
      其中 Z m Z_m 是一个规范化因子,使 D m + 1 D_{m+1} 称为一个概率分布,因为 w m i = 1 \sum w_{mi} = 1
  • (3) 构建基本分类器的线性组和
    f ( x ) = m = 1 M α m G m ( x ) f(x) = \sum_{m=1}^M\alpha_m G_m(x)
    。得到最终的分类器
    G ( x ) = s i g n ( f ( x ) ) = s i g n ( m = 1 M α m G m ( x ) ) G(x) = sign(f(x))=sign(\sum_{m=1}^M\alpha_mG_m(x))
AdaBoost的训练误差分析
  • 1.AdaBoost的训练误差有上界
    1 N i = 1 N I ( G ( x i ) y i ) 1 N i = 1 N e x p ( y i f ( x i ) ) = m = 1 M Z m \frac{1}{N}\sum_{i=1}^NI(G(x_i)\neq y_i) \leqslant \frac{1}{N}\sum_{i=1}^Nexp(-y_if(x_i)) = \prod_{m=1}^MZ_m
    其中:
    G ( x ) = s i g n ( m = 1 M α m G m ( x ) ) G(x)=sign(\sum_{m=1}^M\alpha_mG_m(x)) ,
    f ( x ) = m = 1 M α m G m ( x ) f(x)=\sum_{m=1}^M\alpha_m G_m(x) ,
    Z m = i = 1 N w m i e x p ( α m y i G m ( x i ) ) Z_m=\sum_{i=1}^Nw_{mi}exp(-\alpha_my_iG_m(x_i))
    此定理说明:

    • 使 Z m Z_m 最小,从而使训练误差下降最快
    • 在每轮训练中, Z m = i = 1 N w m i e x p ( α m y i G m ( x i ) ) Z_m=\sum_{i=1}^Nw_{mi}exp(-\alpha_my_iG_m(x_i)) w m i w_{mi} 在上一轮训练中确定, G m ( x i ) G_m(x_i) 在本轮训练中确定;
    • min Z m \min Z_m α m \alpha_m ,使训练误差上界下降最快
      Z m α m = i = 1 N w m i y i G m ( x i ) e x p ( α m y i G m ( x i ) ) = 0 \frac{\partial Z_m}{\partial \alpha_m} = \sum_{i=1}^N-w_{mi}y_iG_m(x_i)exp(-\alpha_my_iG_m(x_i)) = 0
      算法中 α m = 1 2 l o g 1 e m e m \alpha_m=\frac{1}{2}log\frac{1-e_m}{e_m} 就是上式的一个解
  • 2.二分类问题AdaBoost的训练误差界
    m = 1 M Z m = m = 1 M [ 2 e m ( 1 e m ) ] = m = 1 M 1 4 γ m 2 e x p ( 2 m = 1 M γ m 2 ) \prod_{m=1}^MZ_m=\prod_{m=1}^M[2\sqrt{e_m(1-e_m)}] = \prod_{m=1}^M\sqrt{1-4\gamma^2_m} \leqslant exp(-2\prod_{m=1}^M\gamma^2_m)
    其中
    e m = y i G m ( x i ) w m i = i = 1 N w m i I ( y i G m ( x i ) ) e_m =\sum_{y_i\neq G_m(x_i)}w_{mi} = \sum_{i=1}^Nw_{mi}I(y_i \neq G_m(x_i)) ,
    γ m = 1 2 e m \gamma_m = \frac{1}{2}-e_m ,
    此定理说明:

    • e m e_m 代表每轮的分类误差率, e m e_m 越小分类效果越好, r m r_m 越大
    • r m r_m 代表当前基本分类器对随机猜测结果的提升程度
    • 不等式 m = 1 M Z m e x p ( 2 m = 1 M γ m 2 ) \prod_{m=1}^MZ_m \leqslant exp(-2\prod_{m=1}^M\gamma^2_m) 代表,随着训练轮数m的增加,训练误差减少,且降低的速度很快(指数)
AdaBoost算法的解释
  • 模型:二分类加法模型, f ( x ) = m = 1 M α m G m ( x ) f(x) = \sum_{m=1}^M\alpha_mG_m(x)
  • 损失函数:指数函数, L = e x p ( y f ( x ) ) L= \sum exp(-yf(x))
  • 学习算法:向前分步算法

在第m轮学习时,使损失函数最小,得到 α m , G m ( x ) \alpha_m,G_m(x)
( α m , G m ( x ) ) = a r g min α , G i = 1 N e x p ( y i f m ( x i ) ) = a r g min α , G i = 1 N e x p [ y i ( f m 1 ( x i ) + α m G m ( x i ) ) ] \begin{aligned} (\alpha_m,G_m(x)) &= arg\min_{\alpha,G}\sum _{i=1}^Nexp(-y_if_m(x_i))\\ &=arg\min_{\alpha,G}\sum _{i=1}^Nexp[-y_i(f_{m-1}(x_i) + \alpha_mG_m(x_i))] \end{aligned}

8.3.2 提升树
  • 提升树是以树做基本分类器的提升方法
    • 回归树,解决回归问题;当采用的损失函数不同时,可用算法不同
      • 向前分布算法:采用平方误差损失函数
      • 梯度提升算法:其他损失函数
    • 分类树,解决分类问题(二分类树的情况与AdaBoost以分类树做基本分类器的情况类似)
  • 新一轮的训练模型根据损失函数最小化求取
  • 基本分类器的组和方式: 相加 f M ( x ) = m = 1 M T ( X ; Θ m ) f_M(x)=\sum_{m=1}^MT(X;\Theta_m)
    T ( X ; Θ m ) T(X;\Theta_m) 表示决策树
CART生成二叉回归树算法
  • 模型表示:将输入空间X划分为两个单元R1,R2;对应不同的固定输出c1,c2。将模型表示为 f ( x ) = m = 1 2 c m I ( x R m ) f(x) = \sum_{m=1}^2c_m I(x \in R_m)
  • 损失函数:平方误差 x i R m ( y i f ( x i ) ) 2 = x i R 1 ( c 1 y i ) 2 + x i R 2 ( c 2 y i ) 2 \sum_{x_i \in R_m}(y_i - f(x_i))^2 = \sum_{x_i \in R_1}(c_1-y_i)^2 + \sum_{x_i \in R_2}(c_2-y_i)^2
    损失函数最小化可得,对于每个确定区域, f ( x ) = c m = 1 n x i R m y i f(x) = c_m = \frac{1}{n}\sum_{x_i\in R_m}y_i
  • 算法:
    • (1)对于每个样本, i = 1 , 2 ,   , N i=1,2,\cdots,N
      • (a)选择该样本 x x 值,将输入空间切分为 X x , X > x X \leqslant x,X > x 两部分;对样本集切分为两个子集
      • (b)分别计算两个子集的 y y 值平均值 1 n m x R m y \frac{1}{n_m}\sum_{x\in R_m} y ,做二叉树模型的参数 c m c_m
      • © 计算损失函数 L = x i R 1 ( y i c 1 ) 2 + x j R 2 ( y j c 2 ) 2 L = \sum_{x_i \in R_1}(y_i - c_1)^2 + \sum_{x_j \in R_2}(y_j - c_2)^2
    • (2)比较所有的损失函数,损失函数最小时的样本 x x 值为最优切分点。
  • 算法总结:
    min j , s [ min c 1 x i R 1 ( j , s ) ( y i c 1 ) 2 + min c 2 x j R 2 ( j , s ) ( y j c 2 ) 2 ] \min_{j,s}[\min_{c_1}\sum_{x_i \in R_1(j,s)}(y_i-c1)^2 + \min_{c_2}\sum_{x_j \in R_2(j,s)}(y_j-c2)^2]
    即找到使损失函数最小的第j个样本的x取值s,和使损失函数最小的c1,c2(取平均值即可)
提升树算法
  • 模型:将输入空间划分为J个互不相交的区域 R 1 , R 2 ,   , R J R_1,R_2,\cdots,R_J ,并在每个区域上确定输出的常量 c j c_j ,树可以表示为
    T ( x ; Θ ) = j = 1 J c j I ( x R j ) T(x;\Theta) = \sum_{j=1}^Jc_jI(x \in R_j)
    其中参数 Θ = { ( R 1 , c 1 ) , ( R 2 , c 2 ) ,   , ( R J , c J ) } \Theta = \{(R_1,c_1),(R_2,c_2),\cdots,(R_J,c_J)\} 表示树的区域划分和各区域上的常数,J是回归树的复杂度即叶节点个数

  • 损失函数:平方误差损失函数,每轮训练的损失函数为
    L ( y , f ( x ) ) = ( y f ( x ) ) 2 L ( y , f m 1 ( x ) + T ( x ; Θ ) ) = [ y f m 1 ( x ) T ( x ; Θ ) ] 2 = [ r T ( x ; Θ ) ] 2 \begin{aligned} L(y,f(x)) &= (y-f(x))^2 \\ L(y,f_{m-1}(x) + T(x;\Theta))&=[y-f_{m-1}(x) - T(x;\Theta)]^2 \\ &=[r - T(x;\Theta)]^2 \end{aligned}
    其中 r = y f m 1 ( x ) r=y-f_{m-1}(x) 是当前模型拟合数据的残差。因此训练本轮回归树的数据源为上一轮训练结果( f m 1 ( x ) = i = 1 m 1 T ( x , Θ i ) f_{m-1}(x)=\sum_{i=1}^{m-1}T(x,\Theta_i) )的残差

  • 算法
    输入:训练数据集 T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) ,   , ( x N , y N ) } T=\{(x_1,y_1),(x_2,y_2),\cdots,(x_N,y_N)\}
    输出:提升树 f M ( x ) f_M(x)

    • (1)初始化 f 0 ( x ) = 0 f_0(x) = 0
    • (2)对m=1,2,…,M
      • (a) 按照 r = y i f m 1 ( x i ) , i = 1 , 2 ,   , N r=y_i-f_{m-1}(x_i),i=1,2,\cdots,N 计算残差
      • (b)拟合残差 r r 学习一个回归树,得到 T ( x ; Θ m ) T(x;\Theta_m)
      • (c )更新 f m = f m 1 + T ( x ; Θ m ) f_m = f_{m-1} + T(x;\Theta_m)
    • (3)得到回归问题提升树 f M ( x ) = m = 1 M T ( x ; Θ m ) f_M(x) = \sum_{m=1}^MT(x;\Theta_m)
梯度提升算法
  • 利用损失函数的负梯度作为残差的近似值,拟合一个回归树
  • 算法:
    输入:训练数据集 T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) ,   , ( x N , y N ) , } T=\{(x_1,y_1),(x_2,y_2),\cdots,(x_N,y_N),\} ,其中 x i X R n , y i Y R x_i \in X \subseteq R^n,y_i \in Y \subseteq R ;损失函数 L ( y , f ( x ) ) L(y,f(x))
    输出:提升树 f ^ ( x ) \hat{f}_(x)
    • (1)初始化(估计使损失函数极小化的常数值c,是只有根节点的树)
      f 0 ( x ) = a r g min c i = 1 N L ( y i , c ) f_0(x) = arg\min_c \sum_{i=1}^NL(y_i,c)
    • (2)对m=1,2,…,M
      • (a)对i=1,2,…,N计算损失函数的负梯度在当前模型的值
        r m i = [ L ( y i , f ( x i ) ) f ( x i ) ] f ( x ) = f m 1 ( x ) r_{mi} = -\Bigg[\frac{\partial L(y_i,f(x_i))}{\partial f(x_i)}\Bigg] _{f(x) = f_{m-1}(x)}
        对于一般的损失函数,此值为残差的估计。假设 L = [ y f ( x ) ] 2 , L / f = 2 ( y f ( x ) ) L=[y - f(x)]^2, \partial L/\partial f = -2(y-f(x)) ; 残差前有系数,因此需要根据(c )步计算 c m c_m )
      • (b) 对 r m i r_{mi} 拟合一个回归树,得到第m棵树的叶节点区域 R m j , j = 1 , 2 ,   , J R_{mj},j=1,2,\cdots,J
      • (c ) 对 j = 1 , 2 ,   , J j=1,2,\cdots,J 使损失函数最小化求得该区域回归树参数c。计算
        c m j = a r g min c x i R m j L ( y i , f m 1 ( x i ) + c ) c_{mj} = arg\min_c \sum_{x_i \in R_{mj}}L(y_i,f_{m-1}(x_i) + c)
        利用线性搜索估计叶节点区域的值,使损失函数极小化(c是待求的最优值 c m j c_{mj} )
      • (d)更新 f m ( x ) = f m 1 ( x ) + j = 1 J c m j I ( x R m j ) f_m(x) = f_{m-1}(x) + \sum_{j=1}^Jc_{mj}I(x\in R_{mj})
  • 得到回归树
    f ^ ( x ) = f M ( x ) = m = 1 M j = 1 J c m j I ( x R m j ) \hat{f}(x) = f_M(x) = \sum_{m=1}^M\sum_{j=1}^Jc_{mj}I(x\in R_{mj})
    对于对于每个待预测值,在每棵基本树上只有1个区域内 I I 函数不为0,此函数最终只有M项

8.4 AdaBoost训练误差证明

8.4.1 训练误差上界

1 N i = 1 N I ( G ( x i ) y i ) 1 N i = 1 N e x p ( y i f ( x i ) ) = m = 1 M Z m \frac{1}{N}\sum_{i=1}^NI(G(x_i)\neq y_i) \leqslant \frac{1}{N}\sum_{i=1}^Nexp(-y_if(x_i)) = \prod_{m=1}^MZ_m
证:

  • (1)证 I ( G ( x i ) y i ) e x p ( y i f ( x i ) ) I(G(x_i)\neq y_i) \leqslant exp(-y_if(x_i))
    G ( x i ) y i G(x_i)\neq y_i ,此时 y i f ( x i ) > 0 -y_if(x_i)>0 ,因此 e x p ( y i f ( x i ) ) > I ( G ( x i ) y i ) = 1 exp(-y_if(x_i))>I(G(x_i)\neq y_i)=1 ;
    G ( x i ) = y i G(x_i)= y_i ,此时 y i f ( x i ) < 0 -y_if(x_i)<0 ,因此 e x p ( y i f ( x i ) ) > I ( G ( x i ) y i ) = 0 exp(-y_if(x_i))>I(G(x_i)\neq y_i)=0 ;

  • (2)证 1 N i = 1 N e x p ( y i f ( x i ) ) = m Z m \frac{1}{N}\sum_{i=1}^Nexp(-y_if(x_i)) = \prod_mZ_m
    1 N i = 1 N e x p ( y i f ( x i ) ) = 1 N i = 1 N e x p ( y i m = 1 M α m G m ( x i ) ) = i = 1 N w 1 i e x p ( y i m = 1 M α m G m ( x i ) ) = i = 1 N w 1 i m = 1 M e x p ( y i α m G m ( x i ) ) = i = 1 N w 1 i e x p ( y i α 1 G 1 ( x i ) ) m = 2 M e x p ( y i α m G m ( x i ) ) = Z 1 i = 1 N w 2 i m = 2 M e x p ( y i α m G m ( x i ) ) = j = 1 M 1 Z j i = 1 N w M i e x p ( y i α M G M ( x i ) ) = m = 1 M Z m \begin{aligned} &\frac{1}{N}\sum_{i=1}^Nexp(-y_if(x_i)) \\ &= \frac{1}{N}\sum_{i=1}^Nexp(-y_i\sum_{m=1}^M\alpha_mG_m(x_i)) \\ &= \sum_{i=1}^Nw_{1i}exp(-y_i\sum_{m=1}^M\alpha_mG_m(x_i)) = \sum_{i=1}^Nw_{1i}\prod_{m=1}^Mexp(-y_i\alpha_mG _m(x_i)) \\ &=\sum_{i=1}^Nw_{1i}exp(-y_i\alpha_1G _1(x_i))\prod_{m=2}^Mexp(-y_i\alpha_mG _m(x_i)) \\ &= Z_1\sum_{i=1}^Nw_{2i}\prod_{m=2}^Mexp(-y_i\alpha_mG _m(x_i)) = \prod_{j=1}^{M-1}Z_j\sum_{i=1}^Nw_{Mi}exp(-y_i\alpha_MG_M(x_i)) \\ &= \prod_{m=1}^MZ_m \end{aligned}

8.4.2二分类问题AdaBoost的训练误差界

m = 1 M Z m = m = 1 M [ 2 e m ( 1 e m ) ] = m = 1 M 1 4 γ m 2 e x p ( 2 m = 1 M γ m 2 ) \prod_{m=1}^MZ_m=\prod_{m=1}^M[2\sqrt{e_m(1-e_m)}] = \prod_{m=1}^M\sqrt{1-4\gamma^2_m} \leqslant exp(-2\prod_{m=1}^M\gamma^2_m)
证:

  • 前半部分
    Z m = i = 1 N w m i e x p ( α m y i G m ( x i ) ) = y i = G m ( x i ) w m i e α m + y i G m ( x i ) w m i e α m = ( 1 e m ) e α m + e m e α m = 2 e m ( 1 e m ) = 1 4 γ m 2 \begin{aligned} Z_m &=\sum_{i=1}^Nw_{mi}exp(-\alpha_my_iG_m(x_i)) \\ &= \sum_{y_i=G_m(x_i)}w_{mi}e^{-\alpha_m} + \sum_{y_i\neq G_m(x_i)}w_{mi}e^{\alpha_m} \\ &= (1-e_m)e^{-\alpha_m} + e_me^{\alpha_m} \\ &= 2\sqrt{e_m(1-e_m)} = \sqrt{1-4\gamma^2_m} \end{aligned}
  • 后半部分: m = 1 M 1 4 γ m 2 e x p ( 2 m = 1 M γ m 2 ) \prod_{m=1}^M\sqrt{1-4\gamma^2_m} \leqslant exp(-2\prod_{m=1}^M\gamma^2_m)
    • f ( x ) = ( 1 x ) 1 / 2 f(x)=(1-x)^{1/2} ,泰勒展开
      • 求导, f ( x ) = 1 2 ( 1 x ) 1 2 , f ( x ) = 1 4 ( 1 x ) 3 2 f'(x) = -\frac{1}{2}(1-x)^{-\frac{1}{2}},f''(x)=-\frac{1}{4}(1-x)^{-\frac{3}{2}}

      • 展开, f ( x ) = f ( 0 ) + x f ( 0 ) + 1 2 x 2 f ( 0 ) + . . . . 1 1 2 x 1 8 x 2 f ( 4 r 2 ) 1 2 r 2 2 r 4 \begin{aligned}f(x) &= f(0) + xf'(0)+\frac{1}{2}x^2f''(0)+....\\&\approx1-\frac{1}{2}x-\frac{1}{8}x^2 \\f(4r^2)&\approx1-2r^2-2r^4\end{aligned}

    • g ( x ) = e x g(x)=e^x ,泰勒展开
      • 求导, g ( x ) = e x , g ( x ) = e x g'(x) = e^x,g''(x)=e^x
      • 展开, g ( x ) = g ( 0 ) + x g ( 0 ) + 1 2 x 2 g ( 0 ) + . . . . 1 + x + 1 2 x 2 g ( 2 r 2 ) 1 2 r 2 + 2 r 4 \begin{aligned}g(x) &= g(0) + xg'(0)+\frac{1}{2}x^2g''(0)+....\\&\approx1+x+\frac{1}{2}x^2 \\g(-2r^2)&\approx1-2r^2+2r^4\end{aligned}
    • f ( 4 r 2 ) < g ( 2 r 2 ) f(4r^2)<g(-2r^2)

猜你喜欢

转载自blog.csdn.net/liuerin/article/details/89946259