Dual SVM problem
这其实是数学上做数值分析的结果,就是上面推出的SVM 原始问题总有一种对偶形式(在很多介绍SVM问题的书中都不会讲到这个,直接上对偶问题,也不加解释,其实不是很显然)。见文章A Training Algorithm for Optimal Margin Classiers,文中直接将问题转换成对偶形式,并引用了相关的论文。
动机:问什么要转成对偶问题?
在计算矩阵Q的时候,发现是一个d+1维的方阵。这已经很大了,当转换特征后,维度将进一步增大,所以为了计算方便,就要解决这个维度问题。
利用拉格朗日乘数法:



要解决SVM的问题就是要找到最大化L函数的情况下,找到最短的w(与b)
为了的到对偶问题,做出如下推导:


解释里面写的很清楚,通过两次不等式转换,得到最后的拉格朗日对偶问题。
这里得到的是不等号。对于强对偶问题,可以去等号,取等号的条件是(—called constraint qualification):
- convex primal——原问题是凸的(?)
- feasible primal (true if Φ-separable)
- 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无关了吗?不是,在计算的时候,还是碰到了那个大的维度!
下回将解决这个问题。

浙公网安备 33010602011771号