英语原文共 9 页
基于深度强化学习方法来玩Atari
Volodymyr Mnih ,Koray Kavukcuoglu ,David Silver, Alex Graves,
Ioannis Antonoglou ,Daan Wierstra ,Martin Riedmiller
摘要:
我们提出了一种深度学习模型,即利用强化学习的方法,直接从高维感知输入中成功地学习控制策略。该模型是一个卷积神经网络,使用Q-learning的一个变体进行训练,其输入是原始像素,输出是评估未来奖励的值函数。 我们将该方法应用于Arcade学习环境中的七个Atari 2600游戏,而且并不需要调整架构或学习算法。 我们发现该方法在所有游戏中都比之前的方法有效,甚至在其中3个游戏中超过了一个人类玩家的水平。
- 简介
直接从视觉或语言等高维感知输入中去学习如何控制智能体是强化学习(RL)的长期挑战之一。运用在这些领域的大多数成功的RL应用程序都依赖于手工设计的特征以及线性值函数或者策略表示的组合。显然,这种系统的性能很大程度上依赖于特征表示的质量。
深度学习的最新进展使得从原始感知数据中提取高级特征成为可能,从而导致在计算机视觉[11,22,16]和语音识别[6,7]的有所突破。这些方法利用一系列神经网络架构,包括卷积网络,多层感知器,受限的玻尔兹曼机器和递归神经网络,并且已经涉及到了监督学习和非监督学习领域。似乎很自然地会问,是否可以利用相似的技术来解决 RL 中感知数据的问题。
然而,强化学习从深度学习的角度提出了一些挑战。首先,迄今为止大多数成功的深度学习应用都需要大量的手工标记的训练数据。另一方面,RL算法必须能够从一个变换的奖励信号中进行学习,而且这种信号还经常是稀疏的,有噪声的,且是延迟的。动作和该动作导致的奖励之间的延迟,可能有几千步那么长,与监督学习中的输入和目标之间的的直接联系相比,这种延迟让人尤其沮丧。另一个问题就是大多数深度学习算法假设数据样本是独立的,而在强化学习中通常会遇到高度相关状态的序列。此外,在RL中,数据分布随着算法学习到的新行为而改变,这对于深度学习中假定固定的底层分布的方法而言可能是有问题的。
本文证明了卷积神经网络可以克服这些挑战,并且在复杂的 RL 环境下从原始视频数据中学习到控制策略。该网络使用Q学习[26]算法的变体进行训练,利用随机梯度下降方法来更新权重。为了缓解相关数据和非静态分布的问题,我们使用了一种经验重播机制,该机制随机的采样之前的转换,所以就在许多过去的行为上平滑了训练分布。
图1:五个Atari 2600游戏的屏幕截图:(从左到右)Pong,Breakout,Space Invaders,Seaquest,Beam Rider
我们将我们的方法应用到在Arcade Learning Environment(ALE)[3]中实施的一系列Atari 2600游戏。 Atari 2600是一款具有挑战性的RL测试平台,为智能体提供高维视觉输入(60Hz的210*160 RGB视频)以及各种有趣的任务组合,这些任务组合被设计为对人类玩家来说很难。我们的目标是创建一个单一的神经网络智能体,它能够成功学会玩尽可能多的游戏。该网络没有提供任何游戏的特定信息或人为设计的视觉特征,并且没有提供网络模拟器的内部状态;除了视频输入,奖励,终端信号,以及作为人类玩家所能采取的一系列可能行动之外,它不会从别的行为中进行学习。此外,网络架构和用于训练的所有超参数在整个游戏中保持不变。到目前为止,在我们尝试的七场比赛中,有六场比赛该网络的表现优于以前的所有RL算法并且有三场比赛超过了人类专家。图1提供了用于训练的五个游戏的示例截图。
2.背景
我们考虑到智能体与环境ε交互的任务,在本例中是Atari模拟器,在一系列的行动,观察和奖励环境中。在每一个时间步骤,智能体从合法的游戏动作集合 A={1,...,K}中选择一个动作at . 该动作被传递到模拟器,然后修改其内部状态和游戏得分。通常,ε可能是随机的。 智能体是无法看到模拟器的内部状态的;相反,它只能观测到来自模拟器的一张图像 xt isin; Rd——由原始像素值构成的表示当前屏幕的向量。 此外,它还会收到奖励rt来表示比赛得分的变化。 值得注意的是,通常的游戏分数可能取决于整个先前的行动和观察序列; 关于一个动作的反馈可能得在几千次时间步骤上才能收到。
由于该智能体仅能观察当前屏幕的图像,因此任务只能被部分观察到并且许多模拟器状态在感官上是失真的,即不可能仅从当前屏幕xt完全理解当前情形。 因此,我们就考虑行动和观察的序列,st =x1,a1,x2,...,at-1,xt,然后学习依赖于这些序列的游戏策略。 模拟器中的序列都认为会在有限的时间步骤内结束。这种形式主义形成了一个巨大的但是有限的马尔可夫决策过程(MDP),其中的每一个序列都是一个清楚的状态。因此,我们采用标准的 RL 方法来处理 MDPs,仅仅利用完整的序列 st 作为时刻 t的状态表示。
智能体的目标是和模拟器进行交互,然后通过选择动作这种方式来使将来的奖励最大化。我们做出合理的假设,即:将来的奖励在每一个时间步骤都会打一个折扣gamma;,并且定义将来时刻 t 的折扣回报为:,其中T是游戏终止的时间步长。我们定义一个最优动作-值函数 Qlowast;(s,a) 作为采用任何策略后可达到的最大期望回报值,在看了一些序列 s 然后采取了一些动a,Qlowast;(s,a)=maxpi;E[Rt | st = s,at = a,pi;],其中pi;是一个从序列到动作的映射(或动作上的分布)。
最优动作-值函数服从一个叫做贝尔曼方程的重要等式。这个基于如下的观察:如果下一个时间步骤的序列 s#39;的 最优值 Q*(s#39;, a#39;) 对于所有可能的动作 a#39; 都是已知的,然后最优策略就是选择动作 a#39; 使得期望值 r gamma;Qlowast;(s′,a′)最大化,
(1)
许多强化学习算法背后的基本思想是通过使用Bellman方程作为迭代更新来估计动作-值函数,Qi 1(s,a)=E[r gamma;maxa′Qi(s#39;, a#39;)|s,a]。这种值迭代算法收敛于最优动作-值函数,即当i趋近于无穷大时,Qi趋近于Q*[23]。在实践中,这种基本方法是完全不切实际的,因为动作-值函数是针对每个序列单独估计的,没有任何一般性。 相反,通常使用函数逼近器来估计动作-值函数,即Q(s, a;theta;) asymp; Qlowast;(s, a)。在强化学习领域中,这通常是一个线性函数,但有时也使用非线性函数来替代,例如神经网络。 我们将具有权重theta;的神经网络函数称为Q网络。一个Q网络可以通过一个序列的损失函数 Li(theta;i)最小化来实现每一次迭代 i 的改变,
(2)
其中, 是第i次迭代的目标,rho;(s,a)是序列s和行为a的一个概率分布,我们称之为行为分布。当优化损失函数Li(theta;i)时,来自前一次迭代theta;i-1的参数保持固定。 请注意,目标依赖于网络的权重;这与使用监督学习的得到的目标不同,监督学习在学习开始之前是固定的。 区分开损失函数与对应的权重,我们得到如下的梯度,
(3)
不是计算上述梯度中全部的期望,在计算上比较成功的通过随机梯度下降来优化损失函数。如果在每个时间步之后更新权重,并且期望被分别来自行为分布rho;和仿真器ε的单个样本替换,那么我们就得到了熟悉的Q学习算法[26]。
值得注意的是,此算法是无模型的:它使用来自仿真器ε的样本直接解决强化学习任务,而无需显式构建ε的估计。它也是离线的:它了解贪婪策略a = maxa Q(s,a;theta;),同时遵循确保充分探索状态空间的行为分布。实际上,这个行为分布经常被euro;贪婪策略选择,有 1-euro; 的概率进行探索,以euro; 的概率随机选择一个动作。
3.相关研究工作
也许最著名的强化学习的成功案例是TD-gammon,一种西洋双陆棋游戏程序,它完全通过强化学习和自我对弈来学习,并且达到了超人类的游戏水平[24]。 TD-gammon使用类似于Q学习的无模型强化学习算法,并使用具有一个隐藏层1的多层感知器来做值函数的近似。
然而,在早期跟进TD-gammon的尝试中,包括把相同方法应用于国际象棋,围棋和跳棋的成功率都较低。 这导致人们普遍认为TD-gammon方法是一个只在西洋双陆棋游戏中起作用的特殊情况,也许是因为投骰子时的随机性有助于探索状态空间并使价值函数特别平滑[19]。
此外,研究表明,将无模型的强化学习算法(如Q学习)与非线性函数逼近器[25]或离线学习[1]相结合,可能会导致Q网络出现分歧。 随后,大多数强化学习的工作都集中在具有更好收敛性的线性函数逼近器上[25]。
最近,人们重新燃起了将深度学习与强化学习相结合的兴趣。 深度神经网络已被用于估计环境ε;受限波尔茨曼机已被用来估计价值函数[21]; 或策略[9]。此外,梯度时差法部分地解决了Q学习的分歧问题。 在评估具有非线性函数近似的固定策略时,这些方法被证明是收敛的[14];或者当使用Q学习的限制变量去学习具有线性函数近似的控制策略时[15]。 然而,这些方法尚未扩展到非线性控制。
也许与我们自己的方法最相似的先前工作是神经拟合Q学习(NFQ)[20] .NFQ优化方程2中的损失函数序列,使用RPROP算法进行更新Q网络的参数。但是,它使用批量更新,每次迭代的计算成本与数据集的大小成正比,而我们考虑随机梯度,每次迭代具有低的固定成本并且可以扩展到大型数据集。NFQ也已成功应用于使用纯视觉输入的简单现实控制任务:首先使用深度自动编码器来学习任务的低维表示,然后将NFQ应用于此表示[12]。相比之下,我们的方法直接从视觉输入端应用端到端的强化学习; 因此,它可以学习与区分动作值直接相关的特征。 Q-learning也曾经历过经验重播和简单的神经网络[13],但同样从低维状态开始,而不是原始的视觉输入。
[3]引入了Atari 2600仿真器作为强化学习的应用平台,他们应用标准强化学习算法与线性函数逼近和通用视觉特征。 随后,通过使用更多的特征来改进结果,并使用拔河比赛将特征随机投影到较低维空间[2]。TheHyperNEAT进化架构[8]也已应用于Atari平台,在那里它被用来演化(分别为每个不同的游戏)一个神经网络,代表对应游戏的一个战略。当使用仿真器重置工具重复训练确定性序列时,这些策略能够在几个Atari游戏中利用设计缺陷。
4.深度强化学习
最近在计算机视觉和语音识别方面的突破依赖于在非常大的训练集上有效地训练深度神经网络。最成功的方法是直接从原始输入进行训练,使用基于随机梯度下降的轻量级更新。通过将足够的数据输入深度神经网络,通常可以比人工制作的特征学习到更好的表示[11]。这些成功激发了我们强化学习的方法。 我们的目标是将强化学习算法与深度神经网络相结合,该神经网络直接在RGB图像上运行,并通过使用随机梯度更新有效地处理训练数据。
Tesauro的TD-Gammon架构为这种方法提供了一个起点。这个架构更新了用来估算价值函数的网络参数,直接来自经验的在线样本,st,at,rt,st 1,at 1,从算法与环境的交互中得出( 或者通过自我对弈,在西洋双陆棋的游戏背景下)。 由于这种方法在20年前能够胜过最好的人类西洋双陆棋玩家,因此很自然地想知道,二十年的硬件改进,加上现代深度神经网络架构和可扩展的RL算法是否会产生重大进展。
与TD-Gammon和类似的在线方法相比,我们利用一种称为经验重放的技术[13],其中我们在每个时间步骤存储智能体的经验,et =(st,at,rt,st 1) 在数据集D = e1,...,eN中,将许多集合汇集到重放存储器中。在算法的内部循环期间,我们将Q-学习更新或小批量更新方法应用于从存储样本池中随机抽取的经验样本e~ D。 在执行经验重放之后,智能体根据euro;-greedy策略选择并执行操作。由于使用任意长度的经历作为神经网络的输入可能很困难,我们的Q函数反而用于由函数phi;产生的固定长度的经历表示。我们称之为深度Q学习的完整算法在算法1中给出。
与标准的在线Q学习方法相比,这种方法有几个优势[23]。 首先,每步经历都有可能用于多次权重更新中,从而提高数据效率。
其次,由于样本之间的强相关性,直接从连续样本中学习是低效的;随机化样本打破了这些相关性,从而减少更新的方差。第三,当在线学习时,由当前参数决定被训练的下一个数据样本。 例如,如果最大化动作是向左移动,那么训练样本将由来自左侧的样本支配; 如果最大化动作切换到右侧,则训练分布也将切换。很容易看出如何产生不必要的反馈回路,参数可能会陷入较差的局部最小值,甚至会发生灾难性的分歧[2
资料编号:[5867]
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。