在支持向量机中,需要用拉格朗日对偶性将原始问题转换成对偶问题,解得对偶问题的解从而得到原始问题的解。在此简单介绍拉格朗日对偶性的基本原理和方法。
原始问题
假设
f(x)
,
ci(x)
,
hj(x)
是定义在
Rn
上的连续可微函数。考虑约束最优化问题
minx∈Rnf(x)s.t.ci(x)hj(x)≤0,i=1,2,⋯,k=0,j=1,2,⋯,l(C.1)(C.2)(C.3)
称此约束最优化问题为原始最优化问题或原始问题。
首先引进拉格朗日函数
L(x,α,β)=f(x)+∑i=1kαici(x)+∑j=1lhj(x)(C.4)
其中
x=(x(1),x(2),⋯,x(n))T∈Rn
,
αi
,
βj
是拉格朗日乘子,
αi≥0
。考虑
x
的函数
θp(x)=maxα,β;αi≥0L(x,α,β)(C.5)
,下标p表示原始问题。假设有某个
x
,不符合原始问题的约束条件,也就是存在某个
i或者
j
使得
ci(w)<0或者
hj(x)≠0
,那么就可以使某个
αi→+∞
或
βj
使得
βhj(x)→∞
,因此
θp(x)→+∞
,如果
x
满足约束条件,显而易见的是
θp(x)=f(x)。从而有下式:
θp(x)=maxα,β;αi≥0L(x,α,β)={f(x)+∞,x满足约束条件,其他(C.6)
所以考虑
minxθp(x)=minxmaxα,β;αi≥0L(x,α,β)(C.7)
与原始问题等价。问题
minxmaxα,β;αi≥0L(x,α,β)
成为广义拉格朗日函数的极小极大问题。因此原始问题转换成了广义拉格朗日的极小极大问题。设原始问题的最优值为
p∗=minxθp(x)(C.8)
称为原始问题的最优值。
对偶问题
定义
θD(x)=minxL(x,α,β)(C.9)
在考虑极大化
θD(x)
即:
maxα,β;αi≥0θD(x)=maxα,β;αi≥0minxL(x,α,β)(c.10)
上式称为拉格朗日函数的极大极小问题。将此问题表示为约束最优化问题
maxα,βθD(x)=maxα,βminxL(x,α,β)s.t.αi≥0,i=1,2,⋯,k(C.11)
称为原始问题的对偶问题。定义对偶问题的最优值
d∗=maxα,βθD(α,β)(C.12)
称为对偶问题的最优值。
原始问题与对偶问题的关系
定理C.1 若原始问题和对偶问题都有最优值,则
d∗=maxα,βθD(α,β)≤minxθp(x)=p∗
推论C.2 设
x∗
和
α∗,β∗
分别是原始问题和对偶问题的可行解,并且
d∗=p∗
,则
x∗
和
α∗,β∗
分别是原始问题和对偶问题的额最优解。
在某些条件下,原始问题和对偶问题的最优值相等,即
d∗=p∗
。这时可以用解对偶问题替代解原始问题。下面一定理的形式叙述有关的重要结论而不予证明。
定理C.2 对于原始问题和对偶问题,假设函数
f(x)
和
ci(x)
都是凸函数,
hj(x)
是仿射函数;并且不等式约束
ci(x)
是严格可行的,即存在
x
使得对所有的i有
ci(x)≤0
,则存在
x∗,α∗,β∗
,使
x∗
是原始问题的解,
α∗,β∗
是对偶问题的解。并且
p∗=d∗=L(x∗,α∗,β∗)
定理C.3对于原始问题和对偶问题,假设函数
f(x)
和
ci(x)
都是凸函数,
hj(x)
是仿射函数;并且不等式约束
ci(x)
是严格可行的,即存在
x
使得对所有的i有
ci(x)≤0
,则
x∗
和
α∗,β∗
分别是原始问题和对偶问题的解的充分必要条件是
x∗,α∗,β∗
,使
x∗
满足下面的KKT条件
⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪∇xL(x∗,α∗,β∗)∇αL(x∗,α∗,β∗)∇βL(x∗,α∗,β∗)α∗ci(x)ci(x)αihj(x)=0=0=0=0≤0≥0=0
特别补充的是
α∗ci(x)=0
称为KKT的对偶互补条件。由此条件可知,若
αi>0
则
ci(x)=0
。
引自:李航. 统计学习方法[M]. 清华大学出版社, 2012.