admin管理员组

文章数量:1653295

摘要

深度强化学习已经为复杂任务提供了精准的控制器。但是,这些控制器的内存有限,并且依赖于能够在每个决策点感知完整的游戏画面。为了解决这些缺点,本文研究了用循环LSTM替换卷积后的第一个全连接层,从而在深度Q网络(DQN)中增加重复性的影响。最终的深度循环Q网络(DRQN)虽然在每个时刻只能看到一个帧,但可以成功地整合时间信息,并在标准Atari游戏和具有闪烁游戏画面的部分可观察到的等效游戏中复制DQN的性能。此外,当接受部分观测值训练并逐步评估更完整的观测值时,DRQN的性能随可观察性而变。相反,当接受全面观察并经过部分观察评估时,DRQN的性能下降幅度要小于DQN。因此,在相同的历史记录长度下,重复性是将帧历史记录堆叠在DQN的输入层中的一种可行的选择,虽然重复性在学习玩游戏时并没有赋予系统上的优势,但如果观测质量发生变化,循环网络可以更好地适应评估时间。

1.介绍


  事实证明,深度Q网络(DQN)能够在各种不同的Atari 2600游戏中学习人类级别的控制策略。 就像他们的名字一样,DQN学会估计从当前游戏状态中选择每个可能动作的Q值(或长期衰减收益)。假设网络的Q值估算足够准确,则可以通过在每个时刻选择具有最大Q值的动作来玩游戏。学习从原始屏幕像素到动作的策略映射,这些网络已显示出在许多Atari 2600游戏中均达到了最佳的性能。
  但是,深度Q网络在一定程度上是受限制的,因为它们可以从有限的过去状态或Atari 2600的游戏屏幕中学习映射。在实践中,DQN的训练使用的是agent遇到的最后四个状态组成的输入。因此,DQN将无法精通要求玩家记住比过去四个屏幕更远的事件的游戏。换句话说,任何需要记忆超过四帧的游戏都将显示为非马尔可夫模型,因为未来的游戏状态(和奖)不仅取决于DQN当前的输入。该游戏代替了马尔可夫决策过程(MDP),而变成了部分可观察的马尔可夫决策过程(POMDP)
  现实世界中的任务通常具有部分可观察性导致的不完整且嘈杂的状态信息。如图1所示,仅给定一个游戏屏幕,许多Atari 2600游戏就是POMDP。一个例子是Pong游戏,其中当前屏幕仅显示桨和球的位置,而不显示球的速度。 知道球的行进方向是确定最佳桨叶位置的关键因素。
  我们观察到,如果状态观察不完整,DQN的性能就会下降,并假设可以利用循环神经网络的优势来修改DQN以更好地处理POMDP。因此,我们引入了深度循环Q网络(DRQN),它是长短期记忆网络(LSTM)和深度Q网络的结合,至关重要的是,我们证明了DRQN能够处理部分可观察性,并且,经过全面观察并经过局部观察评估后,DRQN比DQN能够更好地处理信息丢失问题,因此,随着观察质量的下降,循环能够带来好处。

2.深度Q-learning

强化学习关注与未知环境进行交互的agents的学习控制策略。此类环境通常被形式化为马尔可夫决策过程(MDP),由4元组 ( S , A , P , R ) (\mathcal S,\mathcal A,\mathcal P,\mathcal R) (S,A,P,R)描述。在每个时刻 t t t,与MDP交互的agent观察到状态 s t ∈ S s_t\in \mathcal S stS,并选择一个动作 a t ∈ A a_t\in \mathcal A atA,从而确定奖赏 r t 〜 R ( s t , a t ) r_t〜\mathcal R(s_t,a_t) rtR(st,at)和下一个状态 s t + 1 〜 P ( s t , a t ) s_{t+1}〜\mathcal P(s_t,a_t) st+1P(st,at)
  Q-Learning是一种无模型的离线策略算法,用于估计从给定状态执行动作的长期预期收益。这些估计的收益称为 Q Q Q值。 较高的Q值表示在状态 s s s下动作 a a a将会产生较好的长期收益。通过将当前的 Q Q Q值估计值更新为观察到的奖赏以及在结果状态 s ′ s' s的所有动作 a ′ a' a上的最大Q值来迭代学习Q值:
