提公升方法AdaBoost

2021-08-07 11:09:47 字數 3324 閱讀 9595

在每一輪如何改變訓練資料的權值或概率分布

adaboost提高那些被前一輪弱分類器錯誤分類的樣本的權值,而降低那些被正確分類樣本的權值。

如何將弱分類器組合成乙個強分類器

adaboost採取加權多數表決的方法。加大分類誤差率小的弱分類器的權值,減小分類誤差率大的弱分類器的權值。

演算法adaboost

輸入:訓練資料集t,y∈

(−1,

1);弱學習演算法

輸出:最終分類器g(

x)1.初始化訓練資料的權值分布d1

=(w11

,...

,w1n

),w1

i=1n

,i=1

,...

,n2.對m=1,2,…,m

(a)使用具有權值分布dm

的訓練資料學習,得到基本分類器gm

(x):

x→(−

1,1)

(b)計算gm

(x) 在訓練集上的分類誤差率em

=∑i=

1np(

gm(x

i)≠y

i)=∑

i=1n

wmii

(gm(

xi)≠

yi)

(c)計算gm

(x) 的係數am

=12log1−

emem

(8.2)

這裡的對數是自然對數

(d)更新訓練集的權值分布dm

+1=(

wm+1

,1,.

..,w

m+1,

n)wm

+1,1

=wmi

zmex

p(−a

myig

m(xi

)),i

=1,.

..,n

(8.4)

這裡,zm

是規範化因子 zm

=∑i=

1nwm

iexp

(−am

yigm

(xi)

)(8.5) 它使

dm+1

成為乙個概率分布

3.構建基分類器的線性組合f(

x)=∑

m=1n

amgm

(x)

得到最終分類器 g(

x)=s

ign(

f(x)

)=si

gn(∑

m=1n

amgm

(x))

gm(x)

在加權的訓練資料集上的分類誤差率是被gm

(x) 誤分類樣本的權值之和,由此可以看出資料權值分布dm

與基本分類器gm

(x) 的分類誤差率的關係。

由式(8.2)知,當em

≤12 時,am

≥0,並且am

隨著em

的減小而增大,所以分類誤差率越小的基本分類器在最終分類器中的作用越大。

式(8.4)可以寫成: wm

+1,i

={wm

izme

−am,

gm(x

i)=y

iwmi

zmea

m,gm

(xi)

≠yi

由此可知,被基分類器誤分類樣本的權值得以擴大,而被正確分類樣本的權值卻得以縮小。兩相比較,誤分類樣本的權值被放大e2

am=1

−eme

m 倍。誤分類樣本在下一輪學習中起更大的作用。

不改變訓練資料,不斷改變訓練資料權值的分布,使得訓練資料在基本分類器的學習中起不同的作用,這是adaboost的乙個特點。

最後線性組合f(

x)實現了m個基分類器的加權表決。係數am

之和並不為1。f(

x)的符號決定例項x的類,f(

x)的絕對值表示分類的確信度。

利用基本分類器的線性組合構建最終分類器是adaboost的另一特點。

定理8.1後半部分推導過程中第2個等號後出現的w1

i 是因為在第一輪訓練時,各個樣本的權重均為1n

。 上述定理說明,可以在每一輪選取適當的gm

使得zm

最小,從而使得訓練誤差下降最快。對二類分類問題,有如下結果。

最後乙個不等式使用了1−

x≤e−

x zm

=(1−

4γ2m

)12≤

(e−4

γ2m)

12=e

−2γ2

m 所以 ∏mm

=1zm

≤e−2

∑mm=

1γ2m

adaboost演算法是模型為加法模型,損失函式為指數函式,學習演算法為前向分布演算法時的二類分類學習演算法。

考慮加法模型(additive model) f(

x)=∑

m=1m

βmb(

x;γm

) 在給定訓練資料和損失函式l(

y,f(

x)) 的條件下,學習加法模型f(

x)成為經驗風險最小化及損失函式最小化問題:

minβm,

γm∑i

=1nl

(yi,

∑m=1

mβmb

(xi;

γm))

前向分步演算法(forward stagewise algorithm)求解這一優化問題的想法是:因為學習是加法模型,如果能夠從前向後,每一步只學習乙個 基函式及其係數,逐步逼近優化目標函式式(8.14)那麼就可以簡化優化的複雜度。具體地,每步只需優化如下損失函式:

參考資料

《統計學習方法》第8章

提公升方法 AdaBoost

提公升方法通過改變訓練樣本的權重,學習多個分類器 弱分類器 基分類器 並將這些分類器進行線性組合,提高分類的效能。adaboost演算法的特點是不改變所給的訓練資料,而不斷改變訓練資料權值的分布,使得訓練資料在基本分類器的學習中起不同的作用。通過迭代每次學習乙個基分類器,在迭代過程中提高那些被前一輪...

提公升方法 AdaBoost

提公升方法通過改變訓練樣本的權重,學習多個分類器 弱分類器 基分類器 並將這些分類器進行線性組合,提高分類的效能。adaboost演算法的特點是不改變所給的訓練資料,而不斷改變訓練資料權值的分布,使得訓練資料在基本分類器的學習中起不同的作用。通過迭代每次學習乙個基分類器,在迭代過程中提高那些被前一輪...

機器學習 提公升方法AdaBoost演算法

機器學習 深度學習 nlp 搜尋推薦 等 索引目錄 adaboost演算法是提公升方法中具有代表性的一種演算法,本篇博文主要學習adaboost的演算法思想以及從前向分步加法模型的角度來解釋adaboost演算法。對於提公升方法來說,其基本思路是從弱學習演算法出發,反覆學習,得到一系列弱分類器 基分...