在每一輪如何改變訓練資料的權值或概率分布
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演算法。對於提公升方法來說,其基本思路是從弱學習演算法出發,反覆學習,得到一系列弱分類器 基分...