AdaBoost算法的详细数学推导过程!!

2024-01-08 17:36:44

AdaBoost(Adaptive Boosting)

?

? 提升(boosting)方法是一种常用的统计学习方法,应用广泛且有效。在分类问题 中,它通过改变训练样本的权重,学习多个分类器,并将这些分类器进行线性组合,提高分类的性能

? 对于分类问题而言,给定一个训练样本集,求比较粗糙的分类规则(弱分类器)要 比求精确的分类规则(强分类器)容易得多。提升方法就是从弱学习算法出发,反复学习,得到一系列弱分类器(又称为基本分类器),然后组合这些弱分类器,构成一个强分类器。大多数的提升方法都是改变训练数据的概率分布(训练数据的权值分布), 针对不同的训练数据分布调用弱学习算法学习一系列弱分类器。

? 这样,对提升方法来说,有两个问题需要回答:一是在每一轮如何改变训练数据的权值或概率分布;二是如何将弱分类器组合成一个强分类器。关于第1个问 题,AdaBoost的做法是,提高那些被前一轮弱分类器错误分类样本的权值,而降低那些被正确分类样本的权值。这样一来,那些没有得到正确分类的数据,由于其权值的 加大而受到后一轮的弱分类器的更大关注。于是,分类问题被一系列的弱分类器"分而泊之"。至于第2个问题,即弱分类器的组合,AdaBoost采取加权多数表决的方法。 具体地,加大分类误差率小的弱分类器的权值,使其在表决中起较大的作用:减小分类误差率大的弱分类器的权值,使其在表决中起较小的作用。

? AdaBoost 算法还有另一个解释, 即可以认为 AdaBoost 算法是模型为**加法模型、 损失函数为指数函数、 学习算法为前向分步算法时的二类分类学习方法。**

-------------------------------------------------------------------------------------------------------------------------------------

输入:线性可分训练数据集 T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , … , ( x N , y N ) } T= \{(x_1,y_1), (x_2,y_2),…, (x_N,y_N)\} T={(x1?,y1?),(x2?,y2?),,(xN?,yN?)}

? 其中, x i ∈ X = R n , y i ∈ Y = { ? 1 , + 1 } , i = 1 , 2 , … , N x_i∈X=R^n,y_i∈Y=\{-1,+1\}, i = 1,2,…,N xi?X=Rn,yi?Y={?1,+1},i=1,2,,N;弱学习算法

输出: 最终分类器 G ( x ) G(x) G(x) f ( x ) = s i g n ( G ( x ) ) f(x)=sign(G(x)) f(x)=sign(G(x))

