拉格朗日对偶性

       在上一篇博客 支持向量机基本原理的直观理解 中,我们讲过SVM的优化策略就是求解凸二次规划问题,那么如何来求解凸二次规划问题就是我们这篇文章所要介绍的——拉格朗日对偶性。


1. 拉格朗日对偶性简介


       在约束最优化问题中,常常利用拉格朗日对偶性(Lagrange duality)将原始问题转换为对偶问题,通过解对偶问题而得到原始问题的解。为了更好理解拉格朗日对偶性,接下来将从原始问题、对偶问题、原始问题与对偶问题的关系三方面一一论述。


2. 原始问题


       假设f(x), ci(x), hj(x)是定义在R^n上的连续可微函数,考虑约束最优化问题

拉格朗日对偶性

称此约束最优化问题为原始最优化问题或原始问题。

        为了把约束条件“去掉”,我们引进广义拉格朗日函数(generalized Lagrange function):

拉格朗日对偶性

其中,αi βi是拉格朗日乘子,并且要求αi ≥ 0。

       首先我们把L(x,α,β)看成是α,β的函数(把x看成常量),然后求该函数的最大值(含x的表达式),接着再把x看成变量,因此可以定义函数θp(x)如下:

拉格朗日对偶性

其中,下标p表示原始问题 。

       现在,我们考虑假设给定某个x:如果x违反了原始问题的约束条件,那么令αi=+∞ 或βi=+∞必然会导致θp(x)=+∞;如果x都满足约束条件,那么θp(x)=f(x)。由此,可以得出:

拉格朗日对偶性

       所以对于极小化问题

拉格朗日对偶性

它是与原始问题C.1~C.3等价的,即它们有相同的解。问题C.8成为广义拉格朗日函数的极小极大问题。这样,我们就把原始最优化问题表示为广义拉格朗日函数的极小极大问题。为了方便,定义原始问题的最优值

拉格朗日对偶性

称为原始问题的值。


3. 对偶问题


       如果我们把L(x,α,β)看成是x的函数(把α,β看成常量),然后求该函数的最小值(含α,β的表达式),接着再把α,β看成变量,因此可以定义函数θD(α,β)如下:

拉格朗日对偶性
所以对于极大化θD(α,β)有
拉格朗日对偶性
       我们把C.11称为原始问题的对偶问题,定义对偶问题的最优值
拉格朗日对偶性
称为对偶问题的值。


4. 原始问题与对偶问题的关系


        为了讨论原始问题和对偶问题的关系,这里我们给出三个定义一个推论。

        定理一:若原始问题和对偶问题都有最优值,则

拉格朗日对偶性

       下面给出简要说明

拉格朗日对偶性


        推论一:设x*和α*,β*分别是原始问题和对偶问题的可行解,并且d* = p*,则x*和α*,β*分别是原始问题和对偶问题的最优解。

        在某些条件下,原始问题和对偶问题的最优值相等,d* = p*。这时可以用解对偶问题替代解原始问题。下面给出两个定理叙述有关重要结论。


       定理二:考虑原始问题和对偶问题。假设函数f(x)和ci(x)是凸函数,hj(x)是仿射函数;并且假设不等式约束ci(x)是严格可行的,即存在x,对所有i有ci(x)<0,则存在x*,α*,β*,使x*是原始问题的解,α*,β*是对偶问题的解,并且d* = p* = L(x*,α*,β*)。


      定理三:满足定理二的充分必要条件是x*,α*,β*满足下面的KKT条件:

拉格朗日对偶性

      特别指出,ai*ci(x*) = 0, i=1,2,...,k称为KKT的对偶互补条件。由此条件可知:若ai* > 0, 则ci(x*) = 0.


参考资料:

1. 李航《统计学习方法》

2. 简易解说拉格朗日对偶(Lagrange duality)