统计学习方法附录C-拉格朗日对偶性

统计学习方法附录C-拉格朗日对偶性_第1张图片

come from:http://blog.sina.com.cn/s/blog_62b0682a0101epol.html

在学习最大熵模型和SVM的过程中,我们看到,前者需要求解满足所有已知条件并且使得熵最大的模型,后者需要求解满足间隔一致性约束条件并且使得几何间隔最大的超平面,归结起来其求解问题都是带约束的极值问题,其解决方法一般采用拉格朗日对偶原理,对于概率性问题也可以用极大似然法来求解。下面简单介绍拉格朗日对偶原理

拉格朗日对偶原理:

约束条件可以分成不等式约束条件和等式约束条件,只有等式约束条件的问题我们在高等数学课程中已经学习过了,其解决方法是直接将等式约束加入原问题构造出拉格朗日函数,然后求导即可。现在考虑更加一般性的问题:带不等式约束和等式约束的极值问题如何构造拉格朗日函数求解。

学习拉格朗日对偶原理重要的是理解构造所得的原始问题和原函数的等价性,以及原始问题和对偶问题解得等价性。

带不等式约束的极值问题定义如下:

    clip_image007[6]   ,其中的函数集合f,g,h都是定义在R上的连续可微函数。

这里面还需要说明一下凸函数的几条性质:

1.对于定义域上可微函数f,若f得导数单调不减,则f是凸函数;

2.如果凸函数存在极小值,则一定是全局极小值,也即凸函数的局部最小点就是全局最小点;

3.严格凸函数的全局最小点唯一;

4.如果满足约束条件的可行域是有界的,凸函数优化有解。

一般,我们定义的目标函数都是凸函数,再利用拉格朗日对偶性求解全局最优解。正是由于凸函数满足以上性质,便于我们求解问题,而不用考虑复杂情况。

引入一般化的拉格朗日公式:

clip_image008[6]其中clip_image010[50]clip_image012[14]称为拉格朗日算子,要求clip_image010[50]非负。

下面的步骤将拉格朗日函数和最初的函数f等价起来

定义函数:clip_image015[6]

这里的P代表primal,表示原始问题。假设给定某个w,如果w违反原始问题的约束条件,即clip_image017[6]或者clip_image019[6],那么我们总是可以调整clip_image010[52]clip_image012[15]来使得clip_image021[10]有最大值为正无穷。而只有g和h都满足约束时,clip_image021[11]为f(w)。总结下来就是:

clip_image024[6]

看到了没,这样就把拉格朗日函数和f联系在了一起。

于是我们原来要求的min f(w)就转化成求clip_image026[10]了。    

    clip_image027[6]

clip_image029[6]=clip_image026[11],现在我们的任务就是求解clip_image029[6]如果直接求解这个问题会很复杂,因此一般不会直接求解,而是引入对偶问题,利用对偶问题的解作为原始问题的解。

原始问题向对偶问题的转换过程如下:

引入公式:clip_image030[6]

D的意思是对偶(dual)。

clip_image031[10]将拉格朗日函数转换成两个参数的a和b的函数,并在此基础上求解最大值:

clip_image034[6]

 我们把这个问题称为原问题的对偶问题,从形式上看相对于原问题对偶问题只是更换了min和max的顺序,实际上替换前后两者的值并不一定相同。在满足一些条件下,对偶问题的解和原始问题的解相同,clip_image036[6]表示对偶问题的值:

    clip_image037[6]

 原始问题和对偶问题的关系

原始问题的值和对偶问题的值满足公式:d*<=p*,如果等式成立,则它们的解是相同的

1.假设函数f和g是凸函数,h是仿射函数,并且假定不等式约束g是严格可行的,也即存在w,满足所有的不等式约束,则原始问题和对偶问题有解,并且解相同。其解相同的充要条件是解满足KKT条件:

clip_image048[6]

 

你可能感兴趣的:(统计学习)