Q ( s , a ) : = Q ( s , a ) + α ( r + γ   m a x a ′ Q ( s ′ , a ′ ) − Q ( s , a ) ) (1) Q(s, a) := Q(s, a)+α(r+γ~\mathop{max}\limits_{a'}Q(s', a')−Q(s, a))\tag{1} Q(s,a):=Q(s,a)+α(r+γ amaxQ(s,a)Q(s,a))(1)
  Atari游戏等许多具有挑战性的领域具有太多的独特状态,无法为每个 S × A \mathcal S\times\mathcal A S×A维持单独的估计。取而代之的是,使用模型来近似Q值。在Deep Q-Learning的情况下,模型是一个由权重和偏差参数化的神经网络,统称为 θ θ θ。通过在给定状态输入的情况下执行前向计算后得到网络的输出,从而可以在线估计 Q Q Q值。 这样的 Q Q Q值表示为 Q ( s , a ∣ θ ) Q(s,a |θ) Q(s,aθ)。现在不再更新单个Q值,而是对网络参数进行更新,以最小化可微分的损失函数:
L ( s , a ∣ θ i ) = ( r + γ   m a x a ′ Q ( s ′ , a ′ ∣ θ i ) − Q ( s , a ∣ θ i ) ) 2 (2) L(s,a|\theta_i)=(r+γ~\mathop{max}\limits_{a'}Q(s',a'|\theta_i)-Q(s,a|\theta_i))^2\tag{2} L(s,aθi)=(r+γ amaxQ(s,aθi)Q(s,aθi))2(2)
θ i + 1 = θ i + α ▽ θ L ( θ i ) (3) \theta_{i+1}=\theta_i+\alpha \bigtriangledown_{\theta}L(\theta_i)\tag{3} θi+1=θi+αθL(θi)(3)
  由于 ∣ θ ∣ ≪ ∣ S × A ∣ |θ|\ll|\mathcal S×\mathcal A| θS×A,神经网络模型自然地超越了已训练的状态和动作。但是,由于同一网络正在生成用于更新其当前 Q Q Q值的下一个状态目标 Q Q Q值,因此此类更新可能会波动或发散。深度Q-learning使用三种技术来恢复学习的稳定性:1)首先,将经验 e t = ( s t , a t , r t , s t + 1 ) e_t=(s_t,a_t,r_t,s_{t+1}) et=(st,at,rt,st+1)记录在回放内存 D \mathcal D D中,然后在训练时进行统一采样。2)其次,一个独立的目标网络 Q ^ \hat Q Q^向主网络提供更新目标,从而将网络所产生的目标解耦。 Q ^ \hat Q Q^与主网络相同,不同之处在于其参数 θ − θ^- θ每10,000次迭代更新一次以匹配 θ θ θ。最后,诸如RMSProp或ADADELTA之类的自适应学习速率方法可保持每个参数的学习速率 α α α,并根据该参数的梯度更新历史来调整 α α α。此步骤可弥补缺乏固定训练数据集的不足。 D \mathcal D D的不断变化的性质可能要求某些参数在达到固定点后再次开始更改。
  在每个训练迭代 i i i中,均从回放内存 D \mathcal D D中均匀采样经验 e t = ( s t , a t , r t , s t + 1 ) e_t=(s_t,a_t,r_t,s_{t + 1}) et=(st,at,rt,st+1)。网络的损失如下:
L i ( θ i ) = E ( s t , a t , r t , s t + 1 ) ∼ D [ ( y i − Q ( s t , a t ; θ i ) ) 2 ] (4) L_i(\theta_i)=\mathbb E_{(s_t,a_t,r_t,s_{t+1})\sim \mathcal D}[(y_i-Q(s_t,a_t;\theta_i))^2]\tag{4} Li(θi)=E(st,at,rt,st+1)D[(yiQ(st,at;θi))2](4)
其中 y i = r t + γ   m a x a ′ Q ^ ( s t + 1 , a ′ ; θ − ) y_i = r_t +γ~max_{a'} \hat Q(s_{t+1},a';θ^−) yi=rt+γ maxaQ^(st+1,a;θ)是目标网络 Q ^ \hat Q Q^给定的历史更新目标。经验表明,以这种方式执行的更新易于处理且稳定。

3.部分可观测

在现实环境中,很少能将系统的完整状态提供给agent确定。换句话说,马尔可夫属性在现实环境中很少拥有。部分可观测的马尔可夫决策过程(POMDP)通过明确地确认agent收到的仅仅是底层系统状态的一部分,可以更好地捕获许多现实环境的动态。形式上,POMDP可以描述为6元组 ( S , A , P , R , Ω , O ) (\mathcal S,\mathcal A,\mathcal P,\mathcal R,Ω,\mathcal O) (S,A,P,R,Ω,O) S , A , P , R \mathcal S,\mathcal A,\mathcal P,\mathcal R S,A,P,R像以前一样是状态,动作,转移和奖赏,除了现在的agent不再是真实的系统状态,而是接收到观测值 o ∈ Ω o∈Ω oΩ。该观察是根据概率分布 o 〜 O ( s ) o〜\mathcal O(s) oO(s)从底层系统状态生成的。Vanilla Deep Q-Learning没有明确的机制来解密POMDP的基础状态,并且仅当观察结果反映了基础系统状态时才有效。在一般情况下,由于 Q ( o , a ∣ θ ) ≠ Q ( s , a ∣ θ ) Q(o,a|θ) \not = Q(s,a|θ) Q(o,aθ)=Q(s,aθ),因此根据观察结果估算Q值可能会很糟糕。
  我们的实验表明,对Deep Q-Learning添加循环网络可使Q网络更好地估计底层系统状态,从而缩小 Q ( o , a ∣ θ ) Q(o,a|θ) Q(o,aθ) Q ( s , a ∣ θ ) Q(s,a|θ) Q(s,aθ)之间的差距。换句话说,循环深层Q网络可以更好地从观测序列中逼近实际Q值,从而在部分观测的环境中提供更好的策略。

4.DRQN结构


  为了确保状态之间的独立性,我们对DQN的体系结构进行了最小限度的修改,仅将其第一个完全连接的层替换为相同大小的循环LSTM层。如图2所示,DRQN的体系结构采用单个84×84预处理图像。 该图像由三个卷积层处理,然后输出被馈送到完全连接的LSTM层。 最后,线性层为每个动作输出一个Q-Value。在训练期间,从头开始共同学习卷积和循环部分的网络参数。在尝试了几种变体之后,我们决定采用这种架构。有关详细信息,请参见附录A。

5.稳定重复更新

更新一个循环卷积网络需要每次反向传递都包含许多时刻的游戏画面和目标值。此外,LSTM的初始隐藏状态可以设置为零,也可以从其先前的值继续进行。我们考虑两种类型的更新:
  1)顺序更新:从回放存储器中随机选择一个情节,并且更新从情节的开头开始,一直向前进行直到情节的结束。每个时刻的目标都是从目标 Q Q Q网络 Q ^ \hat Q Q^生成的。RNN的隐藏状态会在整个情节中延续。
  2)随机更新:从回放存储器中随机选择一个情节,并且更新从情节中的随机点开始,并且仅针对展开迭代时刻(例如,向后调用)进行。每个时刻的目标都是从目标 Q Q Q网络 Q ^ \hat Q Q^生成的。更新开始时,RNN的初始状态为零。
  顺序更新的优势是从情节开始就将LSTM的隐藏状态保持向前。但是,通过顺序采样整个情节的经验,它们违反了DQN的随机采样策略。随机更新更好地遵循了随机抽样经验的策略,但是结果是,LSTM的隐藏状态必须在每次更新开始时清零。将隐藏状态清零会使LSTM难以学习跨越比时间反向传播达到的时间步长更长的时间范围的函数。
  实验表明,这两种类型的更新都是可行的,并且可以在一系列游戏中产生相似性能的融合策略。因此,为了限制复杂度,本文中的所有结果均使用随机更新策略。我们希望所有呈现的结果都能推广到顺序更新的情况。
  在解决了深度循环 Q Q Q网络的体系结构和更新之后,我们现在展示它如何在具有部分可观察性的领域上应用的。

