强化学习基础-对偶梯度上升

TB1O2cXEiLaK1RjSZFxXXamPFXa.jpg

本文为 AI 研习社编译的技术博客,原标题 :

The base of deep reinforcement-learning-Dual Gradient Descent

作者 | Jonathan Hui

翻译 | 斯蒂芬•二狗子

校对 | 斯蒂芬•二狗子       审核| 莫青悠      整理 | 菠萝妹

原文链接:

https://medium.com/@jonathan_hui/rl-dual-gradient-descent-fac524c1f049

对偶梯度下降是一个优化带约束目标函数的常用方法。在强化学习中,该方法可以帮助我们做出更好的决策。

TB1lU6JEkvoK1RjSZPfXXXPKFXa.png

该方法的核心思想是把目标函数转换为可以迭代优化拉格朗日对偶函数。其中拉格朗日函数 和拉格朗日对偶函数 g 定义为:

TB1qmZXEhnaK1RjSZFtXXbC2VXa.png

其中标量 λ 被称为拉格朗日乘子。

对偶函数 g 是原始优化问题的下限,实际上,若 f 是凸函数,g和f保持强对偶关系,即g函数的最大值等价于优化问题的最小。只要找到使得g最大的 λ ,我们就解决了原始优化问题。

所以,我们随机指定 λ 为初始值,使用优化方法解决这个无约束的g(λ)。

TB1xkY_EhnaK1RjSZFBXXcW7VXa.png

接下来,我们将应用梯度上升来更新 λ 以便最大化g。 g的梯度是:

TB1bknIEhTpK1RjSZFGXXcHqFXa.png

即为

TB1jGHTEkvoK1RjSZFwXXciCFXa.png

在下面的步骤1中,我们根据当前的 λ 值找到最小x,然后我们对g进行梯度上升(步骤2和3)。

TB1iaDNEcbpK1RjSZFyXXX_qFXa.png

先最小化带有原始x变量的拉格朗日 ,再用梯度法更新拉格朗日乘子 λ ,不断交替着进行这两种计算。通过这样重复迭代,λ、x将收敛。

  可视化

让我们想象一下这个算法是如何工作的。

TB18yLdEmzqK1RjSZPcXXbTepXa.jpg

Modified from source

设 y = g(x), z = f(x)。y 和 z 在来自于空间 G ,我们画出了与y对应的z。我们的解是上面的橙色的点: 空间 G上的最小f同时满足g(x)= 0。下面的橙色线是拉格朗日函数。它的斜率等于λ,它接触G的边界 。

TB1yo2LEmzqK1RjSZFHXXb3CpXa.jpg

然后我们使用梯度上升来调整 λ(斜率),以获得与 g(x)= 0 接触G的最大值 f(x) 。

TB1JGzBEjDpK1RjSZFrXXa78VXa.jpg

Modified from source

这就是对偶梯度上升法的工作原理。(PPT)

  示例

让我们通过一个示例来分析如何求解的。

TB1SgYMEgHqK1RjSZFgXXa7JXXa.jpg

  拉格朗日乘子

那么,拉格朗日乘子是什么?我们可以使用不同d值的等高线图可视化f函数。g是约束函数。

TB1E0YDEmrqK1RjSZK9XXXyypXa.jpg

其中 λ 是拉格朗日乘子

TB1_QrREgHqK1RjSZFEXXcGMXXa.jpg

  思考

对偶梯度下降可以使用任何优化方法来最小化具有λ值的拉格朗日函数。在轨迹优化问题中,我们一般使用的优化方法为iLQR。然后我们应用梯度上升来调整λ。通过重复迭代可以找到最优解。

TB1NOPdEmzqK1RjSZPcXXbTepXa.jpg

想要继续查看该篇文章相关链接和参考文献?

长按链接点击打开或点击【强化学习基础:对偶梯度上升】:

https://ai.yanxishe.com/page/TextTranslation/1427

AI研习社每日更新精彩内容,观看更多精彩内容:雷锋网雷锋网雷锋网(公众号:雷锋网)

盘点图像分类的窍门

动态编程:二项式序列

如何用Keras来构建LSTM模型,并且调参

一文教你如何用PyTorch构建 Faster RCNN

等你来译:

如何在神经NLP处理中引用语义结构 

你睡着了吗?不如起来给你的睡眠分个类吧! 

高级DQNs:利用深度强化学习玩吃豆人游戏

深度强化学习新趋势:谷歌如何把好奇心引入强化学习智能体 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值