活动地址:优快云21天学习挑战赛
1 对偶问题(肢解)
原始问题为:
min
w
,
b
,
ξ
i
1
2
∣
∣
w
∣
∣
2
+
C
∑
i
=
1
N
ξ
i
s
.
t
.
1
−
ξ
i
−
y
i
(
w
⋅
x
i
+
b
)
≤
0
ξ
i
≥
0
,
i
=
1
,
2
,
.
.
.
,
N
\min_{w,b,\xi_i}\frac{1}{2}||w||^2+C\sum^N_{i=1}\xi_i \\ s.t. \quad 1-\xi_i-y_i(w\cdot x_i+b)\le0 \\ \xi_i\ge0,i=1,2,...,N
w,b,ξimin21∣∣w∣∣2+Ci=1∑Nξis.t.1−ξi−yi(w⋅xi+b)≤0ξi≥0,i=1,2,...,N
其对偶问题就是拉格朗日函数的对
w
,
b
,
ξ
w,b,\xi
w,b,ξ的极小再对
α
,
μ
\alpha,\mu
α,μ的极大值问题。
广义拉格朗日函数:
L
(
w
,
b
,
ξ
,
α
,
μ
)
=
1
2
∣
∣
w
∣
∣
2
+
C
∑
i
=
1
N
ξ
i
+
∑
i
=
1
N
α
i
(
1
−
ξ
i
−
y
i
(
w
⋅
x
i
+
b
)
)
−
∑
i
=
1
N
μ
i
ξ
i
L(w,b,\xi,\alpha,\mu )=\frac{1}{2}||w||^2+C \sum_{i=1}^N \xi_i+\sum^N_{i=1}\alpha_i(1-\xi_i-y_i(w\cdot x_i+b))-\sum_{i=1}^N\mu_i\xi_i
L(w,b,ξ,α,μ)=21∣∣w∣∣2+C∑i=1Nξi+∑i=1Nαi(1−ξi−yi(w⋅xi+b))−∑i=1Nμiξi
求偏导得:
∇
w
L
(
w
,
b
,
ξ
,
α
,
μ
)
=
w
−
∑
i
=
1
N
α
i
y
i
x
i
=
0
∇
b
L
(
w
,
b
,
ξ
,
α
,
μ
)
=
−
∑
i
=
1
N
α
i
y
i
=
0
∇
ξ
i
L
(
w
,
b
,
ξ
,
α
,
μ
)
=
C
−
α
i
−
μ
i
=
0
\nabla_wL(w,b,\xi,\alpha,\mu)=w-\sum_{i=1}^N\alpha_iy_ix_i =0 \\\nabla_bL(w,b,\xi,\alpha,\mu)=-\sum_{i=1}^N\alpha_iy_i=0\\\nabla_{\xi_i}L(w,b,\xi,\alpha,\mu)=C-\alpha_i-\mu_i=0
∇wL(w,b,ξ,α,μ)=w−i=1∑Nαiyixi=0∇bL(w,b,ξ,α,μ)=−i=1∑Nαiyi=0∇ξiL(w,b,ξ,α,μ)=C−αi−μi=0
解得:
{
w
=
∑
i
=
1
N
α
i
y
i
x
i
∑
i
=
1
N
α
i
y
i
=
0
C
−
α
i
−
μ
i
=
0
\left\{ \begin{aligned} w & = \sum_{i=1}^N\alpha_iy_ix_i\\ \sum_{i=1}^N\alpha_iy_i & = 0 \\ C-\alpha_i-\mu_i & = 0 \end{aligned} \right.
⎩
⎨
⎧wi=1∑NαiyiC−αi−μi=i=1∑Nαiyixi=0=0
带入
L
(
w
,
b
,
ξ
i
,
α
i
,
μ
i
)
L(w,b,\xi_i,\alpha_i,\mu_i )
L(w,b,ξi,αi,μi)得:
L
(
w
,
b
,
ξ
i
,
α
,
μ
)
=
−
1
2
∑
i
=
1
N
∑
j
=
1
N
α
i
α
j
u
i
y
j
(
x
i
⋅
x
j
)
+
∑
i
=
1
N
α
i
L(w,b,\xi_i,\alpha,\mu )=-\frac{1}{2}\sum^N_{i=1}\sum^N_{j=1}\alpha_i\alpha_ju_iy_j(x_i\cdot x_j)+\sum^N_{i=1}\alpha_i
L(w,b,ξi,α,μ)=−21i=1∑Nj=1∑Nαiαjuiyj(xi⋅xj)+i=1∑Nαi
接下来原本求上式得极大值,式子整体加负号,则转化为求其极小值,即
min
α
1
2
∑
i
=
1
N
∑
j
=
1
N
α
i
α
j
u
i
y
j
(
x
i
⋅
x
j
)
−
∑
i
=
1
N
α
\min\limits_{\alpha}\frac{1}{2}\sum^N_{i=1}\sum^N_{j=1}\alpha_i\alpha_ju_iy_j(x_i\cdot x_j)-\sum^N_{i=1}\alpha
αmin21∑i=1N∑j=1Nαiαjuiyj(xi⋅xj)−∑i=1Nα
得到目标函数后,再梳理一下约束条件。
首先,有求偏导解出来的
∑
i
=
1
N
α
i
y
i
=
0
\sum_{i=1}^N\alpha_iy_i=0
∑i=1Nαiyi=0
其次,拉格朗日乘数大于等于0,即
μ
,
α
≥
0
\mu,\alpha\ge0
μ,α≥0,在求偏导时得到
C
−
α
i
−
μ
i
=
0
C-\alpha_i-\mu_i = 0
C−αi−μi=0
最后,综合一下得到:
0
≤
α
i
≤
C
0 \le \alpha_i \le C
0≤αi≤C
2 对偶问题(整合)
理清楚对偶问题的来龙去脉就可以重新梳理整合一下支持向量机——软间隔最大化得对偶问题。
输入:数据集
T
=
{
(
x
i
,
y
i
)
,
(
x
2
,
y
2
)
,
.
.
.
,
(
x
N
,
y
N
)
}
,
其中,
x
I
∈
R
n
,
y
i
∈
{
−
1
,
1
}
,
i
=
1
,
2
,
.
.
.
,
N
.
T=\{(x_i,y_i),(x_2,y_2),...,(x_N,y_N)\},其中,x_I\in R^n,y_i\in\{-1,1\},i=1,2,...,N.
T={(xi,yi),(x2,y2),...,(xN,yN)},其中,xI∈Rn,yi∈{−1,1},i=1,2,...,N.
输出: 分离超平面和分类决策函数
(1)构造凸二次规划问题
min
α
1
2
∑
i
=
1
N
∑
j
=
1
N
α
i
α
j
u
i
y
j
(
x
i
⋅
x
j
)
−
∑
i
=
1
N
α
s
.
t
.
∑
i
=
1
N
α
i
y
i
=
0
0
≤
α
i
≤
C
\min\limits_{\alpha}\frac{1}{2}\sum^N_{i=1}\sum^N_{j=1}\alpha_i\alpha_ju_iy_j(x_i\cdot x_j)-\sum^N_{i=1}\alpha \\ s.t.\quad\sum_{i=1}^N\alpha_iy_i=0\\ 0 \le \alpha_i \le C\\
αmin21i=1∑Nj=1∑Nαiαjuiyj(xi⋅xj)−i=1∑Nαs.t.i=1∑Nαiyi=00≤αi≤C
求出最优解
α
∗
\alpha*
α∗
(2)求w,b
有了
α
∗
\alpha^*
α∗可计算出
w
=
∑
i
=
1
N
α
∗
y
i
x
i
w = \sum_{i=1}^N\alpha^*y_ix_i
w=∑i=1Nα∗yixi;
求b需要借助KTT条件:
再从以上条件中得出 b ∗ b^* b∗。
若 α ∗ = 0 , w ∗ = 0 \alpha_*=0,w^*=0 α∗=0,w∗=0,超平面不存在,则 α ∗ 0 , 0 < α i ∗ < C \alpha_* \ 0,0<\alpha_i^*<C α∗ 0,0<αi∗<C,就找到了 α i ∗ \alpha_i^* αi∗的上界。 最终找的点在超平面边界上,则满足 y j ( w ∗ ⋅ x j + b ∗ ) = 1 y_j(w^*\cdot x_j+b^*)=1 yj(w∗⋅xj+b∗)=1
经过整理后: b ∗ = y j − w ∗ ⋅ x j b^*=y_j-w^*\cdot x_j b∗=yj−w∗⋅xj
(3)求出分类超平面
w
∗
⋅
x
+
b
∗
=
0
w^*\cdot x+b^*=0
w∗⋅x+b∗=0
分类决策函数为:
f
(
x
)
=
s
i
g
n
(
w
∗
⋅
x
+
b
∗
)
f(x)=sign(w^*\cdot x+b^*)
f(x)=sign(w∗⋅x+b∗)
至此结束。
参考
1.《统计学习方法》——李航
2. https://mp.weixin.qq.com/s/0LID7roamkOwiIOl3Da9YQ