(2)训练基分类器:假设训练集为
{
x
i
,
y
i
}
,
i
=
1
,
.
.
.
,
N
,
\{x_i,y_i\},i=1,...,N,
{xi,yi},i=1,...,N,其中
y
i
∈
{
−
1
,
1
}
y_i\boldsymbol{\in}\{−1,1\}
yi∈{−1,1},并且有T个基分类器,则可以按照如下过程来训练基分类器。
1.初始化采分布
D
l
(
i
)
=
1
/
N
D_{\mathrm{l}}(i)={1/N}
Dl(i)=1/N 2.令
t
=
1
,
2
,
.
.
.
,
T
t=1,2,...,T
t=1,2,...,T循环:
从训练集中,按照
D
t
D_t
Dt分布,采样出子集
S
t
=
{
x
i
,
y
i
}
,
i
=
1
,
…
,
N
t
;
S_{t}=\{x_{i},y_{i}\},i=1,\ldots,N_{t};
St={xi,yi},i=1,…,Nt;
用
S
t
S_{t}
St训练出基分类器
h
t
h_t
ht;
计算
h
t
h_t
ht的错误率:
E
t
=
∑
i
=
1
N
t
I
[
h
t
(
x
i
)
≠
y
i
]
D
t
(
x
i
)
N
t
\mathcal{E}_t=\frac{\sum_{i=1}^{N_t}I[h_t(x_i)\neq y_i]D_t(x_i)}{N_t}
Et=Nt∑i=1NtI[ht(xi)=yi]Dt(xi) 其中
I
[
]
I[]
I[]为判别函数;
计算基分类器
h
t
h_t
ht的权重:
a
t
=
log
(
1
−
E
t
)
E
t
a_{t}=\log{\frac{(1-{\mathcal{E}}_{t})}{{\mathcal{E}}_{t}}}
at=logEt(1−Et)
设置下一次采样
D
i
+
1
=
{
D
i
(
i
)
或者
D
i
(
i
)
(
1
−
ε
i
)
ε
i
,
h
i
(
x
i
)
≠
y
i
;
D
i
(
i
)
ε
i
(
1
−
ε
i
)
,
p
i
(
x
i
)
=
y
i
.
D_{i+1}=\begin{cases}D_i(i)\text{或者}\dfrac{D_i(i)(1-\varepsilon_i)}{\varepsilon_i},h_i(x_i)\neq y_i;\\ \\ \dfrac{D_i(i)\varepsilon_i}{(1-\varepsilon_i)},p_i(x_i)=y_i.\end{cases}
Di+1=⎩⎨⎧Di(i)或者εiDi(i)(1−εi),hi(xi)=yi;(1−εi)Di(i)εi,pi(xi)=yi. 并将它归一化为一个概率分布函数。
(3)合并基分类器:给定一个未知样本
z
z
z,输出分类结果为加权投票的结果
S
i
g
n
(
∑
t
=
1
T
h
t
(
z
)
a
t
)
Sign(\sum\limits_{t=1}^T h_t(z)a_t)
Sign(t=1∑Tht(z)at)。