SVM相关问题

转自:https://blog.csdn.net/shuzin/article/details/49152943




1.为什么要通过求解与原问题等价的对偶问题(dual problem)来得到原问题的解?

原因主要有:(1)对偶问题更容易求解;(2)在对偶问题下可以很容易引入核函数,进而扩展到线性不可分的场景。

详见:理解SVM的三层境界

2.Lagrange Duality与Wolfe Duality的区别何在?

常见的对偶问题Lagrange dual problem,但也存在其他的对偶问题,如Wolfe Dual Problem以及Fenchel Dual Problem。

在RankSVM的paper中出现的Wolfe Duality要求原问题的目标函数以及约束中的函数都是可导的。根据KKT构建约束条件,得到的对偶问题的约束为非凸函数,所以Wolfe Duality仅满足弱对偶性。其与Lagrange对偶的关系可以用下面的图来表示:

原问题:min_x f(x) s.t. gj(x)<=0

Lagrange对偶问题:max inf(f(x)-sum_j uj*gj(x)) s.t. uj>=0

Wolfe对偶问题:当f()以及gj()都是连续可导的时候,Lagrange对偶问题的目标函数inf(L)在L的导数为0的点达到极值,将之作为约束,即可得到:max f(x)-sum_j uj*gj(x) s.t. uj>=0 df(x)/dx+sum_j uj*dgj(x)/dx=0

参见:Wikipedia的Wolfe Duality

3.KKT条件的理解


4.支持向量(Support Vector)的几何解释?

支持向量,在最大间隔边界上,且对应的对偶变量值alpha>0的实例点。

候选支持向量:在最大间隔的边界上,且对应的对偶变量值alpha=0的实例点。

支持向量的作用:将原问题变量与对偶问题变量联系起来,用支持向量进行线性组合,组合系数为对偶变量值alpha即可得到原问题到达最优时的变量配置。

5.如何理解对偶?

对偶问题的解为原问题(minimization)解的下界。

原问题与对偶问题的最优解并不总是等价的,两者之差称为dual gap。

仅问题为凸优化问题且满足constraint qualification时,dual gap为0,即两者等价。为强对偶

否则为弱对偶。

摘自:Wikipedia的Duality(Optimization)


        </div>
            </div>
        </article>


猜你喜欢

转载自blog.csdn.net/u014046022/article/details/81231512
svm