SVM系列理论(十) SVR支持向量回归

      • 1 敏感度损失函数
      • 2 支持向量回归模型的导出
      • 3 对偶形式的导出
      • 4 KKT条件导出支持向量
      • 5 KKT条件导出b的值

前面提到,对于回归问题,
核岭回归,即最小二乘SVM(LSSVM) β β 的值大部分不为0,其支持向量非常多,也就是稠密的,而并不像soft-SVM中的 α α 一样,大部分 α α `为0. 支持向量回归(SVR)模型可以解决这个问题。

1 敏感度损失函数

为了得到,岭回归得到的是稠密的 β β ,本质上是其采用了最小二乘损失,为了得到稀疏的支持向量回归,首先引入tube回归中的敏感度损失(insensitive loss)。

SVM系列理论(十) SVR支持向量回归_第1张图片

上图有三个子图,第一个图是tube回归模型,第二个图是线性回归模型,第三个图两个模型的损失函数比较。

敏感度损失的思想是设置一个敏感度 ϵ>0 ϵ > 0

  • f(x) f ( x ) y y 差别绝对值 小于 敏感度 ϵ ϵ 时,我们不计损失,此时损失值 err(y,f(x)) e r r ( y , f ( x ) ) 为 0.
  • f(x) f ( x ) y y 差别绝对值 大于 敏感度 ϵ ϵ 时,将损失值计算为 “ f(x) f ( x ) y y 的差别绝对值 敏感度 ϵ ϵ

这个思想在图上可以直观地看出来,图1中红色竖直线代表损失,蓝色阴影代表 2ϵ 2 ϵ 的间隔带,样本落入此带,应认为是正确预测,损失为0;落入带外的样本的损失为样本到隔离带边界的距离,这个距离为“ f(x) f ( x ) y y 的差别绝对值 敏感度 ϵ ϵ

上面思想用公式表示出来,可以表示为:

  • |yf(x)|ϵ,      err(y,f(x))=0 | y − f ( x ) | ≤ ϵ ,             e r r ( y , f ( x ) ) = 0
  • |yf(x)|>ϵ,      err(y,f(x))=|yf(x)|ϵ | y − f ( x ) | > ϵ ,             e r r ( y , f ( x ) ) = | y − f ( x ) | − ϵ

这个分段函数可以写成:
err(y,f(x))=max(0,|yf(x)|ϵ) e r r ( y , f ( x ) ) = m a x ( 0 , | y − f ( x ) | − ϵ )

2 支持向量回归模型的导出

我们知道,标准的软间隔SVM问题可以转化成L2正则+合页损失函数的无约束问题:
min w,b  12||w||2+CNi=1max(0,1yi(wxi+b))        (1) m i n   w , b     1 2 | | w | | 2 + C ∑ i = 1 N m a x ( 0 , 1 − y i ( w ⋅ x i + b ) )                 ( 1 )

其中,松弛变量 margin violation
ξi=max(0,1yi(wxi+b)) ξ i = m a x ( 0 , 1 − y i ( w ⋅ x i + b ) )

现在把合页损失函数换成敏感度损失函数,可以得到支持向量回归的无约束条件形式:

min w,b  12||w||2+CNi=1max(0,|wxi+byi|ϵ)        (2) m i n   w , b     1 2 | | w | | 2 + C ∑ i = 1 N m a x ( 0 , | w ⋅ x i + b − y i | − ϵ )                 ( 2 )


引入松弛变量 ξi=max(0,|wxi+byi|ϵ) ξ i = m a x ( 0 , | w ⋅ x i + b − y i | − ϵ ) , ξi0 ξ i ≥ 0 转化成有约束问题

min w,b, ξ  12||w||2+CNi=1ξi         m i n   w , b ,   ξ     1 2 | | w | | 2 + C ∑ i = 1 N ξ i                

s.t.        |wxi+byi|ϵξi,ξi0 s . t .                 | w ⋅ x i + b − y i | − ϵ ≤ ξ i , ξ i ≥ 0


1. 目标函数和软间隔svm形式相同
2. 约束条件是损失值(红色线)必须小于等于松弛变量 ξi ξ i ,其中损失值等于 f(x) f ( x ) y y 差别绝对值 减去 敏感度 ϵ ϵ ,公式表示为 |f(xi)yi|ϵξi,ξi0 | f ( x i ) − y i | − ϵ ≤ ξ i , ξ i ≥ 0


可以看到约束条件并不是凸函数,进一步转化为:

min w,b, ξ  12||w||2+CNi=1(ξi+ξi)         m i n   w , b ,   ξ     1 2 | | w | | 2 + C ∑ i = 1 N ( ξ i ∨ + ξ i ∧ )                

s.t.        ϵξiwxi+byiξi+ϵ s . t .                 − ϵ − ξ i ∨ ≤ w ⋅ x i + b − y i ≤ ξ i ∧ + ϵ

                    ξi0,ξi0                                         ξ i ∨ ≥ 0 , ξ i ∧ ≥ 0

其中, ξi ξ i ∧ 表示下图中在敏感度隔离带上方的损失, ξi ξ i ∨ 表示下图中在敏感度隔离带下方的损失。

SVM系列理论(十) SVR支持向量回归_第2张图片
我们最终得到的SVR模型为:

min w,b, ξ, ξ  12||w||2+CNi=1(ξi+ξi)         m i n   w , b ,   ξ ∨ ,   ξ ∧     1 2 | | w | | 2 + C ∑ i = 1 N ( ξ i ∨ + ξ i ∧ )                

s.t.        yif(xi)ξi+ϵ s . t .                 y i − f ( x i ) ≤ ξ i ∧ + ϵ

             f(xi)yiϵ+ξi                           f ( x i ) − y i ≤ ϵ + ξ i ∨

                    ξi0,ξi0,i=1,2,N                                         ξ i ∨ ≥ 0 , ξ i ∧ ≥ 0 , i = 1 , 2 … , N


3 对偶形式的导出

写出拉格朗日函数L.

然后分别对  w,b, ξ, ξ   w , b ,   ξ ∨ ,   ξ ∧ 求偏导数并令其为0,可得:

  1. w w 仍然是输入 x x 的线性组合,系数是拉格朗日乘子 ( αα) (   α ∧ − α ∨ )

    w=Ni=0( αiαi)xi=Ni=0βixi w = ∑ i = 0 N (   α i ∧ − α i ∨ ) ⋅ x i = ∑ i = 0 N β i ⋅ x i

  2. 对b求偏导会得到一个约束条件,这可以看成 是 yi y i 等于1,得:

    0=Ni=0( αα) 0 = ∑ i = 0 N (   α ∧ − α ∨ )

  3. C 等于两类拉格朗日乘子的和:

    C=(αi+μi) C = ( α i ∧ + μ i ∧ )
    C=(αi+μi) C = ( α i ∨ + μ i ∨ )

重新代入拉格朗日函数,得到对偶问题

SVM系列理论(十) SVR支持向量回归_第3张图片


4 KKT条件导出支持向量

上诉过程要满足KKT条件,现在可以根据KKT条件中的互补松弛条件推导出b及支持向量的等价关系,进而得到整个模型的形式。

互补松弛条件如下:
SVM系列理论(十) SVR支持向量回归_第4张图片

对于在2 ϵ ϵ 的隔离带内的点,必然有 |yf(x)|ϵ0 | y − f ( x ) | − ϵ ≤ 0 ξ=0 ξ = 0 .那么可以得到:
这里写图片描述

由互补松弛条件,得到 ( αiαi)=0 (   α i ∧ − α i ∨ ) = 0

因此,支持向量 ( αiαi)0 (   α i ∧ − α i ∨ ) ≠ 0 的样本点,由此我们获得稀疏的 βi=( αiαi) β i = (   α i ∧ − α i ∨ )


5 KKT条件导出b的值

在求解完对偶问题后,只需要选取一个满足 0<αi<C 0 < α i ∨ < C 的样本,并通过下式求解b。

b=yj+ϵNi=1βiyiK(xixj) b ∗ = y j + ϵ − ∑ i = 1 N β i ∗ y i K ( x i ⋅ x j )

证明过程利用了两个互补松弛条件。可参看软间隔SVM。


参考书籍:林轩田机器学习技法 周志华机器学习

你可能感兴趣的:(SVM支持向量机系列理论)