6.Atari游戏:MDP or POMDP

Atari 2600游戏的状态由控制台RAM的128个字节完全描述。但是,人类和agent只能观察到控制台生成的游戏屏幕。对于许多游戏,单个游戏屏幕不足以确定系统状态。DQN通过扩展状态表示以涵盖最后四个游戏屏幕来推断Atari游戏的完整状态。许多以前是POMDP的游戏现在变成了MDP。在(Mnih et al.2015)调查的49个游戏中,作者无法确定在输入的最后四个帧中是部分可观察到的游戏。由于探索的游戏在给定四个输入帧的情况下是完全可观察的,因此我们需要一种方法来引入部分可观察性,而不减少提供给DQN的输入帧的数量。

7.Flickering Atari Games


  为了解决此问题,我们引入了“Flickering Pong” POMDP-乒乓经典游戏的一种改进,这样,在每个时间步上,屏幕都被完全显示或完全被遮盖,概率为 p = 0.5 p=0.5 p=0.5。以这种方式遮挡帧可能会导致对Pong成为POMDP所需的观察结果的不完整记忆。
  为了在Flickering Pong比赛中取得成功,有必要在整个帧中整合信息以估计相关变量,例如球的位置和速度以及球拍的位置。由于预期中有一半的画面被遮挡,因此一名成功的玩家必须对几种可能连续的遮挡输入的可能性保持健壮。
  游戏屏幕历史记录所提供的最重要的机会可能是卷积检测物体速度的能力。 图3以可视化方式显示了游戏屏幕,从而最大程度地激活了不同的卷积过滤器,并确认10帧DQN的过滤器确实能够检测物体速度,尽管它的可靠性可能比普通的无遮挡Pong低
  值得注意的是,即使每个时刻仅给出一个输入帧,DRQN仍可以很好地完成此任务。对于单一帧,DRQN的卷积层无法检测任何类型的速度。取而代之的是,较高级别的循环层必须同时补偿闪烁的游戏画面和缺少卷积速度检测。图3(d)证实LSTM层中的各个单元能够通过时间整合嘈杂的单帧信息,以检测高水平的Pong事件,例如玩家错过球,球在桨上反射或球从墙壁上反射等。
  在最后十个时刻中使用反向传播对DRQN进行了训练。因此,非循环10帧DQN和循环1帧DRQN都可以访问相同的游戏屏幕历史记录。因此,在处理部分可观察性时,既可以选择使用具有悠久观察历史的非循环归深层网络,也可以使用在每个时刻经过单个观察值训练的循环网络。本节中的结果表明,循环网络可以随时间整合信息,并且可以作为在卷积网络的输入层中堆叠帧的可行替代方案。