优化问题:(损失函数为指数损失函数,即: L ( y , f ( x ) ) = e x p [ ? y f ( x ) ] L(y, f(x)) = exp[-yf(x)] L(y,f(x))=exp[?yf(x)]

目标是使前向分步算法得到的 α m \alpha_m αm? G m ( x ) G_m(x) Gm?(x) 使 f m ( x ) f_m(x) fm?(x) 在训练数据集T 上的指数损失最小:
( α m , G m ( x ) ) = a r g ? m i n α , G ∑ i = 1 N e x p [ ? y i ( f m ( x i ) ) ] = a r g ? m i n α , G ∑ i = 1 N e x p [ ? y i ( f m ? 1 ( x i ) + α G ( x i ) ) ] (\alpha_m,G_m(x))=arg\ \underset{\alpha,G}{min}\sum_{i=1}^Nexp[-y_i(f_{m}(x_i))]\\ =arg\ \underset{\alpha,G}{min}\sum_{i=1}^Nexp[-y_i(f_{m-1}(x_i)+\alpha G(x_i))] (αm?,Gm?(x))=arg?α,Gmin?i=1N?exp[?yi?(fm?(xi?))]=arg?α,Gmin?i=1N?exp[?yi?(fm?1?(xi?)+αG(xi?))]
上面损失函数又可以写为:
( α m , G m ( x ) ) = a r g ? m i n α , G ∑ i = 1 N e x p [ ? y i ( f m ? 1 ( x i ) + α G ( x i ) ) ] = a r g ? m i n α , G ∑ i = 1 N w ^ m i e x p [ ? y i α G ( x i ) ] (\alpha_m,G_m(x))=arg\ \underset{\alpha,G}{min}\sum_{i=1}^Nexp[-y_i(f_{m-1}(x_i)+\alpha G(x_i))]\\ =arg\ \underset{\alpha,G}{min}\sum_{i=1}^N \hat w_{mi}exp[-y_i \alpha G(x_i)]\\ (αm?,Gm?(x))=arg?α,Gmin?i=1N?exp[?yi?(fm?1?(xi?)+αG(xi?))]=arg?α,Gmin?i=1N?w^mi?exp[?yi?αG(xi?)]
这里
w ^ m i = e x p [ ? y i f m ? 1 ( x ) ] \hat w_{mi}=exp[-y_if_{m-1}(x)] w^mi?=exp[?yi?fm?1?(x)]

-------------------------------------------------------------------------------------------------------------------------------------

前向分布算法学习的是加法模型,当基函数为基本分类器时,该加法模型等价于AdaBoost的最终分类器
f ( x ) = ∑ m = 1 M α m G m ( x ) f(x)=\sum_{m=1}^M \alpha_mG_m(x) f(x)=m=1M?αm?Gm?(x)
第m-1轮迭代:
f m ? 1 ( x ) = f m ? 2 ( x ) + α m ? 1 G m ? 1 ( x ) = α 1 G 1 ( x ) + α 2 G 2 ( x ) + . . . + α m ? 1 G m ? 1 ( x ) f_{m-1}(x)=f_{m-2}(x)+\alpha_{m-1}G_{m-1}(x)\\ =\alpha_1G_1(x)+\alpha_2G_2(x)+...+\alpha_{m-1}G_{m-1}(x) fm?1?(x)=fm?2?(x)+αm?1?Gm?1?(x)=α1?G1?(x)+α2?G2?(x)+...+αm?1?Gm?1?(x)
第m轮迭代:
f m ( x ) = f m ? 1 ( x ) + α m G m ( x ) = α 1 G 1 ( x ) + α 2 G 2 ( x ) + . . . + α m G m ( x ) f_{m}(x)=f_{m-1}(x)+\alpha_{m}G_{m}(x)\\ =\alpha_1G_1(x)+\alpha_2G_2(x)+...+\alpha_{m}G_{m}(x) fm?(x)=fm?1?(x)+αm?Gm?(x)=α1?G1?(x)+α2?G2?(x)+...+αm?Gm?(x)
-------------------------------------------------------------------------------------------------------------------------------------

AdaBoost算法流程

输入:训练数据集 T = { ( x 1 , y 1 ) 、 ( x 2 , y 2 ) , . . . , ( x N , y N ) } T=\{(x_1,y_1)、(x_2,y_2),...,(x_N,y_N)\} T={(x1?,y1?)(x2?,y2?),...,(xN?,yN?)}其中 x i ∈ X ? R n , y i ∈ Y = { ? 1 , + 1 } x_i∈X\subset R^n, y_i∈ Y = \{-1, +1 \} xi?X?Rn,yi?Y={?1,+1};弱学习算法;

输出:最终分类器G(x)。

(1)初始化训练数据的权值分布
D 1 = ( w 11 , w 12 , . . . , w 1 i , . . . , w 1 N ) , ??? w 1 i = 1 N , ??? i = 1 , 2 , . . . , N D_1=(w_{11},w_{12},...,w_{1i},...,w_{1N}),\ \ \ w_{1i}=\frac1N,\ \ \ i=1,2,...,N D1?=(w11?,w12?,...,w1i?,...,w1N?),???w1i?=N1?,???i=1,2,...,N
(2)对 m = 1 , 2 , . . . , M m=1,2,...,M m=1,2,...,M

? (a)使用具有权值分布 D m D_m Dm?的训练数据集学习,得到基本分类器
G m ( x ) : X → { ? 1 , ? + 1 } G_m(x):X→\{-1,\ +1\} Gm?(x):X{?1,?+1}
? (b)计算 G ( x ) G(x) G(x)在训练数据集上的分类误差率
e m = ∑ i = 1 N P ( G m ( x i ) ≠ y i ) = ∑ i = 1 N w m i I ( G m ( x i ) ≠ y i ) e_m=\sum_{i=1}^NP(G_m(x_i)≠y_i)=\sum_{i=1}^Nw_{mi}I(G_m(x_i)≠y_i) em?=i=1N?P(Gm?(xi?)=yi?)=i=1N?wmi?I(Gm?(xi?)=yi?)
? (c)计算 G m ( x ) G_m(x) Gm?(x)的系数
α m = 1 2 l o g 1 ? e m e m \alpha_m=\frac12log\frac{1-e_m}{e_m} αm?=21?logem?1?em??
? (d)更新训练数据集的权值分布
D m + 1 = ( w m + 1 , 1 , w m + 1 , 2 , . . . , w m + 1 , i , . . . , 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 Z m = ∑ i = 1 N e x p ( ? α m y i G m ( x i ) ) 是规范化因子 , 它使得 D m + 1 成为一个概率分布 D_{m+1}=(w_{m+1,1},w_{m+1,2},...,w_{m+1,i},...,w_{m+1,N})\\ \\ w_{m+1,i}=\frac{w_{mi}}{Z_m}exp(-\alpha_my_iG_m(x_i)),i=1,2,...,N\\ \\ Z_m=\sum_{i=1}^Nexp(-\alpha_my_iG_m(x_i))是规范化因子,它使得D_{m+1}成为一个概率分布 Dm+1?=(wm+1,1?,wm+1,2?,...,wm+1,i?,...,wm+1,N?)wm+1,i?=Zm?wmi??exp(?αm?yi?Gm?(xi?)),i=1,2,...,NZm?=i=1N?exp(?αm?yi?Gm?(xi?))是规范化因子,它使得Dm+1?成为一个概率分布
(3)构建基本分类器的线性组合
f ( x ) = ∑ m = 1 M α m G m ( x ) f(x)=\sum_{m=1}^M\alpha_mG_m(x) f(x)=m=1M?αm?Gm?(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)) G(x)=sign(f(x))=sign(m=1M?αm?Gm?(x))

前向分布算法

?

? AdaBoost 算法是模型为加法模型、 损失函数为指数函数、 学习算法为前向分步算法时的二类分类学习方法。

加法模型:
f ( x ) = ∑ m = 1 M β m b ( x ; γ m ) f(x)=\sum_{m=1}^M\beta_mb(x;γ_m) f(x)=m=1M?βm?b(x;γm?)
其中, b ( x ; γ m ) b(x;γ_m) b(x;γm?)为基函数, γ m γ_m γm? 为基函数的参数, β m \beta_m βm?为基函数的系数。

? 学习该加法模型成为损失函数极小化问题:
m i n β m , γ m ∑ i = 1 N L ( y i , ∑ m = 1 M β m b ( x i ; γ m ) ) \underset{\beta_m,γ_m}{min}\sum_{i=1}^NL(y_i,\sum_{m=1}^M\beta_mb(x_i;γ_m)) βm?,γm?min?i=1N?L(yi?,m=1M?βm?b(xi?;γm?))
? 前向分步算法(forward stagewise algorithm)求解这一优化问题的想法是:因为学习的是加法模型,如果能够从前向后,每一步只学习一个基函数及其系数,逐步逼近优化目标函数式,那么就可以简化优化的复 杂度。

? 每一步都只需要优化如下损失函数:
m i n β , γ ∑ i = 1 N L ( y i , β b ( x i ; γ ) ) \underset{\beta,γ}{min}\sum_{i=1}^NL(y_i,\beta b(x_i;γ)) β,γmin?i=1N?L(yi?,βb(xi?;γ))

前向分布算法的算法流程

输入:训练数据集 T = { ( x 1 , y 1 ) 、 ( x 2 , y 2 ) , . . . , ( x N , y N ) } T=\{(x_1,y_1)、(x_2,y_2),...,(x_N,y_N)\} T={(x1?,y1?)(x2?,y2?),...,(xN?,yN?)}损失函数 L ( y , f ( x ) ) L(y,f(x)) L(y,f(x));函数集 { b ( x ; γ ) } \{b(x;γ)\} {b(x;γ)}

输出:加法模型 f ( x ) f(x) f(x)

(1)初始化 f 0 ( x ) = 0 f_0(x)=0 f0?(x)=0

(2)对 m = 1 , 2 , . . . , M m=1,2,...,M m=1,2,...,M

? (a)极小化损失函数
( β m , γ m ) = a r g ? m i n β , γ ∑ i = 1 N L ( y i , f m ? 1 ( x i ) + β b ( x i ; γ ) ) (\beta_m,γ_m)=arg\ \underset{\beta,γ}{min}\sum_{i=1}^NL(y_i,f_{m-1}(x_i)+\beta b(x_i;γ)) (βm?,γm?)=arg?β,γmin?i=1N?L(yi?,fm?1?(xi?)+βb(xi?;γ))
得到参数 β m \beta_m βm? γ m γ_m γm?

? (b)更新
f m ( x ) = f m ? 1 + β m b ( x ; γ m ) f_m(x)=f_{m-1}+\beta_mb(x;γ_m) fm?(x)=fm?1?+βm?b(x;γ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;γ_m) f(x)=fM?(x)=m=1M?βm?b(x;γm?)
这样,前向分布算法将同时求解从m=1到M的所有参数 β m , γ m \beta_m,γ_m βm?,γm? 的优化问题简化为逐次求解各个 β m , γ m \beta_m,γ_m βm?,γm?的优化问题

前向分布算法与AdaBoost

前向分布算法当基函数为基本分类器时,该加法模型等价于AdaBoost的最终分类器
f ( x ) = ∑ m = 1 M α m G m ( x ) f(x)=\sum_{m=1}^M \alpha_mG_m(x) f(x)=m=1M?αm?Gm?(x)
当前向分布算法的损失函数是指数损失函数时,其学习的具体操作等价于AdaBoost算法学习的具体操作。
L ( y , f ( x ) ) = e x p [ ? y f ( x ) ] L(y,f(x))=exp[-yf(x)] L(y,f(x))=exp[?yf(x)]

假设经过m-1轮迭代前向分布算法已经得到 f m ? 1 ( x ) f_{m-1}(x) fm?1?(x)
f m ? 1 ( x ) = f m ? 2 ( x ) + α m ? 1 G m ? 1 ( x ) = α 1 G 1 ( x ) + α 2 G 2 ( x ) + . . . + α m ? 1 G m ? 1 ( x ) f_{m-1}(x)=f_{m-2}(x)+\alpha_{m-1}G_{m-1}(x)\\ =\alpha_1G_1(x)+\alpha_2G_2(x)+...+\alpha_{m-1}G_{m-1}(x) fm?1?(x)=fm?2?(x)+αm?1?Gm?1?(x)=α1?G1?(x)+α2?G2?(x)+...+αm?1?Gm?1?(x)
第m轮迭代得到 α m , G m ( x ) , f m ( x ) \alpha_m,G_m(x),f_m(x) αm?,Gm?(x),fm?(x)
f m ( x ) = f m ? 1 ( x ) + α m G m ( x ) = α 1 G 1 ( x ) + α 2 G 2 ( x ) + . . . + α m G m ( x ) f_{m}(x)=f_{m-1}(x)+\alpha_{m}G_{m}(x)\\ =\alpha_1G_1(x)+\alpha_2G_2(x)+...+\alpha_{m}G_{m}(x) fm?(x)=fm?1?(x)+αm?Gm?(x)=α1?G1?(x)+α2?G2?(x)+...+αm?Gm?(x)
目标是使前向分步算法得到的 α m \alpha_m αm? G m ( x ) G_m(x) Gm?(x) 使 f m ( x ) f_m(x) fm?(x) 在训练数据集T 上的指数损失最小:
( α m , G m ( x ) ) = a r g ? m i n α , G ∑ i = 1 N e x p [ ? y i ( f m ( x i ) ) ] = a r g ? m i n α , G ∑ i = 1 N e x p [ ? y i ( f m ? 1 ( x i ) + α G ( x i ) ) ] (\alpha_m,G_m(x))=arg\ \underset{\alpha,G}{min}\sum_{i=1}^Nexp[-y_i(f_{m}(x_i))]\\ =arg\ \underset{\alpha,G}{min}\sum_{i=1}^Nexp[-y_i(f_{m-1}(x_i)+\alpha G(x_i))] (αm?,Gm?(x))=arg?α,Gmin?i=1N?exp[?yi?(fm?(xi?))]=arg?α,Gmin?i=1N?exp[?yi?(fm?1?(xi?)+αG(xi?))]
上面损失函数又可以写为:
( α m , G m ( x ) ) = a r g ? m i n α , G ∑ i = 1 N e x p [ ? y i ( f m ? 1 ( x i ) + α G ( x i ) ) ] = a r g ? m i n α , G ∑ i = 1 N w ^ m i e x p [ ? y i α G ( x i ) ] (\alpha_m,G_m(x))=arg\ \underset{\alpha,G}{min}\sum_{i=1}^Nexp[-y_i(f_{m-1}(x_i)+\alpha G(x_i))]\\ =arg\ \underset{\alpha,G}{min}\sum_{i=1}^N \hat w_{mi}exp[-y_i \alpha G(x_i)]\\ (αm?,Gm?(x))=arg?α,Gmin?i=1N?exp[?yi?(fm?1?(xi?)+αG(xi?))]=arg?α,Gmin?i=1N?w^mi?exp[?yi?αG(xi?)]
这里
w ^ m i = e x p [ ? y i f m ? 1 ( x ) ] \hat w_{mi}=exp[-y_if_{m-1}(x)] w^mi?=exp[?yi?fm?1?(x)]

因为 w ^ m i \hat w_{mi} w^mi?既不依赖 α \alpha α也不依赖G,所以与最小化无关。但是 w ^ m i \hat w_{mi} w^mi?依赖于 f m ? 1 ( x ) f_{m-1}(x) fm?1?(x),随着每一轮的迭代而发生改变。

求解
( α m , G m ( x ) ) = a r g ? m i n α , G ∑ i = 1 N w ^ m i e x p [ ? y i α G ( x i ) ] (\alpha_m,G_m(x))=arg\ \underset{\alpha,G}{min}\sum_{i=1}^N \hat w_{mi}exp[-y_i \alpha G(x_i)]\\ (αm?,Gm?(x))=arg?α,Gmin?i=1N?w^mi?exp[?yi?αG(xi?)]
分为两步:第一步,首先求 G m ? ( x ) G_m^*(x) Gm??(x);第二步,求 α m ? \alpha^*_m αm??

①:对于任意的 α > 0 \alpha > 0 α0,使得上式最小的 G ( x ) G(x) G(x)由下式得到:
G m ? ( x ) = a r g ? m i n G ∑ i = 1 N w ^ m i I ( ? y i ≠ G ( x i ) ) G_m^*(x)=arg\ \underset{G}{min}\sum_{i=1}^N \hat w_{mi}I(-y_i≠G(x_i))\\ Gm??(x)=arg?Gmin?i=1N?w^mi?I(?yi?=G(xi?))
推导如下:
∑ i = 1 N w ^ m i e ? y i α G ( x i ) = ∑ y i = G ( x i ) w ^ m i e ? α + ∑ y i ≠ G ( x i ) w ^ m i e α = ∑ y i ≠ G ( x i ) w ^ m i e α ? ∑ y i ≠ G ( x i ) w ^ m i e ? α + ∑ y i ≠ G ( x i ) w ^ m i e ? α + ∑ y i = G ( x i ) w ^ m i e ? α = ∑ i = 1 N w ^ m i I ( y i ≠ G ( x i ) ) ( e α ? e ? α ) + ∑ i = 1 N w ^ m i e ? α \sum_{i=1}^N \hat w_{mi}e^{-y_i\alpha G(x_i)}=\sum_{y_i=G(x_i)} \hat w_{mi}e^{-\alpha}+\sum_{y_i≠G(x_i)} \hat w_{mi}e^{\alpha}\\ \\ =\sum_{y_i≠G(x_i)} \hat w_{mi}e^{\alpha}-\sum_{y_i≠G(x_i)} \hat w_{mi}e^{-\alpha}+\sum_{y_i≠G(x_i)} \hat w_{mi}e^{-\alpha}+\sum_{y_i=G(x_i)} \hat w_{mi}e^{-\alpha}\\ \\ =\sum_{i=1}^N \hat w_{mi}I(y_i≠G(x_i))(e^{\alpha}-e^{-\alpha})+\sum_{i=1}^N\hat w_{mi}e^{-\alpha}\\ \\ i=1N?w^mi?e?yi?αG(xi?)=yi?=G(xi?)?w^mi?e?α+yi?=G(xi?)?w^mi?eα=yi?=G(xi?)?w^mi?eα?yi?=G(xi?)?w^mi?e?α+yi?=G(xi?)?w^mi?e?α+yi?=G(xi?)?w^mi?e?α=i=1N?w^mi?I(yi?=G(xi?))(eα?e?α)+i=1N?w^mi?e?α
所以:
G m ? ( x ) = a r g ? m i n G ∑ i = 1 N w ^ m i I ( ? y i ≠ G ( x i ) ) G_m^*(x)=arg\ \underset{G}{min}\sum_{i=1}^N \hat w_{mi}I(-y_i≠G(x_i))\\ Gm??(x)=arg?Gmin?i=1N?w^mi?I(?yi?=G(xi?))
②:求解 α m ? \alpha ^*_m αm??
∑ i = 1 N w ^ m i e ? y i α G ( x i ) = ∑ y i = G ( x i ) w ^ m i e ? α + ∑ y i ≠ G ( x i ) w ^ m i e α = ∑ y i ≠ G ( x i ) w ^ m i e α ? ∑ y i ≠ G ( x i ) w ^ m i e ? α + ∑ y i ≠ G ( x i ) w ^ m i e ? α + ∑ y i = G ( x i ) w ^ m i e ? α = ∑ i = 1 N w ^ m i I ( y i ≠ G ( x i ) ) ( e α ? e ? α ) + ∑ i = 1 N w ^ m i e ? α \sum_{i=1}^N \hat w_{mi}e^{-y_i\alpha G(x_i)}=\sum_{y_i=G(x_i)} \hat w_{mi}e^{-\alpha}+\sum_{y_i≠G(x_i)} \hat w_{mi}e^{\alpha}\\ \\ =\sum_{y_i≠G(x_i)} \hat w_{mi}e^{\alpha}-\sum_{y_i≠G(x_i)} \hat w_{mi}e^{-\alpha}+\sum_{y_i≠G(x_i)} \hat w_{mi}e^{-\alpha}+\sum_{y_i=G(x_i)} \hat w_{mi}e^{-\alpha}\\ \\ =\sum_{i=1}^N \hat w_{mi}I(y_i≠G(x_i))(e^{\alpha}-e^{-\alpha})+\sum_{i=1}^N\hat w_{mi}e^{-\alpha}\\ \\ i=1N?w^mi?e?yi?αG(xi?)=yi?=G(xi?)?w^mi?e?α+yi?=G(xi?)?w^mi?eα=yi?=G(xi?)?w^mi?eα?yi?=G(xi?)?w^mi?e?α+yi?=G(xi?)?w^mi?e?α+yi?=G(xi?)?w^mi?e?α=i=1N?w^mi?I(yi?=G(xi?))(eα?e?α)+i=1N?w^mi?e?α
将已求得的 G m ? ( x ) G_m^*(x) Gm??(x)代入,对 α \alpha α求导并令导数为0:
∑ i = 1 N w ^ m i I ( y i ≠ G ( x i ) ) ( e α ? e ? α ) + ∑ i = 1 N w ^ m i e ? α ? α = ∑ i = 1 N w ^ m i I ( y i ≠ G ( x i ) ) e α + ∑ i = 1 N w ^ m i I ( y i ≠ G ( x i ) ) e ? α ? ∑ i = 1 N w ^ m i e ? α = ( ∑ i = 1 N w ^ m i I ( y i ≠ G ( x i ) ) ? ∑ i = 1 N w ^ m i ) e ? α + ∑ i = 1 N w ^ m i I ( y i ≠ G ( x i ) ) e α = ∑ i = 1 N w ^ m i I ( y i ≠ G ( x i ) ) e 2 α + ∑ i = 1 N w ^ m i I ( y i ≠ G ( x i ) ) ? ∑ i = 1 N w ^ m i ( 令 ) = 0 → e 2 α = ∑ i = 1 N w ^ m i ? ∑ i = 1 N w ^ m i I ( y i ≠ G ( x i ) ) ∑ i = 1 N w ^ m i I ( y i ≠ G ( x i ) ) → α = 1 2 l n ∑ i = 1 N w ^ m i ? ∑ i = 1 N w ^ m i I ( y i ≠ G ( x i ) ) ∑ i = 1 N w ^ m i I ( y i ≠ G ( x i ) ) → α = 1 2 l n 1 ? e m e m e m = ∑ i = 1 N w ^ m i I ( y i ≠ G ( x i ) ) ∑ i = 1 N w ^ m i = ∑ i = 1 N w m i I ( y i ≠ G ( x i ) ) = ∑ G m ( X i ) ≠ y i w m i ( 注 : w m i 表示第 m 轮中第 i 个实例的权值 , ∑ i = 1 N w m i = 1 ) \frac{\sum_{i=1}^N \hat w_{mi}I(y_i≠G(x_i))(e^{\alpha}-e^{-\alpha})+\sum_{i=1}^N\hat w_{mi}e^{-\alpha}}{\partial \alpha}\\ \\ =\sum_{i=1}^N \hat w_{mi}I(y_i≠G(x_i))e^{\alpha}+\sum_{i=1}^N \hat w_{mi}I(y_i≠G(x_i))e^{-\alpha}-\sum_{i=1}^N\hat w_{mi}e^{-\alpha}\\ \\ =(\sum_{i=1}^N \hat w_{mi}I(y_i≠G(x_i))-\sum_{i=1}^N\hat w_{mi})e^{-\alpha}+\sum_{i=1}^N \hat w_{mi}I(y_i≠G(x_i))e^{\alpha}\\ \\ =\sum_{i=1}^N \hat w_{mi}I(y_i≠G(x_i))e^{2\alpha}+\sum_{i=1}^N \hat w_{mi}I(y_i≠G(x_i))-\sum_{i=1}^N\hat w_{mi}(令)=0\\ \\ →e^{2\alpha}=\frac{\sum_{i=1}^N\hat w_{mi}-\sum_{i=1}^N \hat w_{mi}I(y_i≠G(x_i))}{\sum_{i=1}^N \hat w_{mi}I(y_i≠G(x_i))}\\ \\ →\alpha = \frac12ln\frac{\sum_{i=1}^N\hat w_{mi}-\sum_{i=1}^N \hat w_{mi}I(y_i≠G(x_i))}{\sum_{i=1}^N \hat w_{mi}I(y_i≠G(x_i))}\\ \\ →\alpha = \frac12ln\frac{1-e_m}{e_m}\\ \\ e_m=\frac{\sum_{i=1}^N \hat w_{mi}I(y_i≠G(x_i))}{\sum_{i=1}^N\hat w_{mi}}=\sum_{i=1}^N w_{mi}I(y_i≠G(x_i))\\ \\ =\sum_{G_m(X_i)≠y_i}w_{mi}(注:w_{mi}表示第m轮中第i个实例的权值,\sum_{i=1}^Nw_{mi}=1) ?αi=1N?w^mi?I(yi?=G(xi?))(eα?e?α)+i=1N?w^mi?e?α?=i=1N?w^mi?I(yi?=G(xi?))eα+i=1N?w^mi?I(yi?=G(xi?))e?α?i=1N?w^mi?e?α=(i=1N?w^mi?I(yi?=G(xi?))?i=1N?w^mi?)e?α+i=1N?w^mi?I(yi?=G(xi?))eα=i=1N?w^mi?I(yi?=G(xi?))e2α+i=1N?w^mi?I(yi?=G(xi?))?i=1N?w^mi?()=0e2α=i=1N?w^mi?I(yi?=G(xi?))i=1N?w^mi??i=1N?w^mi?I(yi?=G(xi?))?α=21?lni=1N?w^mi?I(yi?=G(xi?))i=1N?w^mi??i=1N?w^mi?I(yi?=G(xi?))?α=21?lnem?1?em??em?=i=1N?w^mi?i=1N?w^mi?I(yi?=G(xi?))?=i=1N?wmi?I(yi?=G(xi?))=Gm?(Xi?)=yi??wmi?(:wmi?表示第m轮中第i个实例的权值,i=1N?wmi?=1)
每一轮的权值更新,由:
f m ( x ) = f m ? 1 ( x ) + α m G m ( x ) f_m(x)=f_{m-1}(x)+\alpha_mG_m(x) fm?(x)=fm?1?(x)+αm?Gm?(x)
以及 w ^ m i = e ? y i f m ? i ( x i ) \hat w_{mi}=e^{-y_if_{m-i(x_i)}} w^mi?=e?yi?fm?i(xi?)?可得:
w ^ m + 1 , i = w ^ m i e ? y i α m G m ( x ) \hat w_{m+1,i}=\hat w_{mi}e^{-y_i\alpha_mG_m(x)} w^m+1,i?=w^mi?e?yi?αm?Gm?(x)
至此推导完毕!

文章来源:https://blog.csdn.net/Gaowang_1/article/details/135461372
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。