关闭

SVM学习笔记-对偶形式的SVM

标签: SVM机器学习对偶形式的SVM
187人阅读 评论(0) 收藏 举报
分类:

SVM学习笔记第二篇

回顾

上一篇笔记讲述了一个模型:线性支撑向量机。其目的是要找一个比较“胖”的分割线或者叫分割超平面,因为这些比较“胖”的hyperplane对于测量误差是比较鲁棒的。并且我们使用二次规划方法来解决这样的问题。
这篇将要讲述的是将这个模型转化为另一种形式,对偶形式,以使得该模型可以更容易的延伸到其他不同的各种各样的应用当中去。

非线性支撑向量机

上一节讲到我们可以使用二次规划解决线性支撑向量机。当我们想做非线性的转化,只要将z=Φ(x)作为输入即可。

  • (SVM+feature transform=non-linear SVM)
    SVM加上特征转化可以得到非线性的SVM。

为什么要使用非线性的SVM?
通过SVM自身的largin-margin特性来降低算法的复杂度,通过feature transform来得到更小的Ein。 非线性的SVM形式如下:

minw,bs.t.12wTwyn(wTznΦ(x)+b)1

使用二次规划求解非线性的硬间隔SVM

1

Q=[00d~0Td~Id~];p=0d~+1;aTn=yn[1zTn];cn=1

2
w,bQP(Q,p,A,c)
3
return bR and wRd~ withgsvm(x)=sign(wT Φ(x)+b)

这里需要注意的是:
以上的新的QP问题是在Z空间中进行运算的,Z空间中的维度是d~, 而在原来的X空间中的维度是d,d~d。即,新的QP问题的变量有d~+1个, 约束有N
当我们想要使用非常复杂的特征转化甚至为无限维度的特征转化的时候,d~就会很大或者是无穷大,我们该怎么解决此时在Z空间中对于d~的依赖。

我们的目标:不依赖于d~的SVM

我们的方法是将原始的SVM问题转化为一个新的对等的SVM问题。原来的问题中,如上所述,总共有d~+1个变量,N个约束;新的问题中将有N个变量,N+1个约束。我们把这个新的和原来对等的问题成为是原来问题的对偶问题。我们要使用的方法是拉格朗日乘子。

工具: 拉格朗日乘子

SVM是一个带条件的最优化问题,我们通过引入lagrange multipliers得到的问题就是SVM的对偶问题(变量是引入的Lagrange multipliers)。因为有N个条件,所有我们需要引入Nlagrange multipliers αi

我们想要做的是将原始问题转化为一个无约束的问题。
原始问题

minw,bs.t.12wTwyn(wTzn+b)1

定义一个函数,我们称之为拉格朗日函数:
L(b,w,α)=12wTwobjcet function+n=1Nαn(1yn(wTzn+b)constraint)

定义了以上的函数之后,考虑如下的式子:

minb,w (maxall αn0L(w,b,α))

这个式子要做的事情可以理解成是这样的: 对于一组(w,b), 我们来调α的取值,使得L(w,b,α)能取得最大值;对于第二组(w,b), 我们再来调α的取值,使得L(w,b,α)能取得最大值;;对于另一组(w,b), 我们再来调α的取值,使得L(w,b,α)能取得最大值。这样每一组(w,b)都能得到相应的一个L(w,b,α)的最大值,最后在这些最大值里面选择最小的。这个最小的值对应的那组(w,b)就是我们 原始问题 想要的解。下面来解释为什么这样做是对的?

如上面说的,首先我们要找一组(w,b)使得L(w,b,α)最大,即找一组(w,b)maxall αn0 L(w,b,α)

  • 如果这一组(w,b)是“不好”的, 即违反了N个条件中的任何一个,不失一般性,我们假设这一组(w,b)违反了第 k 个条件,那么yk(wTzk+b)<11yk(wTzk+b)>0。 此时我们想要做的事情是maxall αn 0(12wTw+Nn=1αn(1yn(wTzn+b))), 那么我们只要令αk取无穷大就可以使得L(w,b,α)最大(无穷大)。
  • 如果这一组(w,b)是“好”的,即它满足SVM中所有的约束,那么在maxall αn 0(12wTw+Nn=1αn()))的时候,因为都是负的,我们要最大化这个式子,所以α最好的取值是都取0。 那么最大化的结果就是12wTw

本来我们对(w,b)是没有设置任何的条件的,但是在做里面的最大化的时候不好的(w,b)会得到无穷大,好的(w,b)会得到12wTw。所以当我们再做外层的最小化的操作的时候,我们自然而然的就把不好的(w,b)排除了。而要在好的(w,b)中选择使得最后结果最小的。

这样我们就把原始问题转化为了一个无约束的问题。


拉格朗日对偶问题

对于一个固定的α我们可以得到

minw,b(maxall an0 L(w,b,α))minw,b L(w,b,α)

因为最大的值总是要比任意的一个值大(maxany)

又因为任意的α上式都是成立的,那么当然其中最大的那个对于上面的式子来说也是成立的。

minw,b(maxall an0 L(w,b,α))maxall αn0(minw,b L(w,b,α))Lagrange dual problem

这样我们就得到了原始问题的一个对偶问题,如果我们能解决对偶问题,那么我们就得到了原始问题的一个下限。

二次规划问题的强对偶性

minw,b(maxall an0 L(w,b,α))equiv. to original SVMmaxall αn0(minw,b L(w,b,α))Lagrange dual problem

当满足一定的条件的时候,两个问题的解是相等的。这样我们就可以通过解右边的问题来得到左边问题的解。为什么要解右边的问题呢?因为右边的问题相比于左边的来说更好解。因为根据我们上面的分析,我们对wb是没有限制的,而右边的问题是要先解决这个没有约束的问题(无约束的问题总是比较好解的),所以比较简单。另一个问题是当满足什么条件的时候两个问题的解是相同的呢?

  • convex primal
  • feasible primal(true if Φ-separable)
  • linear constraints

对于QP问题来说,上面的三个条件都是满足的。当满足上述三个条件的时候,就存在一组(w,b,α), 对于两边来说都是最佳的解。

求拉格朗日对偶形式

maxall αn0(minw,b 12wTw+n=1Nαn(1yn(wTzn+b))