强化学习70年演进:从精确动态规划到基于模型
【导读】这是一份帮你了解强化学习算法本质的资源,无需浏览大量文档,没有一条公式,非常适合学生和研究人员阅读。
作为强化学习研究人员,我经常需要提醒自己算法之间的细微差异。在这里,我想创建一个算法列表,并为每个算法概括一句或两句总结,以将其与同类算法中的其他算法区分开。另外,我将结合该领域的简短历史进行介绍。
强化学习起源于最优控制。这个故事始于20世纪50年代的精确动态规划(exact dynamic programming),广义上讲,精确动态规划是一种结构化的方法,它将一个有限的问题分解成更小的、可解决的子问题,这归功于理查德·贝尔曼。值得了解的是,克劳德·香农和理查德·贝尔曼在20世纪50年代和60年代为许多计算科学带来了革命性的变化。
在整个1980年代,出现了一些有关强化学习和控制之间联系的初步工作,第一个显著成果是Tesauro在1992年创造的基于时间差异模型的西洋双陆棋程序。在1990年代,出现了更多的算法分析倾向于我们现在所谓的强化学习。罗纳德·威廉姆斯(Ronald J. Williams)撰写了一篇开创性论文“用于连接主义强化学习的简单统计梯度跟踪算法”,其中介绍了现在的基本梯度策略。请注意,在标题中,他使用了术语“连接主义者”来描述强化学习——这是他按照人类认知的设计来指定他的模型算法的方式。这些现在被称为神经网络,但在25年前还仅仅是一个很小的研究领域。
直到2000年代中期,随着大数据的出现和计算革命,强化学习才转变为基于神经网络的算法,具有许多基于梯度的收敛算法。现代的强化学习通常分为两种,一种是无模型的,另一种是基于梯度的模型,我认可这种模型分类,下面我将按照这两大类进行分别介绍。
无模型强化学习
无模型强化学习直接为参与者生成策略。我喜欢把它看作是对如何行动的端到端的学习,所有的环境知识都嵌入到这个策略中,具体的算法包括下面这些。
策略梯度算法:
策略梯度算法修改代理的策略以跟踪那些为其带来更高奖励的操作。这使这些算法符合策略,因此它们只能从算法内采取的操作中学习。
用于连接主义强化学习的简单统计梯度跟踪算法(Simple Statistical Gradient-Following Algorithms for Connectionist Reinforcement Learning (REINFORCE) )--1992年:
该文提出了政策梯度的概念,提出了系统地增加产生高回报的行为的可能性的核心思想。
基于价值的算法:
基于价值的算法会根据给定状态的感知价值来修改代理策略。这使得这些算法脱离策略,因为代理可以通过从任何策略中读取奖励函数来更新其内部状态结构。
Q学习--1992年:
Q学习是现代强化学习中基于价值的经典方法,其中代理存储每个动作状态对的感知值,然后通知策略动作。
深度Q网络(DQN)--2015年:
深度Q学习仅应用神经网络来模拟Q函数的每个动作和状态,这可以节省大量的计算资源,并有可能扩展到连续的时间动作空间。
Actor-Critic算法:
行为者批判算法将基于策略和基于价值的方法结合在一起--通过对价值(critic)和行为(actor)使用单独的网络近似值。这两个网络相互配合,使彼此规范化并有望获得更稳定的结果。
Actor-Critic算法--2000年:
该文介绍了具有两个单独的但相互交织的模型来生成控制策略的想法。
让我们从基础开始说起:
十年后,我们发现自己处于深度强化学习算法的爆炸式增长中。请注意,在您阅读的所有出版物中,最核心的部分是使用神经网络近似的方法。
策略梯度算法经常遭受噪声梯度的困扰。我谈到了最近在另一篇文章中提出的梯度计算中的一个变化,当时他们使用了一系列最新的“最新技术”算法来解决这一问题,包括TRPO和PPO。
信任区域政策优化(TRPO)--2015年:
基于actor critic途径,TRPO的作者希望在每个训练迭代中调整策略的变化,他们引入了一个关于KL散度的硬约束,即新策略分布中的信息变化。约束的使用,而不是惩罚,允许更大的训练步骤和更快的收敛在实践中。
近端政策优化(PPO)--2017年:
PPO建立在与TRPO具有KL散度的相似思想上,并通过使用考虑KL散度的代理损失函数,解决了实现TRPO的困难(包括估算Fisher信息矩阵的共轭梯度)。PPO使用剪切来代替损失并帮助收敛。
深度确定性策略梯度(DDPG)--2016年:
DDPG将Q学习的改进与策略梯度更新规则结合在一起,该规则允许Q学习应用于许多连续控制环境。
深度强化学习的综合改进(Rainbow)--2017年:
Rainbow结合并比较了许多改进深度Q学习(DQN)的创新。这里引用了许多论文,它可以是一个了解DQN进展的好地方:
Prioritization DQN:在Q学习中重播过渡,那里存在更多不确定性,即要学习更多。 Dueling DQN:分别估算状态值和操作优势,以帮助泛化操作。 A3C:从多步引导中学习,以将更快将新知识传播到网络中。 分布式DQN:学习奖励的分配,而不仅仅是方法。 Noisy DQN:采用随机层进行探索,这使得动作选择的利用性降低。
接下来的两个对actor critic算法进行了类似的更改。请注意,SAC并不是TD3的后继产品,因为它们几乎是同时发布的,但是SAC使用了TD3中也使用的一些技巧。
双延迟深度确定性策略梯度(TD3)--2018年:TD3在DDPG的基础上进行了3个主要更改:1)“Twin”:同时学习两个Q函数,采用较低的Bellman估计值以减少方差,2)“Delayed”:与Q函数相比,更新策略的频率更低;3)向目标操作添加噪音,以降低攻击性策略。
Soft Actor Critic(SAC)--2018年:为了在机器人实验中使用无模型的RL,作者希望提高样本效率,数据收集的广度和勘探的安全性。他们使用基于熵的RL来控制探索,并使用DDPG样式Q函数逼近进行连续控制。注意:SAC还像TD3一样实现了裁剪,并且使用随机策略,它可以从规范操作选择中受益,这类似于平滑操作。
随着样本复杂度下降和结果上升,许多人对无模型强化学习的应用感到非常兴奋。最近的研究已将这些方法的越来越多的部分用于物理实验,这使广泛使用的机器人的前景更近了一步。
基于模型的强化学习
基于模型的强化学习尝试建立环境知识,并利用这些知识采取明智的措施。这些方法的目标通常是降低更接近端到端学习的无模型变量的样本复杂性。
学习控制的概率推断(PILCO)--2011:
本文是基于模型的强化学习的先驱之一,它提出了一种基于高斯过程(GP)动态模型(建立在不确定性估计中)的策略搜索方法(本质上是策略迭代)。使用多个高斯过程进行学习的应用已经很多了,但是目前为止还没有那么多的核心算法。
带有轨迹采样的概率集成(PETS)--2018:
PETS将三个部分组合成一个功能算法:1)由多个随机初始化的神经网络组成的动力学模型(模型集合);2)基于粒子的传播算法;3)和简单模型预测控制器。这三个部分以潜在的通用方式利用了动力学模型的深度学习。
基于模型的元策略优化(MB-MPO)--2018年:
本文使用元学习来选择集成中哪个动态模型最能优化策略并减少模型偏差。这种元优化允许MBRL在更低的样本中更接近于渐进的无模型性能。
模型集成信任区域策略优化(ME-TRPO)--2018年:
ME-TRPO是TRPO在模型集成上的应用,该模型集成被认为是环境的基本事实。对无模型版本的一个细微的添加是策略训练的停止条件,只有在策略迭代时,用户定义的模型比例不再看到改进时才会停止。
Atari的基于模型的强化学习(SimPLe)--2019:
SimPLe将基于模型的RL区域中的许多技巧与像素动态变化编码器相结合。这显示了Atari游戏中MBRL的最新技术(我个人认为这是很酷的文章,并希望人们能够尽快在其基础上进行开发)。
近年来,基于模型的强化学习背后的宣传越来越多。由于它缺乏无模型的同类产品的渐近性能,因此经常被忽略。我对它特别感兴趣,因为它已经启用了许多试验,令人兴奋的应用包括:四轴飞行器和步行机器人。
注释:
KL散度,也被称为Kullback-Leibler散度,是两个概率分布之间差异的度量。最好把它理解为两个分布p(原)和q(新)H(p,q)的交叉熵和原分布p, H(p)的熵之差。它由KL(P | Q)表示,是对信息增益的度量。
(*本文为AI科技大本营翻译文章,转载请微信联系 1092722531)
◆
精彩推荐
◆
1、评选进行中,参与投票即有机会参与抽奖,60+公开课免费学习
2、【Python Day——北京站】现已正式启动,「新春早鸟票」火热开抢!2020年,我们还将在全国多个城市举办巡回活动,敬请期待!活动咨询,可扫描下方二维码加入官方交流群~
CSDN「Python Day」咨询群 🔽来~一起聊聊Python
如果群满100人,无法自动进入,可添加会议小助手微信:婷婷,151 0101 4297(电话同微信)
推荐阅读
连遭Google、Tesla“冷眼”,俄罗斯小伙8个月喜提顶级自动驾驶公司Offer
图模型+Bert香不香?完全基于注意力机制的图表征学习模型Graph-Bert
5个可以帮助你提高工作效率的新AI工具
亚马逊机器学习服务:深入研究AWS SageMaker
从4个月到7天,Netflix开源Python框架Metaflow有何提升性能的魔法?
管理7k+工作流,月运行超10000万次,Lyft开源的Flyte平台意味着什么?
漫画 | 每年春节程序员都要经历的灵魂拷问
疫情下的区块链企业:11家公司共捐赠6000多万元,发动海外采购渠道
你点的每个“在看”,我都认真当成了AI