• Recurrent Experience Replay in Distributed Reinforcement Learning


    郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布!

    ICLR 2019

    ABSTRACT

      基于最近在RL智能体分布式训练方面取得的成功,在本文中,我们研究了从分布式优先经验回放中对基于RNN的RL智能体的训练。我们研究了参数滞后导致表征漂移和循环状态陈旧的影响,并根据经验得出了改进的训练策略。使用单一网络架构和一组固定的超参数,生成的智能体,Recurrent Replay Distributed DQN使Atari-57上的现有技术翻了两番,并与DMLab-30上的最新技术相匹配。它是第一个在57款Atari游戏中的52款中超过人类水平性能的智能体。

    1 INTRODUCTION

      由于在解决具有挑战性的问题方面屡获成功,例如在Atari 2600游戏中达到人类水平(Mnih et al., 2015),在围棋游戏中击败世界冠军,强化学习(RL)最近重新引起了研究兴趣(Silver et al., 2017),以及玩竞技5人DOTA (OpenAI, 2018b)。这些成功中最早的一个利用经验回放来提高数据效率,并堆叠固定数量的连续帧来克服Atari 2600游戏中的部分可观察性。然而,随着向越来越困难、部分可观察的领域迈进,对更高级的基于记忆的表示的需求增加,需要更多原则性的解决方案,例如循环神经网络(RNN)。在RL中使用LSTM (Hochreiter & Schmidhuber, 1997)已被广泛采用以克服部分可观察性(Hausknecht & Stone, 2015; Mnih et al., 2016; Espeholt et al., 2018; Gruslys et al., 2018)。

      在本文中,我们研究了带有经验回放的RNN训练。我们有三个主要贡献。首先,我们展示了经验回放对参数滞后的影响,导致表征漂移和循环状态陈旧。这在分布式训练环境中可能会加剧,并最终导致训练稳定性和性能下降。其次,我们通过经验回放对几种RNN训练方法的效果进行了实证研究,以减轻上述影响。第三,我们提出了一个智能体,它整合了这些发现,以在Atari-57 (Bellemare et al., 2013)的最新技术水平上取得重大进展,并与DMLab-30上的最新技术水平相匹配(Beattie et al., 2016)。据我们所知,我们的智能体Recurrent Replay Distributed DQN (R2D2)是第一个使用单一网络架构和一组固定超参数实现这一目标的智能体。

    2 BACKGROUND

    2.1 REINFORCEMENT LEARNING

      我们的工作设置在强化学习(RL)框架内(Sutton & Barto, 1998),其中智能体与环境交互以最大化折扣奖励,其中γ ∈ [0, 1)。我们将环境建模为由元组(S, A, T, R, Ω, O)给出的部分可观察马尔可夫决策过程(POMDP)(Monahan, 1982; Jaakkola et al., 1995; Kaelbling et al., 1998)。基础马尔可夫决策过程(MDP)由(S, A, T, R)定义,其中 S 是状态集,A 是动作集,T 是将状态-动作映射到下一个状态的概率分布的转换函数, 并且R:S×A → R是奖励函数。最后,Ω 给出智能体可能接收到的一组观察结果,O 是将(未观察到的)状态映射到观察结果的概率分布的观察函数。

      在这个框架内,智能体收到一个观察o ∈ Ω,它可能只包含有关底层状态s ∈ S的部分信息。当智能体采取动作a ∈ A时,环境通过转换到状态s' ~ T(·|s, a)来响应并给智能体一个新的观察o' ~ Ω(·|s')和奖励r ~ R(s, a)。

      尽管在POMDP中有许多RL方法,但我们专注于使用具有随时间反向传播(BPTT) (Werbos, 1990)的循环神经网络(RNN)来学习消除POMDP真实状态歧义的表示。

      深度Q网络智能体(DQN)(Mnih et al., 2015)通过使用4个连续帧的帧堆叠作为观察值,从Atari-57基准中学习玩游戏,并训练卷积网络来表示具有Q-learning (Watkins & Dayan, 1992),来自在回放缓冲区中连续收集的数据(Lin, 1993)。其他算法,如A3C (Mnih et al., 2016),使用LSTM,并直接在在线经验流上进行训练,而不使用回放缓冲区。Hausknecht & Stone (2015)通过在回放中存储序列并在训练期间将循环状态初始化为零,将DQN与LSTM相结合。

    2.2 DISTRIBUTED REINFORCEMENT LEARNING

      强化学习的最新进展通过利用将学习与行动分开的分布式训练架构,从在不同环境实例上并行运行的许多参与者收集数据,显著提高了性能(Horgan et al., 2018; Espeholt et al., 2018; Gruslys et al., 2018; OpenAI, 2018b;a; Jaderberg et al., 2018)。

      分布式回放允许Ape-X智能体(Horgan et al., 2018)将学习与行动分离,actor将经验输入分布式回放缓冲区,学习者从中接收(随机)训练批次。除了具有优先采样的分布式回放(Schaul et al., 2016),Ape-X使用n步回报目标(Sutton, 1988)、双重Q学习算法(van Hasselt et al., 2016)、对偶DQN网络架构(Wang et al., 2016)和4帧堆栈。Ape-X在Atari-57上实现了最先进的性能,显著优于最佳单参与者算法。它也被用于连续控制领域,并再次展示了最先进的结果,进一步展示了RL中分布式训练的性能优势。

      IMPALA (Espeholt et al., 2018)是一种分布式强化学习架构,它使用先进先出队列和一种称为V-trace的新型异策校正算法,从大量独立参与者产生的经验流中依次学习。IMPALA将转换序列与初始循环状态一起存储在经验队列中,并且由于经验只训练一次,因此该数据通常与学习者参数非常接近。Espeholt et al. (2018)表明IMPALA可以在Atari-57和DMLab-30基准测试套件中实现强大的性能,并且能够使用单个大型网络同时学习基准测试中的所有任务,同时保持人类水平的性能。

    2.3 THE RECURRENT REPLAY DISTRIBUTED DQN AGENT

      我们提出了一种新的智能体,即循环回放分布式DQN (Recurrent Replay Distributed DQN, R2D2),并用它来研究循环状态、经验回放和分布式训练之间的相互作用。R2D2与Ape-X最相似,建立在优先分布式回放和n步双重Q学习(n = 5)的基础上,通过大量参与者(通常为256)产生经验,并从单个学习者的批量回放经验中学习。与Ape-X一样,我们使用Wang et al. (2016)的对偶网络架构,但在卷积堆栈之后提供一个LSTM层,类似于Gruslys et al. (2018)。

      代替常规的(s, a, r, s')转换元组,我们在回放中存储(s, a, r)的固定长度(m = 80)序列,相邻序列相互重叠40个时间步骤,并且从不跨越回合界限。在训练时,我们在相同的状态序列上展开在线和目标网络(Mnih et al., 2015)以生成价值估计和目标。我们将在下一节中回放我们对循环状态的精确处理的细节。

      与Ape-X一样,我们在Atari上训练时使用4帧堆栈和完整的18个动作集。在DMLab上,我们使用单个RGB帧作为观察值,并使用与Hessel et al. (2018b)相同的动作集离散化。遵循Pohlen et al. (2018)中修改后的Ape-X版本,我们不裁剪奖励,而是使用形式为的可逆价值函数重新缩放,从而产生以下对于Q值函数的n步目标:

    这里,θ-表示目标网络参数,每2500个学习者步骤从在线网络参数中复制一次。

      我们的回放优先级与Ape-X的不同之处在于,我们在序列上使用了最大和平均绝对n步TD误差δi的混合:。我们将优先级指数设置为0.9。这种更激进的方案是由我们观察到的,即对长序列进行平均往往会消除大错误,从而压缩优先级范围并限制优先级选择有用经验的能力。

      最后,与Ape-X相比,我们使用了略高的折扣γ = 0.997,并禁用了自(Mnih et al., 2015)在某些工作中已在Atari智能体中使用的loss-of-life-as-episode-end启发式。附录中提供了完整的超参数列表。

      我们使用单个基于GPU的学习器训练R2D2智能体,每秒执行大约5次网络更新(每次更新在64个长度为80的序列的小批量上),每个参与者每秒在Atari上执行~260个环境步骤(DMLab上每秒~130个)。

    3 TRAINING RECURRENT RL AGENTS WITH EXPERIENCE REPLAY

      为了在部分观察到的环境中获得良好的性能,RL智能体需要一种状态表示,除了当前观察之外,它还需要编码有关其状态-动作轨迹的信息。实现这一点的最常见方法是使用 RNN,通常是LSTM (Hochreiter & Schmidhuber, 1997),作为智能体状态编码的一部分。为了从回放中训练RNN并使其能够学习有意义的长期依赖关系,需要将整个状态-动作轨迹存储在回放中并用于训练网络。Hausknecht & Stone (2015)比较了两种从回放经验中训练LSTM的策略:

    • 使用零开始状态在采样序列的开头初始化网络。
    • 回放整个回合的轨迹。

      零开始状态策略的吸引力在于它的简单性,它允许对相对较短的序列进行独立的去相关采样,这对于神经网络的鲁棒优化很重要。另一方面,它迫使RNN学习从非典型的初始循环状态("初始循环状态不匹配")中恢复有意义的预测,这可能会限制其完全依赖其循环状态并学习利用长时间相关性的能力。另一方面,第二种策略避免了寻找合适的初始状态的问题,但是由于与随机抽样批次经验元组的训练相比,由于轨迹中状态的高度相关性,序列长度不同且可能与环境相关,因此会产生许多实际、计算和算法问题,以及更高的网络更新方差。

      Hausknecht & Stone (2015)观察到两种策略在一组Atari游戏中的经验智能体性能几乎没有差异,因此选择了更简单的零启动状态策略。对此的一种可能解释是,在某些情况下,如果允许一定数量的"老化"步骤,RNN往往会收敛到更"典型"的状态,因此在足够长的序列上从糟糕的初始循环状态中恢复。我们还假设,虽然零启动状态策略在大多数完全可观察的Atari域中可能就足够了,但它会阻止循环网络学习更多内存关键域(例如DMLab)中的实际长期依赖关系。

      为了解决这些问题,我们提出并评估了两种从随机采样的回放序列中训练循环神经网络的策略,它们可以单独使用或组合使用:

    • Stored state:将循环状态存储在回放中,并在训练时使用它来初始化网络。这部分弥补了零启动状态策略的弱点,但它可能会受到"表征漂移"的影响,导致"循环状态过时",因为足够老的网络生成的存储循环状态可能与由更新的版本产生的典型状态有很大不同。
    • Burn-in:允许网络有一个"老化期",只使用一部分回放序列来展开网络并产生一个开始状态,并只在序列的剩余部分更新网络。我们假设这允许网络从较差的起始状态(零,或存储但陈旧)中部分恢复,并在需要产生准确的输出之前发现自己处于更好的初始状态。

      在我们所有的实验中,我们将使用第2.3节中提出的智能体架构,回放序列长度为m = 80,可选的老化前缀为l = 40或20步。我们的目标是评估表征漂移和周期性状态陈旧对网络训练的负面影响,以及如何通过不同的训练策略来减轻它们。为此,我们将比较使用其中一种策略展开时网络在采样回放序列上产生的Q值,以及在每一步使用真实存储的循环状态时产生的Q值(参见图1a,显示隐藏状态的不同来源)。

      更正式地说,令ot, ... , ot+m和ht, ... , ht+m表示观察的回放序列和存储的循环状态,用ht+1 = h(ot, ht; θ)和q(ht; θ)分别表示循环状态和带参数向量θ的循环神经网络输出的Q值向量输出。我们将隐藏状态写为,在训练期间使用并在上述策略之一下初始化()。然后通过在序列ot, ... , ot+l+m-1上展开具有参数的网络来计算。我们通过测量Q值差异,通过它们对Q值估计的影响来估计表征漂移和周期性状态陈旧的影响:

    在回放序列的非burn-in部分的第一个(i = l)和最后一个(i = l + m - 1)之间状态(参见图1a的说明)。最大Q值的归一化有助于不同环境和训练阶段之间的可比性,因为智能体的Q值范围在这些之间可能会有很大差异。请注意,我们没有直接比较在行动和训练时产生的Q值q(ht; θ)和,因为在训练智能体时,这些值自然会有所不同。相反,我们专注于将相同的网络(由参数化)应用于不同的循环状态所产生的差异。

      在图1b中,我们根据这个提议的指标比较了在几个DMLab环境中使用不同策略训练的智能体。可以看出,零起始状态启发式导致循环状态过时对网络输出的影响明显更严重。如上所述,在RNN有时间从非典型起始状态恢复之后,与第一个序列状态相比,最后一个序列状态的这种影响大大降低,但是对于零状态,陈旧的影响仍然比存储状态策略更差。纯零状态启发式的另一个潜在缺点是它阻止智能体强烈依赖其循环状态并利用长期时间依赖性,请参见第5节。

      我们观察到,老化策略本身可以部分缓解回放序列初始部分的过时问题,而对后续序列状态的Q值差异没有显著影响。从经验上看,这转化为显著的性能改进,如图1c所示。这本身就值得注意,因为纯零状态和老化策略之间的唯一区别在于后者将网络展开到网络不接收更新的状态前缀上。在非正式实验(此处未显示)中,我们观察到这不是由于展开长度本身不同(即,在长度为l + m的序列上,没有老化的零状态策略总体上表现更差)。我们假设老化的有益效果在于它可以防止在零状态初始化后的前几个时间步骤上高度不准确的初始输出导致对RNN参数的"破坏性更新"。

      另一方面,存储状态策略被证明在缓解Q值差异方面的状态陈旧性方面总体上更有效,这也导致了经验性能的更清晰和更一致的改进。最后,这两种方法的组合始终在最后一个序列状态上产生最小的差异和最稳健的性能增益。

      我们在本节结束时观察到,存储状态和老化策略在表征漂移和循环状态陈旧的影响的(间接)测量以及经验性能方面都比朴素的零状态训练策略提供了实质性优势。由于它们有益地结合在一起,我们在第4节中对我们提出的智能体的经验评估中使用了这两种策略(老化长度为l = 40)。关于分布式训练对表征漂移和Q值差异的影响的额外结果在附录中给出。

    4 EXPERIMENTAL EVALUATION

      在本节中,我们评估R2D2在两个具有挑战性的深度强化学习基准套件上的经验性能:Atari-57 (Bellemare et al., 2013)和DMLab-30 (Beattie et al., 2016)。Deep Q-Networks (DQN)(Mnih et al., 2015)的一项基本贡献是将在整个57款Atari游戏中使用单一网络架构和一组超参数作为标准实践。不幸的是,在Atari之后扩展这个标准并没有得到维护,据我们所知,目前在这个标准下没有适用于Atari57和DMLab-30的算法。特别是,我们将比较Ape-X和IMPALA的性能,其中超参数针对每个基准单独调整。

      对于R2D2,我们在所有实验中使用单个神经网络架构和一组超参数。这证明了比之前在深度RL中观察到的更强的鲁棒性和通用性。也是为了追求这种普遍性,我们决定禁用(Atari特有的)将生命损失视为回合结束的启发式方法,并且不应用奖励裁剪。尽管如此,我们还是在Atari和DMLab中观察到了最先进的性能,验证了从我们的实证研究中得出的直觉。附录中提供了对这些修改效果的更详细的消融研究。

    4.1 ATARI-57

      Atari-57基准基于Arcade Learning Environment (ALE)(Bellemare et al., 2013),由57个经典的Atari 2600视频游戏组成。DQN (Mnih et al., 2015)实现了最初的人类水平性能,从那时起,RL智能体通过算法和架构的进步得到了显著改善。目前,最近的分布式强化学习算法IQN (Dabney et al., 2018)和Rainbow (Hessel et al., 2018a)实现了单个参与者的最新技术,而对于多参与者结果,Ape-X (Horgan et al., 2018)。

      图2(左)显示了R2D2和相关方法在所有游戏中的人类归一化分数中位数(有关完整的Atari-57分数和学习曲线,请参见附录)。R2D2的性能比所有单参与者智能体高一个数量级,并且使用更少的参与者(256个而不是360个)使Ape-X的先前状态性能提高了四倍,从而提高了样本和时间效率。表1列出了R2D2和其他算法的人类归一化分数的平均值和中值,突出了这些改进。

      除了在整个任务套件上获得最先进的结果外,R2D2还在大部分单独的Atari游戏中获得了有史以来最高的报告智能体分数,在许多情况下,通过实现可达到的最高分数来"解决"各个游戏。在图2(右)中,我们突出显示了R2D2的一些单独的学习曲线。例如,请注意MS.PACMAN上的性能甚至比(van Seijen et al., 2017)中报告的智能体还要好,后者是专门为这款游戏设计的。此外,我们注意到Ape-X在与Rainbow (49)相同数量的游戏中实现了超人的表现,并且它的改进来自于提高已经很高的分数。另一方面,R2D2在57场比赛中的52场比赛中都超越人类。在剩下的那些中,我们观察到三个(SKIING、SOLARIS和PRIVATE EYE)可以通过更高的折扣率和更快的目标网络更新达到超人的性能。另外两个(MONTEZUMA'S REVENGE和PITFALL)是已知的困难探索问题,使用通用算法解决这些问题可能需要新的算法洞察力。

    4.2 DMLAB-30

      DMLab-30是一套包含30个问题的3D第一人称游戏引擎,用于测试各种不同的挑战(Beattie et al., 2016)。虽然Atari在很大程度上只能通过帧堆叠来处理,但DMLab-30需要长期记忆才能达到合理的性能。也许正因为如此,以及将循环状态与经验回放相结合的困难,迄今为止,表现最佳的智能体总是以在(接近)同策设置中训练的actor-critic算法的形式出现。我们首次使用基于价值函数的智能体在DMLab-30上展示了最先进的性能。我们强调,与最先进的IMPALA架构(Espeholt et al., 2018)不同,R2D2智能体在这里使用与Atari相同的一组超参数。

      在此,我们主要感兴趣的是与IMPALA"专家"进行比较,而不是与它的多任务变体进行比较。由于最初的IMPALA专家接受了少量数据(大约333M环境帧)的训练,并且由于R2D2使用了(Hessel et al., 2018b)中引入的改进动作集,我们决定重新运行具有改进动作集的IMPALA智能体和可比较的训练时间(10B环境帧)进行更公平的比较,与(Espeholt et al., 2018)中的原始智能体相比,IMPALA智能体的得分显著提高,见表1。

      图3将R2D2与IMPALA进行了比较。我们注意到R2D2超过了(浅)IMPALA版本的性能,尽管使用了与在Atari上训练的变体完全相同的一组超参数和架构,特别是没有使用所有IMPALA使用的"乐观非对称奖励裁剪"智能体1

      为了展示我们智能体的潜力,我们还通过添加不对称奖励裁剪,使用来自IMPALA(深度)的15层ResNet,并将目标更新频率从2500降低到400,为DMLab only (R2D2+)设计了一个稍微适应的R2D2版本以获得更好的样本效率。为了适应GPU内存中的更大模型,我们仅在这些运行中将批大小从64减少到32。我们观察到,这个修改后的版本比标准R2D2产生了进一步的实质性改进,并且在样本效率和渐近性能方面与深度IMPALA相匹配。我们重新运行的深度IMPALA和R2D2+都在DMLab-30基准测试中设置了新的最先进的分数。

    1 这种特定领域的启发式有助于探索DMLab-30级别的某个子集。

    5 ANALYSIS OF AGENT PERFORMANCE

      Atari-57是一类几乎完全可观察的环境(给定4帧堆栈观察),在其上训练的智能体不一定会从记忆增强表示中受益匪浅。R2D2与其前身Ape-X之间的主要算法差异在于使用了循环神经网络,因此R2D2与Atari上的现有技术相比有多大的优势令人惊讶。在本节中,我们分析了LSTM网络和其他算法选择对R2D2智能体的高性能的作用。

      由于异步或分布式RL智能体的性能可能取决于细微的实现细节,甚至诸如精确的硬件设置等因素,因此与(Horgan et al., 2018)中报告的Ape-X智能体进行直接比较是不切实际的。相反,在此我们通过将R2D2智能体与纯前馈变体进行比较来验证LSTM及其训练策略对R2D2的成功起着至关重要的作用,所有其他参数保持不变。类似地,我们考虑R2D2的性能,使用没有价值重新缩放(裁剪)的奖励裁剪和使用γ = 0.99(折扣)的较小折扣因子。图4中的消融结果非常清楚地表明,LSTM组件对于提高智能体的峰值性能和学习速度至关​​重要,这解释了与Ape-X的大部分性能差异。其他设计选择具有更多的混合效果,在某些游戏中有所改善,而在其他游戏中则损害了性能。完整的消融结果(特别是对前馈智能体变体的完整Atari-57套件的消融,以及使用生命损失作为回合终止启发式的消融)在附录中提供。

      在我们的下一个实验中,我们测试R2D2智能体在多大程度上依赖其记忆,以及不同训练策略如何影响它。为此,我们选择了Atari游戏MS.PACMAN,尽管游戏几乎完全可观察,但R2D2在该游戏上显示出最先进的性能,以及强烈需要使用内存的DMLab任务EMSTM WATERMAZE。我们在每个游戏中训练两个智能体,分别使用零状态和存储状态策略。然后,我们通过将它们的策略限制在固定的历史长度来评估这些智能体:在时间步骤 t,他们的策略使用在时间步骤ot-k+1, ... , ot上展开的LSTM,其中隐藏状态ht-k被0代替,而不是实际的隐藏状态(请注意,这仅用于评估,而不是在智能体的训练时间)。

      在图5(左)中,我们将历史长度 k 从 ∞ (完整历史)减少到0,并显示智能体性能的下降(测量为10个回合的平均分数)作为 k 的函数。我们还显示了最大Q值的差异和正确贪婪动作的百分比(其中无约束的变体被视为基本事实)。

      我们观察到限制智能体的记忆会逐渐降低其性能,这表明它在两个域上都使用了非平凡的记忆。至关重要的是,虽然使用存储状态训练的智能体在使用完整历史记录时表现出更高的性能,但其性能衰减比使用零起始状态训练的智能体要快得多。这证明了过去基于RNN的智能体中使用的零起始状态策略限制了智能体学习利用其记忆的能力。虽然这不一定会转化为性能差异(如MS.PACMAN),但只要任务需要有效使用内存(如EMSTM_WATERMAZE),它就会这样做。与零状态策略相比,存储状态的这一优势可以解释R2D2与其近亲Reactor (Gruslys et al., 2018)之间的巨大性能差异,后者使用零状态策略从回放中训练其LSTM策略。

      最后,图5的右侧和中间列显示了随着可用历史长度 k 减少到0,Q值的质量和由此产生的贪婪策略的单调下降,提供了约束和经验智能体性能之间的简单因果关系。

      为了对R2D2及其前馈变体学习的不同行为进行定性比较,我们在https://bit.ly/r2d2600提供了几个智能体视频。

    6 CONCLUSIONS

      在此,我们从评估性能退一步,在更广泛的背景下讨论我们的实证研究结果。我们的结果中有两个令人惊讶的发现。

      首先,虽然零状态初始化经常在以前的工作中使用(Hausknecht & Stone, 2015; Gruslys et al., 2018),但我们发步骤现它会导致错误估计动作价值,尤其是在回放序列的早期状态中。此外,在没有老化的情况下,通过BPTT对这些输出估计不佳的早期时间步进行更新似乎会导致破坏性更新,并阻碍网络从次优初始循环状态中恢复的能力。这表明上下文相关的循环状态应该与轨迹一起存储在回放中,或者回放序列的初始部分应该保留用于老化,以允许RNN依赖其循环状态并利用长期时序依赖性,并且这两种技术也可以有益地结合起来。我们还观察到,在分布式环境中,表征漂移和循环状态陈旧的潜在问题可能会加剧(见附录),通过适当的RNN训练策略强调鲁棒性对这些影响的重要性。

      其次,我们发现RNN训练的影响不仅仅是为智能体提供记忆。相反,RNN训练还发挥了以前在RL中没有研究过的作用,可能通过实现更好的表征学习,从而即使在完全可观察且不需要内存的域上也能提高性能(参见前馈消融中的BREAKOUT结果)。

      最后,从更广泛的角度来看我们的经验结果,我们注意到通过并行化和分布式训练来扩大RL智能体可以让它们受益于巨大的经验吞吐量,并在Atari-57和DMLab-30等广泛的模拟任务套件中取得不断增长的结果。这些结果在原始性能方面令人印象深刻,但它们的代价是样本复杂性高,在挂钟时间的几小时或几天内消耗了数十亿个模拟时间步骤。未来工作的一个广泛开放的途径是提高这些智能体的样本效率,以允许将应用程序应用于不容易允许类似规模的快速模拟的领域。我们在Atari-57上的结果中非常明显的另一个剩余挑战是探索:除了Atari-57中最难探索的游戏外,R2D2在这个任务套件上的性能明显超过了人类水平,基本上"解决"了其中的许多游戏。

    APPENDIX

    EFFECT OF DISTRIBUTED RL AGENT TRAINING

      在本节中,我们研究了使用循环神经网络对智能体进行分布式训练的效果,其中大量参与者将他们的经验输入到单个学习者的回放缓冲区中。

      一方面,与单参与者情况相比,分布式设置通常呈现出不那么严重的表征漂移问题,例如(Hausknecht & Stone, 2015)中研究的情况。这是因为相对而言,生成的大量经验的回放频率较低(平均而言,经验样本在Ape-X智能体中的回放少于一次,而在DQN中为8次),因此分布式智能体训练倾向于产生较小程度的"参数滞后"(在参数更新中,用于生成经验的网络参数在回放时的平均年龄)。

      另一方面,分布式设置允许根据硬件或时间限制轻松扩展计算资源。因此,理想的分布式智能体应该对参与者数量等变化具有鲁棒性,而无需仔细调整参数。正如我们在上一节中看到的,来自回放的RNN训练对表征漂移问题很敏感,其严重程度可能完全取决于这些参数。

      为了研究这些影响,我们用数量少得多的参与者来训练R2D2智能体。这对参数滞后有直接(反比)影响(参见图6(左))。具体来说,在我们的实验中,当参与者的数量从256变为64时,平均参数滞后从1500变为大约5500参数更新,这反过来会影响表示漂移和循环状态过时的幅度,在第3节中由ΔQ测量 。

      图6中的右两列显示了对于较少数量的参与者,平均ΔQ的总体增加,包括回放序列的第一个和最后一个状态。这支持了上述直觉,并强调了分布式训练设置中改进的训练策略(与零状态策略相比)的重要性增加,如果要在外部和潜在的硬件相关参数范围内保持一定水平的经验智能体性能。

    EXTENDED RESULTS

      在本节中,我们给出了额外的实验结果来支持我们在正文中的实证研究。图7更深入地展示了图4中的消融结果。我们看到,除了前馈消融之外,总有一些游戏中消融的选择表现更好。我们对架构和配置的选择针对整体性能和一般(跨域)适用性进行了优化,但对于个别游戏,有不同的配置可以提高性能。

      此外,在图8中,我们将R2D2与使用生命损失信号作为回合终止的变体进行了比较。两种消融变体都中断了价值函数自举过去的生命损失事件,但不同之处在于一个("reset")也在这些事件中重置LSTM状态,而另一个("roll")仅在实际回合边界处重置LSTM状态,像普通的R2D2。尽管生命损失启发式通常有助于加速Atari中的学习,但为了算法的通用性,我们没有在我们的主要R2D2智能体中使用它。

      在图9中,我们将R2D2的样本效率与Atari-57上最近最先进的智能体在人类归一化中位数得分方面进行了比较。正如预期的那样,分布越多的智能体在早期的样本效率越差,但也大大提高了长期性能。这本身就是一个有趣的相关性,但我们补充说,R2D2似乎实现了与任何其他算法相比质量不同的性能曲线。

      请注意,虽然Ape-X的参与者数量比R2D2多(360比256),但它的学习器每秒处理大约20批数据,批大小为512,而R2D2对64 × 80个观察的批次执行更新(批量大小 × 序列长度),以大约每秒5次的速度。这导致"回放率"降低(每个观察到的观察被回放的有效次数):平均而言,Ape-X回放每个观察大约1.3次,而对于R2D2,这个数字只有大约0.8,这解释了Ape-X的初始样本效率优势。

    HYPER-PARAMETERS

      R2D2使用与DQN相同的3层卷积网络(Mnih et al., 2015),然后是具有512个隐藏单元的LSTM,它为对偶网络提供优势和价值头(Wang et al., 2016),每个都有一个大小为512的隐藏层。此外,LSTM接收来自前一个时间步骤的奖励和one-hot动作向量作为输入。在DMLab套件中的四种语言任务中,我们使用与IMPALA相同的具有64个隐藏单元的额外语言LSTM (Espeholt et al., 2018)。

      自(Mnih et al., 2015)以来,与Atari上的智能体训练通常一样,我们将所有(训练和评估)回合限制在30分钟(108000个环境帧)。所有报告的分数都是(未打折的)回合回报。对于R2D2智能体,我们总是报告最终分数(与使用训练期间获得的最佳分数的一些比较智能体相反)。

    FULL RESULTS

  • 相关阅读:
    Mycat读写分离+高可用笔记
    MyCAT基础安装笔记
    C# Winform中DataGridView的DataGridViewCheckBoxColumn CheckBox选中判断
    C# winform DataTable 批量数据处理 增、删、改 .
    选中CheckBoxList的值放到TextBox中,再次选中从textBox中删除
    dede后台删除文章后台还有分页显示解决方法
    dedecms数据库表说明大全
    织梦自增函数[field:global name=autoindex/]常见用法
    http协议的状态码——400,401,403,404,500,502,503,301,302等常见网页错误代码
    web.config设置之system.webServer 详细介绍,为网站设置默认文档
  • 原文地址:https://www.cnblogs.com/lucifer1997/p/16166371.html
Copyright © 2020-2023  润新知