8.标准Atari游戏的评估



  我们选择了以下9种Atari游戏进行评估: A s t e r o i d s Asteroids Asteroids D o u b l e   D u n k Double~Dunk Double Dunk具有自然闪烁的精灵,这使其成为潜在的重复学习候选者。 B e a m   R i d e r Beam~Rider Beam Rider C e n t i p e d e Centipede Centipede C h o p p e r   C o m m a n d Chopper~Command Chopper Command是射击游戏。 F r o s t b i t e Frostbite Frostbite是类似于 F r o g g e r Frogger Frogger的平台游戏。 I c e   H o c k e y Ice~Hockey Ice Hockey D o u b l e   D u n k Double~Dunk Double Dunk是体育比赛,需要定位球员,传球和投篮,并要求球员具备进攻和防守能力。 B o w l i n g Bowling Bowling需要在特定时间采取行动才能引导球。 M s . P a c m a n Ms.Pacman Ms.Pacman具有有闪烁的幽灵和强力药。
  给定最后四个输入帧,所有这些游戏都是MDP,而不是POMDP。因此,没有理由期望DRQN优于DQN。实际上,表1中的结果表明,DRQN的平均表现与DQN大致相当。具体而言:
  (1)我们对DQN的重新实现(表中的第二列得分)与原始版本的表现类似,在九场比赛中有五场表现优于原始版本,但在 C e n t i p e d e Centipede Centipede C h o p p e r   C o m m a n d Chopper~Command Chopper Command中得分不到原始得分的一半。
  (1)DRQN(表中的第一列得分)在 F r o s t b i t e Frostbite Frostbite D o u b l e   D u n k Double~Dunk Double Dunk的游戏中的表现优于我们的DQN,但在 B e a m   R i d e r Beam~Rider Beam Rider的游戏中却差很多(图4)。 F r o s t b i t e Frostbite Frostbite游戏(图1b)要求玩家跳越所有四排移动的冰山并返回屏幕顶部。经过几次冰山之后,已经收集了足够的冰,在屏幕的右上方建立了一座冰屋。随后,玩家可以进入冰屋以前进到下一个级别。如图4所示,在12,000次episodes之后,DRQN发现了一项策略,该策略可以使其可靠地越过第一级Frostbite。有关实验的详细信息,请参见附录B。

9.MDP到POMDP的泛化


  可以在标准MDP上训练循环网络,然后在评估时将其推广到POMDP吗?为了解决这个问题,我们在表1中所有9个游戏的闪烁等效项上评估了DRQN和DQN的最高得分策略。图5显示,虽然这两种算法由于缺少观测信息而导致性能显著下降,但DRQN在所有级别的观测率中能够捕获更多信息,且性能均优于DQN。我们得出的结论是,循环控制器对丢失的观测信息具有一定程度的鲁棒性,即使使用完整的状态信息也可以对其进行训练。

本文标签: LearningRecurrentDeepMDPsObservable