专栏首页灯塔大数据塔秘 | DeepMind提出Rainbow:整合DQN算法中的六种变体

塔秘 | DeepMind提出Rainbow:整合DQN算法中的六种变体

导读

「AlphaGo 之父」David Sliver 等人最近探索的方向转向了强化学习和深度 Q 网络(Deep Q-Network)。在 DeepMind 最近发表的论文中,研究人员整合了 DQN 算法中的六种变体,在 Atari 游戏中达到了超越以往所有方法的表现。

大规模强化学习(RL)在复杂连续决策问题中最成功的方法是 Deep Q-Network 算法(DQN; Mnih et al. 2013, 2015)。它包含了 Q 学习的卷积神经网络与以及反复经验(experience replay)而从原像素中学习,已在多种 Atari 游戏中达到或超过了人类水平的表现。从那时起,很多扩展性方法被不断提出,不断提升着这种方法的速度和稳定性。

Double DQN(DDQN;van Hasselt、Guez&Silver;2016)通过解耦选择(decoupling selection)和引导行动评估解决了 Q 学习过度估计偏差的问题。Prioritized experience replay(Schaul 等人;2015)通过重放(replay)学习到更频繁的转换,提升了数据效率。dueling 网络架构(Wang 等人;2016)可以通过分别表示状态值和动作奖励来概括各种动作。从多步骤引导程序目标中学习(Sutton;1988;Sutton & Barto 1998)如 A3C(Mnih 等人;2016)中使用偏差-方差权衡而帮助将最新观察到的奖励快速传播到旧状态中。分布式 Q 学习(Bellemare、Dabney & Munos;2017)学习了折扣回报(discounted returns)的分类分布(代替了估计平均值)。Noisy DQN(Fortunato 等人;2017)使用随机网络层进行勘测(exploration)。当然,以上几种方法还不是全部。

图 1. 57 个 Atari 游戏中等人类水平与各类 DQN 方法的对比。研究人员将各类 DQN 方法结合起来(彩虹色)与 DQN(灰色)和各自的表现基准进行了对比(其他各颜色)。DQN 混合方法的优势在 7 百万帧后开始显现,在 4400 万帧后大幅度领先,随后性能提升趋于平缓。

以上这些算法各自都可以提升 DQN 性能的某个方面,因为它们都着力于解决不同的问题,而且都构建在同一个框架上,所以能够被我们整合起来。在一些例子中这种方法已经被使用过了:Prioritized DDQN 和 Dueling DDQN 都使用了 Q 学习,Dueling DDQN 也结合了 prioritized experience replay。在 DeepMind 最近发表的论文中,研究人员讨论了综合上述所有方法的整合性方案,并提出了单智能体系统:Rainbow。研究人员展示了整合后的表现,证明了它们很大程度上是互补的。实际上,这些组合在 57 个 Atari 2600 游戏组成的基准测试环境中在数据效率和最终结果上都达成了新的业界最佳水平。该研究也提供了分类测试结果,显示了每种组件对于提升性能的贡献。

表 1. Rainbow 的超参数。在 57 种 Atari 游戏的测试中,研究使用了同一个智能体和参数。

表 2. Rainbow 和其他测试基准的表现分数对比。

图 4. 所有 57 个 Atari 游戏的独立智能体(ablation agents)性能下降测试。性能是学习曲线下的面积,相对于 Rainbow 智能体和 DQN 进行了规则化。其中,DQN 超越 Rainbow 的两种游戏被剔除了。导致性能下降最严重的组件在每个游戏中都被高亮显示了。删除优先级和多步骤学习在大多数游戏中造成的性能影响最大,不过每个组件在不同游戏中的影响各有差异。

论文:Rainbow: Combining Improvements in Deep Reinforcement Learning

论文链接:https://arxiv.org/abs/1710.02298

深度强化学习社区对于提升 DQN 算法的性能已经做出过很多种独立的改进尝试。但是,目前我们尚不清楚这些扩展是不是互补的——它们是否可以互相结合?在本论文中,我们研究了 DQN 算法的 6 个扩展,对其组合进行了实证研究。我们的实验组合在 Atari 2600 基准测试中,数据效率和最终表现上都实现了实现了业内最佳水平。我们也提供了详细的研究结果,其显示了每种组件对于总体性能的贡献。

文章来源:机器之心

文章编辑:秦革

本文分享自微信公众号 - 灯塔大数据(DTbigdata)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-10-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 技术 | Python从零开始系列连载(九)

    导读 Python特色数据类型(元组)(上) 元组(tuple) 元组是Python的另一种特色的数据类型 元组和列表是相似的 可以存储不同类型的数据 但是!划...

    灯塔大数据
  • 技术 | Python从零开始系列连载(十)

    导读 Python特色数据类型(元组)(下) 元组和列表相互转化 ? ? 没错,只要在原来的列表外套一层tuple()就可以转为元组 在原来的元组外面套一层li...

    灯塔大数据
  • “中国电信战略与创新研究院与下一代互联网关键技术和评测国家工程研究中心学术交流会”顺利召开

    “中国电信战略与创新研究院与下一代互联网关键技术和评测国家工程研究中心学术交流会”顺利召开

    灯塔大数据
  • 学界 | DeepMind提出Rainbow:整合DQN算法中的六种变体

    机器之心
  • WCF技术剖析之六:为什么在基于ASP.NET应用寄宿(Hosting)下配置的BaseAddress无效

    本篇文章来源于几天前一个朋友向我咨询的问题。问题是这样的,他说他采用ASP.NET应用程序的方式对定义的WCF服务进行寄宿(Hosting),并使用配置的方式对...

    蒋金楠
  • 新开学/开年三大件:最潮科技新品,为你带来开学好心情

    假期再长总是要开学的,新开学三件套了解一下?不仅能够丰富大学的学(娱)习(乐)生活,还能在朋友面前小小炫耀一番,就像朱一旦不经意露出的劳力士手表,富有中透露着一...

    VRPinea
  • Django实现标签云

    菲宇
  • 读Zepto源码之操作DOM

    这篇依然是跟 dom 相关的方法,侧重点是操作 dom 的方法。 读Zepto源码系列文章已经放到了github上,欢迎star: reading-zepto ...

    对角另一面
  • 手把手学习TCGA数据库:SNP突变分析第五期

    各位科研芝士的朋友,大家好,TCGA_SNP的下载我们已经连续分享了4个帖子,分别是官网直接下载,Tcgabiolinks下载、UCSC-XENA下载以及cBi...

    百味科研芝士
  • 在keras中model.fit_generator()和model.fit()的区别说明

    首先Keras中的fit()函数传入的x_train和y_train是被完整的加载进内存的,当然用起来很方便,但是如果我们数据量很大,那么是不可能将所有数据载入...

    砸漏

扫码关注云+社区

领取腾讯云代金券