原始问题与对偶问题

最近在看支持向量机,对对偶问题不甚了解。就花了一些时间看了一下知乎上的解释和Andrew Ng的解释。以下是关于这个issue的总结。

假设我们有如下优化问题(原问题)

Problem 1:
min f ( x )
s . t . g ( x ) 0 ,

为描述方便起见,我们假设只有一个不等式约束,多个不等式约束可以做简单的扩展。等式约束则可以转化为不等式约束。令

L ( x , λ ) = f ( x ) + λ g ( x )

很显然,如果

Problem 2:
f ( x ) < v
s . t . g ( x ) 0 ,

无解,我们称 v 是Problem 1的一个下界。如果Problem 2有解,那么对于任意的 λ 0 ,

Problem 3:
L ( x , λ ) < v ,

有解(略微思索便知)。

显然地,根据逆否命题:如果Problem 3无解,那么Problem 2无解

Problem 3无解的充分必要条件是

Problem 4:
v min x L ( x , λ ) .

因此,如果Problem 4成立,则Problem 2无解,那么v是Problem 1的一个下界。

因为我们要找到一个最大下界,所以

v = max λ min x L ( x , λ ) .

因此,也就引入了Dual problem.

说到这里,我们再来看一下原问题,
很显然,我们有如下公式

(1) max λ L ( x , λ ) = { f ( x ) ,  if  g ( x ) 0 + , o t h e r w i s e ,

所以原问题即

Problem 5:
p = min x max λ L ( x , λ ) .

我们看到,原问题与对偶问题实际上就是前面极小极大符号的交换。

针对该解释,我给出的直观的理解是:对偶问题是直接求解原问题转化成求原问题的最大下界的问题

原问题与对偶问题满足如下不等式关系,

v = max λ min x L ( x , λ ) min x max λ L ( x , λ ) = p .

当f(x)与g(x)都是convex的时候,我们有 v = p ,原问题等价于对偶问题。这是因为当f(x)与g(x)是convex的时候,原问题与对偶问题的解都是独立于 λ 的,具体地可以参见:

https://wenku.baidu.com/view/3d94c60f172ded630a1cb63d.html

补充:看西瓜书上对对偶问题的解释,觉得很透彻,现在复述一遍。

对于原始问题
m i n   f ( x )
s . t . h i ( x ) = 0 , i = 1 , , m
g j ( x ) 0 , j = 1 , , n .

构建Lagrange函数如下:
L ( x , α , β ) = f ( x ) + α T g ( x ) + β T h ( x )
其中 α 0 ,表示 α 中每个分量都是大于0的。
其Lagrange对偶函数如下,其中 D 表示可行域:
Γ ( α , β ) = i n f x D   L ( x , α , β )
= i n f x D [ f ( x ) + α T g ( x ) + β T h ( x ) ]

很显然,x在可行域范围之内,满足 g ( x ) 0 以及 h ( x ) = 0
那么 α T g ( x ) + β T h ( x ) 0 是成立的,因此:
假设 x 是无约束函数 f ( x ) 的最优解,那么有
Γ ( α , β ) = i n f x D L ( x , α , β ) L ( x , α , β ) f ( x )
f ( x ) = p 为最优值, 那么 Γ ( α , β ) p
显然,这个下界取决于 α , β 这两个变量,找到一个最好的下界便成为一个很自然的问题,因此引入对偶问题:

m a x α , β Γ ( α , β )
s . t . α 0

f ( x ) , g ( x ) 为凸函数, h ( x ) 为仿射函数的时候,有 m a x   Γ ( α , β ) = p

猜你喜欢

转载自blog.csdn.net/wuyanxue/article/details/80039109