因为该方法是解决等式约束的最值问题万博客户端下载

当前位置:万博客户端下载 > 万博客户端下载 > 因为该方法是解决等式约束的最值问题万博客户端下载
作者: 万博客户端下载|来源: http://www.xhfhm.com|栏目:万博客户端下载

文章关键词:万博客户端下载,向量最优化

  拉格朗日乘数法(Lagrange Multiplier Method)应用广泛,可以学习麻省理工学院的在线数学课程。

  作为一种优化算法,拉格朗日乘子法主要用于解决约束优化问题,它的基本思想就是通过引入拉格朗日乘子来将含有n个变量和k个约束条件的约束优化问题转化为含有(n+k)个变量的无约束优化问题。拉格朗日乘子背后的数学意义是其为约束方程梯度线性组合中每个向量的系数。

  如何将一个含有n个变量和k个约束条件的约束优化问题转化为含有(n+k)个变量的无约束优化问题?拉格朗日乘数法从数学意义入手,通过引入拉格朗日乘子建立极值条件,对n个变量分别求偏导对应了n个方程,万博客户端下载然后加上k个约束条件(对应k个拉格朗日乘子)一起构成包含了(n+k)变量的(n+k)个方程的方程组问题,这样就能根据求方程组的方法对其进行求解。

  首先,我们先以麻省理工学院数学课程的一个实例来作为介绍拉格朗日乘数法的引子。

  min f(x,y)=x2+y2(两点之间的欧氏距离应该还要进行开方,但是这并不影响最终的结果,所以进行了简化,去掉了平方)

  根据上式我们可以知道这是一个典型的约束优化问题,其实我们在解这个问题时最简单的解法就是通过约束条件将其中的一个变量用另外一个变量进行替换,然后代入优化的函数就可以求出极值。我们在这里为了引出拉格朗日乘数法,所以我们采用拉格朗日乘数法的思想进行求解。

  我们将x2+y2=c的曲线族画出来,如下图所示,当曲线曲线进行相切时,切点到原点的距离最短。也就是说,当f(x,y)=c的等高线和双曲线g(x,y)相切时,我们可以得到上述优化问题的一个极值(注意:如果不进一步计算,万博客户端下载在这里我们并不知道是极大值还是极小值)。

  现在原问题可以转化为求当f(x,y)和g(x,y)相切时,x,y的值是多少?

  如果两个曲线相切,那么它们的切线相同,即法向量是相互平行的,▽f//▽g.

  这时,我们将原有的约束优化问题转化为了一种对偶的无约束的优化问题,如下所示:

  通过举上述这个简单的例子就是为了体会拉格朗日乘数法的思想,即通过引入拉格朗日乘子()将原来的约束优化问题转化为无约束的方程组问题。

  绿线标出的是约束g(x,y)=c的点的轨迹。蓝线是f(x,y)的等高线。箭头表示斜率,和等高线的法线平行。

  一旦求出的值,将其套入下式,易求在无约束极值和极值所对应的点。

  求这个椭球的内接长方体的最大体积。这个问题实际上就是条件极值问题,即在条件

  ,然后带入转化为无条件极值问题来处理。但是有时候这样做很困难,甚至是做不到的,这时候就需要用拉格朗日乘数法了。通过拉格朗日乘数法将问题转化为

  对于第二种形式,带约束条件的问题,我们更倾向于将其转化为无约束问题。在数学最优化问题中,拉格朗日乘数法是一种寻找变量受一个或多个条件所限制的多元函数的极值的方法。这种方法将一个有n 个变量与k 个约束条件的最优化问题转换为一个有n + k个变量的方程组的极值问题,其变量不受任何约束。这种方法引入了一种新的标量未知数,即拉格朗日乘数(:约束方程的梯度(gradient)的线性组合里每个向量的系数,搞不懂这句话在说神马)。

  的物理意义:表示原目标函数在约束下,所能达到的最大增长率(梯度)。其解释如下:

  F=g(w)=0F=g(w)=0带入上述式子中,可以得到在确定约束条件下的原目标函数的梯度。(这个说法有问题没有?上面式子已经是在极值下求解得到的,不过没有考虑约束(x)=0g(x)=0,所以这个说法是没问题的)(因此,上面的求解最优值,就变成了在约束条件下,原目标函数在约束函数下的梯度求解问题。怎么感觉怪怪的,没想到就变成了这样的问题。错误原因:有地方理解的有问题,对新目标求极值,中间找到了参数间的关系,然后把一个变量表示了出来,只能说明新目标函数在极值时的某个参数的样子)画个图或许更直观一些。

  在约束条件下某目标函数的最值,只可能出现在约束函数的等高线和目标函数在参数面投影的相切的地方。

  (x,y)f(x,y)为目标函数,(x,y)=cg(x,y)=c为约束条件,我们将两者投影到yxy平面上得到两者的等高线分布,体现在空间中就是(x,y)=0g(x,y)=0向上做垂直切面,切割了(x,y)f(x,y),得到了个曲线,这个曲线投影到yxy面上刚好与(x,y)=0g(x,y)=0重合,可以看到随着(x,y)f(x,y)的yxy范围缩小(对应其值逐渐增大),会有个与(x,y)=0g(x,y)=0的切点B,对应于(x,y)f(x,y)上的A点。A点则是满足约束的,刚好又是最值的地方。

  12wTw12wTw。哎~!~好囧~!~经过跟马博和贾老师的讨论,终于把这个问题整出了一个较为合理的解释。首先高次多项式回归的评估函数是误差函数:

  w进行约束,因为高次对应的参数会很大程度上影响拟合度,并且会有甩尾现象,想把其影响降到较小程度,并且尽可能保留主要部分(w0w0对应的信息)使得泛化能力强,我们想怎么去约束w呢?如果

  wTw⩽w20wTw⩽w02(二阶范数约束,肯定还有其他约束的情况),那岂不是实现了我们的约束目的,一方面对高次对应的参数进行了约束,一方面他们对整体的影响还不会对整体超过w0w0的影响。这样,还不能够用拉格朗日乘子法,因为该方法是解决等式约束的最值问题。怎么办呢?好好看看误差函数,这是一个凸函数,我们对

  w的约束是在某个范围内,那么根据上面手绘图来看,最值的解只可能出现在,误差函数的等高线与约束最外边缘的切点上。啊哈,这个地方给了我们很大启示,可以直接在约束边缘上找到误差函数的最小值即可。看下面这个图,就很直观地说明了这个问题。左侧为二阶范数约束,右侧为一阶范数约束。

  wTw⩽w20wTw⩽w02的最值问题的解,就是误差函数在等式wTw=w20wTw=w02的最值的解。哈哈,终于可以正大光明的应用拉格朗日乘子法了,于是就有了我们加入惩罚之后的新的代价函数:

  向量统一变成了1212,目测估计是为了方便求解。可以有其他的约束,比如

  对于第三种情况,又有等式约束,又有不等式约束的,怎么搞呢?上面我们是用拉格朗日乘数法搞定的等式约束的问题,那么对于包括有不等式约束的,可不可以把拉格朗日乘数法扩展一下,充分利用它,解决现在的问题呢?答案是可以,就是满足KKT条件时的最值求解。

  KKT条件:在满足一些有规则的条件下,一个非线性规划(Nonlinear Programming)问题能有最优化解的一个必要和充分条件。这是一个广义化拉格朗日乘数的成果,KKT是三个作者的首字母,Karush & Kuhn &Tucker。

网友评论

我的2016年度评论盘点
还没有评论,快来抢沙发吧!