当数据完全线性可分时
∙
\bullet
∙ 最大化间隔的超平面,即SVM分类模型:
m
a
x
w
,
b
2
∣
∣
w
∣
∣
2
max_{w,b}\frac{2}{||\mathbf w||_{2}}
maxw,b∣∣w∣∣22
s
.
t
.
y
i
(
w
T
x
i
+
b
)
>
=
1
,
i
=
1
,
.
.
.
,
N
s.t.\space\space\space y_{i}(\mathbf w^T \mathbf x_{i} + b) >=1, i=1,...,N
s.t. yi(wTxi+b)>=1,i=1,...,N 在上面的表达式里(以及下边等价于的那段),PPT上没有
x
i
x_{i}
xi,是我自己加进去的,应该是老师的笔误,在网上查过资料,也是有
x
i
x_{i}
xi
∙
\bullet
∙ 等价于
m
i
n
w
,
b
1
2
∣
∣
w
∣
∣
2
2
min_{w,b}\frac{1}{2}||\mathbf w||_2^2
minw,b21∣∣w∣∣22
s
.
t
.
y
i
(
w
T
x
i
+
b
)
>
=
1
,
i
=
1
,
.
.
.
,
N
s.t.\space\space\space y_{i}(\mathbf w^T \mathbf x_{i} + b) >=1, i=1,...,N
s.t. yi(wTxi+b)>=1,i=1,...,Nw的L2模取平方,是为了计算方便,那么具体会如何方便呢?
数据不完全线性可分
在实际问题中,数据不一定完全线性可分
数据完全线性可分,但间隔很小
数据完全线性可分,但完全分开训练样本的分类器间隔小。
在上图的两种情况里,我们任务左边优于右边。
C—SVM
∙
\bullet
∙ 当样本可以完全线性可分时:
y
i
(
w
0
+
w
T
x
i
)
>
=
1
y_{i}(w_{0} + \mathbf w^T\mathbf x_{i}) >= 1
yi(w0+wTxi)>=1
∙
\bullet
∙ 在实际问题中,数据不一定完全线性可分。
∙
\bullet
∙ 因此解决方案引入软间隔(soft margin),允许一些样本出错,即允许某些样本不满足约束,将约束放松为$
y
i
(
w
0
+
w
T
x
i
)
>
=
1
−
ξ
i
y_{i}(w_{0} + \mathbf w^T\mathbf x_{i}) >= 1 - \xi_{i}
yi(w0+wTxi)>=1−ξi
∙
\bullet
∙ 其中
ξ
i
\xi_{i}
ξi称为松弛变量(slack variables),且
ξ
i
>
=
0
\xi_{i} >= 0
ξi>=0
∙
\bullet
∙ 当然松弛变量是由成本的,样本不满足约束的程度越低越好。
∙
\bullet
∙ 每一个松弛变量对应一个代价,得到软间隔最大化的SVM (C-SVM)的目标函数为:
J
(
w
,
b
,
c
)
=
1
2
∣
∣
w
∣
∣
2
2
+
C
∑
i
=
1
N
ξ
i
J(\mathbf w,b,c) = \frac{1}{2}||\mathbf w||_{2}^2 + C\sum_{i=1}^{N}\xi_{i}
J(w,b,c)=21∣∣w∣∣22+Ci=1∑Nξi
s
u
b
j
e
c
t
t
o
y
i
(
w
0
+
w
T
x
i
)
>
=
1
−
ξ
i
,
ξ
i
>
=
0
subject\space to \space y_{i}(w_{0} + \mathbf w^T \mathbf x_{i}) >= 1-\xi_{i},\space \xi_{i} >=0
subject to yi(w0+wTxi)>=1−ξi, ξi>=0
∙
\bullet
∙ 即间隔尽可能大,同时样本被误分类的程度尽可能低
∙
\bullet
∙ 其中C控制间隔和松弛变量惩罚项之间的平衡,C越大,对误分类的惩罚越大,
∣
∣
w
∣
∣
2
2
||w||_{2}^{2}
∣∣w∣∣22越大,间隔越小。那也意味着
ξ
\xi
ξ越小一些吧?
∙
\bullet
∙ 数据不完全线性可分示意图:松弛变量
粉色虚线上及左上的红色样本(正样本),黑色虚线上及右下方的黑色样本(负样本),被称为支持向量,因为对决策有用。
注意哪些标明了的红色样本的
ξ
\xi
ξ值,这些值都不一样。
∙
\bullet
∙ C-SVM目标函数形式与带正则的线性回归或Logistic回归目标函数类似。
∙
\bullet
∙ 事实上,被误分样本点的
ξ
i
>
=
1
\xi_{i} >= 1
ξi>=1,因此
∑
i
=
1
N
\sum_{i=1}^{N}
∑i=1N为被误分样本数的上界,可视为训练误差。应该不是误分样本数吧,而是误分样本
ξ
\xi
ξ的和?
∙
\bullet
∙ 因此参数C可视为控制最小训练误差和模型复杂度的参数
合页损失
∙
\bullet
∙ 在C-SVM中,
1)当
y
i
(
w
0
+
w
T
x
i
)
>
=
1
,
ξ
i
=
0
y_{i}(w_{0} + \mathbf w^T \mathbf x_{i}) >= 1,\xi_{i} = 0
yi(w0+wTxi)>=1,ξi=0
2)其他点:
ξ
i
=
1
−
y
i
(
w
0
+
w
T
x
i
)
\xi_{i} = 1 - y_{i}(w_{0} + \mathbf w^T \mathbf x_{i})
ξi=1−yi(w0+wTxi)
∙
\bullet
∙ 因此得到的替代损失函数
ξ
=
L
H
i
n
g
e
(
y
,
y
^
)
=
{
0
y
y
^
>
=
1
1
−
y
y
^
o
t
h
e
r
w
i
s
e
\xi = L_{Hinge}(y, \hat y) = \begin{cases}\\ 0 \space\space\space\space\space\space\space\space\space\space\space\space\space\space y\hat y>=1 \\1 - y\hat y \space\space\space\space\space otherwise \end{cases}
ξ=LHinge(y,y^)=⎩
⎨
⎧0 yy^>=11−yy^ otherwise
∙
\bullet
∙ 该函数称为合页损失
CSV:合页损失+L2损失
∙
\bullet
∙ 将合页损失带入C-SVM的目标函数
J
(
w
;
b
;
c
)
=
1
2
∣
∣
w
∣
∣
2
2
+
C
∑
i
=
1
N
ξ
i
J(\mathbf w;b;c) = \frac{1}{2}||\mathbf w||_{2}^2 + C\sum_{i=1}^{N}\xi_{i}
J(w;b;c)=21∣∣w∣∣22+Ci=1∑Nξi
=
1
2
∣
∣
w
∣
∣
2
2
+
C
∑
i
=
1
N
L
H
i
n
g
e
(
y
i
,
f
(
x
i
;
w
;
b
)
)
=\frac{1}{2}||\mathbf w||_{2}^2 + C\sum_{i=1}^{N}L_{Hinge}(y_{i}, f(\mathbf x_{i};\mathbf w;b))
=21∣∣w∣∣22+Ci=1∑NLHinge(yi,f(xi;w;b))
∙
\bullet
∙ 对比一般机器学习模型的目标函数:
J
(
θ
,
λ
)
=
∑
i
=
1
N
L
(
y
i
,
f
(
x
i
;
θ
)
)
+
λ
R
(
θ
)
J(\mathbf \theta,\lambda) = \sum_{i=1}^{N}L(y_{i}, f(\mathbf x_{i};\mathbf \theta)) + \lambda R(\theta)
J(θ,λ)=i=1∑NL(yi,f(xi;θ))+λR(θ)也存在一定的相似性。
目标函数,可以理解为合页损失 + L2正则。若换位L1正则,也可以得到稀疏解。
ξ
\xi
ξ那一项要越小越好。