首页 > 代码库 > 拉格朗日乘子法

拉格朗日乘子法

拉格朗日乘子法最小值转化为对偶函数最大值问题在SVM部分有很重要的作用,今天详细听了邹博老师凸优化课程关于这部分的讲解,做一个小小的总结。

一、知识铺垫

1. 保凸算子

凸函数的非负加权和 : 技术分享

凸函数与仿射函数的复合: 技术分享

凸函数的逐点最大值、逐点上确界:技术分享

第一个和第二个直接使用定义还是挺简单的,因为后边也要用到,这里给出第三个的证明:

技术分享

技术分享

第二个不等式直观上来看:

技术分享

得到一个后边需要用的结论:几个凸函数逐个取大得到的函数任然是凸函数,几个凸函数逐个取小得到的函数是凹函数。取几个凸函数为直线,得到下边这样的一个示意图。

技术分享

 二、凸优化问题的定义

技术分享

若fi(x)为凸函数,hj(x)为仿射函数,则为一个凸优化问题。

凸优化问题的可行域为凸集,凸优化问题的局部最优解即为全局最优解。

三、凸优化问题的对偶问题

技术分享

我们可以知道,对偶函数为一个凹函数,一定存在最大值。(之前证明过,几个凸函数的min为凹函数)

技术分享

对偶函数的最大值一定小于等于原函数的最小值,那么求原函数的最小值是否就可以转化为对偶函数的最大值呢?我们使用这样一个图来分析:

技术分享

如图,下边的虚线部分表示了一个凸函数f1(x),假设lambda1 = 0,那么没有影响,原函数最小值大概为1.35,但是随着lambda1的初步增大,最小值点会往上移动,对应于我们的原函数上面的虚线。但是lambda1继续增大的时候,最小值点变了,所以最小值点又开始下降了。最终得到如右边所示的一个最小值关于lambda1的变化趋势图。

 

拉格朗日乘子法