Dual SVM problem

  这其实是数学上做数值分析的结果,就是上面推出的SVM 原始问题总有一种对偶形式(在很多介绍SVM问题的书中都不会讲到这个,直接上对偶问题,也不加解释,其实不是很显然)。见文章A Training Algorithm for Optimal Margin Classiers,文中直接将问题转换成对偶形式,并引用了相关的论文。

动机:问什么要转成对偶问题?

  在计算矩阵Q的时候,发现是一个d+1维的方阵。这已经很大了,当转换特征后,维度将进一步增大,所以为了计算方便,就要解决这个维度问题。

利用拉格朗日乘数法:

 

  要解决SVM的问题就是要找到最大化L函数的情况下,找到最短的w(b)

  为了的到对偶问题,做出如下推导:

  解释里面写的很清楚,通过两次不等式转换,得到最后的拉格朗日对偶问题。

  这里得到的是不等号。对于强对偶问题,可以去等号,取等号的条件是(—called constraint qualification):

  1. convex primal——原问题是凸的(?)
  2. feasible primal (true if Φ-separable)
  3. linear constraints

  通过一番推导,得到:

  需要满足KKT条件:

 

  最后一个称之为complementary slackness

 

  标准形式与QP对应参数:

  真实的QP solver里面,可能已经集成了等号约束,甚至对特殊的有范围约束。(此处待补充MATLAB的相关参数,与遇到的问题)实际上,Q不是一个稀疏矩阵,计算还比较复杂,需要特殊的solver解决。

  另外一个问题:怎么求b?

  根据complementary slackness,找一个,那么右边的式子就为0,理论上任找一个都可以。

Support Vector的物理含义:

  什么是support vector呢?实际上这是按照最后计算w的情况决定的,因为只有那些vector才会影响最后的w(包括b)的值。

所以,support vector就是指那些vector.

  那么在边界上的点呢?它只能称之为support vector的候选(可能),且support vector一定是在边界上的。

‘represented’ by data

  我们将这些w可以由数据点线性组合的w称之为Represented by data.

问题还没有解决

  之前我们提到,为了解决维度灾难的问题,引入对偶问题。但是,现在对偶问题真的解决了吗?其实还没有!

  虽说我们得到的形式只有N个变量,N+1个约束,但是真的与多维的d无关了吗?不是,在计算的时候,还是碰到了那个大的维度!

  下回将解决这个问题。

posted @ 2015-01-11 23:02  jszhujun2010  阅读(249)  评论(0)    收藏  举报