赞
踩
SVR做为SVM的分支从而被提出。SVM一般用于二分类问题,而SVR一般应用于数据的拟合。
无论SVM还是SVR,都需要建立一个超平面。SVM的目标是令超平面与最近的样本点的距离最大,实现通过超平面分类的目的;而SVR的目标是要使得超平面与最远的样本点的距离最小,从而可以通过利用超平面对数据进行拟合。
SVR在线性函数两侧制造了一个“间隔带”,对于所有落入到间隔带内的样本,都不计算损失;只有间隔带之外的,才计入损失函数。之后再通过最小化间隔带的宽度与总损失来最优化模型。
由于模型需要放弃一些边缘的点,用于最小化间隔带,
所以引入了松弛变量
ξ
i
\xi_i
ξi和
ξ
i
∗
\xi_i^*
ξi∗(松弛变量有两个符号,SVM只有1个符号), 代表上图上边缘点和下边缘点与中间实线的距离(y轴投影距离而不是欧式距离,直接计算点与点在实线上的投影的y轴上的差即可。):
m i n ω , b 1 2 ∥ ω ∥ 2 + C ∑ i = 1 l ( ξ i + ξ i ∗ ) \mathop{min}\limits_{\omega, b}\frac{1}{2}\parallel\omega\parallel^2 + C\sum_{i=1}^{l}(\xi_i + \xi_i^*) ω,bmin21∥ω∥2+Ci=1∑l(ξi+ξi∗)
s
.
t
.
{
y
i
−
ω
x
−
b
≤
ϵ
+
ξ
i
ω
x
+
b
−
y
i
≤
ϵ
+
ξ
i
∗
ξ
i
,
ξ
i
∗
≥
0
s.t.\left\{
其中, ξ i \xi_i ξi和 ξ i ∗ \xi_i^* ξi∗的取值为:
{
ξ
i
=
y
i
−
(
ω
x
+
b
+
ϵ
)
,
y
i
>
ω
x
+
b
+
ϵ
ξ
i
=
0
,
o
t
h
e
r
w
i
s
e
\left\{
{
ξ
i
∗
=
(
ω
x
+
b
−
ϵ
)
−
y
i
,
y
i
<
ω
x
+
b
−
ϵ
ξ
i
∗
=
0
,
o
t
h
e
r
w
i
s
e
\left\{
L
=
1
2
∥
ω
∥
2
+
C
∑
i
=
1
l
(
ξ
i
+
ξ
i
∗
)
−
∑
i
=
1
l
α
i
(
ϵ
+
ξ
i
−
y
i
+
ω
x
+
b
)
−
∑
i
=
1
l
α
i
∗
(
ϵ
+
ξ
i
∗
+
y
i
−
ω
x
−
b
)
−
∑
i
=
1
l
(
η
i
ξ
i
+
η
i
∗
ξ
i
∗
)
s
.
t
.
α
i
,
α
i
∗
,
η
i
,
η
i
∗
≥
0
原问题可以化为:
m
i
n
ω
,
b
m
a
x
α
i
(
∗
)
,
η
i
(
∗
)
L
(
ω
,
b
,
ξ
i
,
ξ
i
∗
,
α
i
,
α
i
∗
,
η
i
,
η
i
∗
)
\mathop{min}\limits_{\omega, b}\mathop{max}\limits_{\alpha_i^{(*)}, \eta_i^{(*)}}L(\omega, b, \xi_i,\xi_i^*, \alpha_i, \alpha_i^*, \eta_i, \eta_i^*)
ω,bminαi(∗),ηi(∗)maxL(ω,b,ξi,ξi∗,αi,αi∗,ηi,ηi∗)
m a x α i ( ∗ ) , η i ( ∗ ) m i n ω , b L ( ω , b , ξ i , ξ i ∗ , α i , α i ∗ , η i , η i ∗ ) \mathop{max}\limits_{\alpha_i^{(*)}, \eta_i^{(*)}}\mathop{min}\limits_{\omega, b}L(\omega, b, \xi_i,\xi_i^*, \alpha_i, \alpha_i^*,\eta_i, \eta_i^*) αi(∗),ηi(∗)maxω,bminL(ω,b,ξi,ξi∗,αi,αi∗,ηi,ηi∗)
{
∂
L
∂
ω
=
ω
−
∑
i
=
1
l
(
α
i
∗
−
α
i
)
x
i
=
0
∂
L
∂
b
=
∑
i
=
1
l
(
α
i
∗
−
α
i
)
=
0
∂
L
∂
ξ
i
=
C
−
α
i
−
η
i
∂
L
∂
ξ
i
∗
=
C
−
α
i
∗
−
η
i
∗
\left\{
使用SMO算法前,还需将 α i , α i ∗ \alpha_i, \alpha_i^* αi,αi∗转化为一个参数,因为SMO算法针对的是任意样本 x i x_i xi 只对应一个参数 α i \alpha_i αi的情况。
过程采用拉格朗日对偶法,对偶问题有解的充要条件是满足KKT条件,对于SVR的对偶问题,其KKT条件如下:
{
α
i
(
ϵ
+
ξ
i
−
y
i
+
ω
x
+
b
)
=
0
α
i
∗
(
ϵ
+
ξ
i
+
y
i
−
ω
x
−
b
)
=
0
(
C
−
α
i
)
ξ
i
=
0
(
C
−
α
i
∗
)
ξ
i
∗
=
0
α
i
α
i
∗
=
0
ξ
i
ξ
i
∗
=
0
\left\{
设
λ
i
=
α
i
−
α
i
∗
\lambda_i = \alpha_i - \alpha_i^*
λi=αi−αi∗。由KKT条件,
α
i
,
α
i
∗
\alpha_i,\alpha_i^*
αi,αi∗至少有一个为0。所以
∣
λ
i
∣
=
α
i
+
α
i
∗
|\lambda_i| = \alpha_i + \alpha_i^*
∣λi∣=αi+αi∗。代入对偶问题,则有(先用求导结果替换
ω
\omega
ω):
m
i
n
λ
[
∑
i
=
1
l
y
i
λ
i
+
ϵ
∣
λ
i
∣
+
1
2
∑
i
=
1
l
∑
j
=
1
l
λ
i
λ
j
x
i
T
x
i
]
s
.
t
.
{
∑
i
=
1
l
λ
i
=
0
−
C
≤
λ
i
≤
C
最后再参考SMO算法,求出回归模型系数
ω
,
b
\omega, b
ω,b
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。