拉格朗日乘子法_拉格朗日乘子法(1)

2383cc11b3c99572b2b92f4456fb150a.png

今天碰到一个问题,

这个函数,因为-log(x)凸函数的性质,我们可以知道是大于等于log(N)的。或者可以解释为相对熵plog(p/q)总是大于0的。其实这一点在信息论里面也有解释,假设信源的概率是1/N,如果你用了-log(Pi)对信源信息进行编码,总是要多花费一些字节。按照实际的信息进行编码,总是最省的,而且等于熵的大小。相对熵其实就是多出来的部分。

可以利用拉格朗日乘子法对这个函数的最小值求解, 构造

然后让F对Pi和lambda求偏导等于零,就可以得到Pi=1/N的结果了。

那么拉格朗日乘子法到底是什么意义呢?

第一,从形式上看,构造出了一个更高维的函数,把原来的约束优化问题,转化为高维度的无约束的最优化问题。约束项在去到最优解时等于0,所以约束条件满足了。

但是为什么让这个高维度函数最优时,目标函数是约束条件下最优呢?

有一个非常直观的几何解释。

从梯度上来看,目标函数的梯度一定在约束平面上没有分量。为啥呢?你想哈,

如果目标函数在约束面上有分量了,那朝着这个分量走一小步,不就可以取到更小/更大的值了吗?所以我们把约束平面的法向量给求出来,就是对约束条件求导。

有人问了,为啥对约束条件求导就是法向量呢?其实你把约束条件g(x,y) = c想成一个函数f取特定值, f=g(x, y), 那么f总有等高线吧,你求一个梯度不就是下降最快的方向,垂直等高线的吗,所以梯度就是法向量。

ok. 换一种说话,目标函数梯度和法向量共线, 就是和目标函数和约束函数的登高面相切,等等的说法,都是可以互换的。那么另我们构造的高维函数梯度对为0,就可以满足这样的条件。

观察这个构造完了的大函数,在最优化时加了一项lambda乘以约束项,如果把lambda想象成一个固定值,那么F函数相比目标函数多了一项,表示了约束条件对最优问题的影响。

-1/2(log(x)+log(y)):

65d045802b2ec242d9618f6c74d97b1a.png

lambda是 1, 所以F = -1/2(log(x)+log(y)) + 1 (x + y -1)

8c8628d9a89fbaf8a609579ebd8fd6ff.png

如图,F在[0.5, 0.5]的地方形成了一个最小值。

lambda为正说明目标函数和约束函数的两个梯度相反。反之梯度方向相同。

另外,拉格朗日乘子法在不等式的情况也非常有用,kkt条件是解决SVM的关键。而谷歌最近的文章巧妙的把不等式中的松弛变量引入VAE中对于隐变量的约束,直接对应了语音合成中情感表现力因子。用数学量化描述情感,可以说非常具有启发性了。我们下一次再仔细看看。

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

打赏
文章很值,打赏犒劳作者一下
表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
相关推荐
©️2020 CSDN 皮肤主题: 游动-白 设计师:白松林 返回首页

打赏

weixin_39602108

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者