今日,谷歌发布博客介绍其最新推出的强化学习新框架 Dopamine,该框架基于 TensorFlow,可提供灵活性、稳定性、复现性,以及快速的基准测试。

GitHub repo:https://github.com/google/dopamine

在过去几年里,强化学习研究取得了多方面的显著进展。这些进展使得智能体能够以超越人类的水平玩游戏,其中比较可圈可点的例子包括:DeepMind 的 DQN 在 Atari 游戏上的表现、AlphaGo、AlphaGo Zero 以及 Open AI Five。具体来说,在 DQN 中引入重播记忆(replay memory)使得智能体能够利用先前的经验,大规模分布式训练使得智能体能够将学习过程分配给多个工作线程(worker),分布式方法使得智能体能够建模完整的分布,而不仅仅是它们的期望值,从而了解它们所在环境的完整情况。这种进步非常重要,因为算法催生的这些进展还可用于其他领域,如机器人学(参见:前沿 | 谷歌提出 Sim2Real:让机器人像人类一样观察世界)。

通常来讲,取得此类进展需要在设计上进行快速迭代(通常没有明确的方向),打破已有方法的结构。然而,多数现有强化学习框架并不同时具备可让研究者高效迭代 RL 方法的灵活性和稳定性,因此探索新的研究方向可能短期内无法获得明显的收益。再者,复现现有框架的结果通常太过耗时,可能会导致科学复现性问题。

今天,谷歌介绍了一款基于 TensorFlow 的新框架,旨在为强化学习研究者及相关人员提供具备灵活性、稳定性及复现性的工具。该框架的灵感来自于大脑中奖励–激励行为的主要组成部分「多巴胺」(Dopamine),这反映了神经科学和强化学习研究之间的密切联系,该框架旨在支持能够推动重大发现的推测性研究。谷歌还发布了一组相关的 Colab(https://github.com/google/dopamine/blob/master/dopamine/colab/README.md),以说明该框架的使用方法。

易用性

清晰性(clarity)和简明性(simplicity)是该框架设计过程中的两个关键考量因素。谷歌提供的代码很紧凑(大约 15 个 Python 文件)且记录良好。原因在于谷歌研究人员专注于街机模式学习环境(ALE,一个成熟、已被充分了解的基准)和四个基于价值的智能体:DQN、C51、精心设计的 Rainbow 智能体简化版和 Implicit Quantile Network 智能体(上个月才在 ICML 大会上得到展示)。谷歌希望这一简明性特点可使研究者容易理解智能体的内在工作原理,快速尝试新想法。

复现性

谷歌非常看重强化学习研究中的复现性。因此,谷歌提供了其代码的完整测试;这些测试见文档附表。此外,谷歌的实验框架遵循 Machado 等人(2018)关于利用 ALE 标准化经验评估的推荐方法。

基准测试

对于新研究者来说,对自己的想法进行快速的基准测试是非常重要的。谷歌提供四个智能体的完整训练数据,包括 ALE 支持的 60 个游戏,格式为 Python pickle 文件(对于使用谷歌框架训练的智能体)和 JSON 数据文件(用于对比其他框架训练的智能体)。谷歌还提供了一个网站,研究者可以使用该网站对所有提供智能体在所有 60 个游戏中的训练运行进行快速可视化。下图即谷歌的 4 个智能体在 Seaquest 上的训练运行(Seaquest 是 ALE 支持的 Atari 2600 游戏之一)。

谷歌的 4 个智能体在 Seaquest 上的训练运行。x 轴表示迭代,每个迭代是一百万个游戏帧(实时游戏 4.5 小时);y 轴是每次游戏获取的平均分。阴影区域表示 5 个独立运行的置信区间。

谷歌还提供利用这些智能体训练的深度网络、原始统计日志以及用于 Tensorboard 可视化的 TensorFlow 事件文件。相关地址:https://github.com/google/dopamine/tree/master/docs#downloads

谷歌希望其框架的灵活性和易用性能够帮助研究者尝试新想法。谷歌已经在研究中使用了该框架,发现它可使很多想法快速迭代,具备很强的灵活性。谷歌期待看到社区使用这一框架。

原文链接:https://ai.googleblog.com/2018/08/introducing-new-framework-for-flexible.html2

谷歌推出新型强化学习框架Dopamine的更多相关文章

  1. 谷歌重磅开源强化学习框架Dopamine吊打OpenAI

    谷歌重磅开源强化学习框架Dopamine吊打OpenAI 近日OpenAI在Dota 2上的表现,让强化学习又火了一把,但是 OpenAI 的强化学习训练环境 OpenAI Gym 却屡遭抱怨,比如不 ...

  2. ICML论文|阿尔法狗CTO讲座: AI如何用新型强化学习玩转围棋扑克游戏

    今年8月,Demis Hassabis等人工智能技术先驱们将来到雷锋网“人工智能与机器人创新大会”.在此,我们为大家分享David Silver的论文<不完美信息游戏中的深度强化学习自我对战&g ...

  3. ICML 2018 | 从强化学习到生成模型:40篇值得一读的论文

    https://blog.csdn.net/y80gDg1/article/details/81463731 感谢阅读腾讯AI Lab微信号第34篇文章.当地时间 7 月 10-15 日,第 35 届 ...

  4. 强化学习论文(Scalable agent alignment via reward modeling: a research direction)

     原文地址: https://arxiv.org/pdf/1811.07871.pdf ======================================================== ...

  5. 【转载】 DeepMind发表Nature子刊新论文:连接多巴胺与元强化学习的新方法

    原文地址: baijiahao.baidu.com/s?id=1600509777750939986&wfr=spider&for=pc 机器之心 18-05-15   14:26 - ...

  6. 强化学习(十八) 基于模拟的搜索与蒙特卡罗树搜索(MCTS)

    在强化学习(十七) 基于模型的强化学习与Dyna算法框架中,我们讨论基于模型的强化学习方法的基本思路,以及集合基于模型与不基于模型的强化学习框架Dyna.本文我们讨论另一种非常流行的集合基于模型与不基 ...

  7. 强化学习(十五) A3C

    在强化学习(十四) Actor-Critic中,我们讨论了Actor-Critic的算法流程,但是由于普通的Actor-Critic算法难以收敛,需要一些其他的优化.而Asynchronous Adv ...

  8. 6、DRN-----深度强化学习在新闻推荐上的应用

    1.摘要: 提出了一种新的深度强化学习框架的新闻推荐.由于新闻特征和用户喜好的动态特性,在线个性化新闻推荐是一个极具挑战性的问题. 虽然已经提出了一些在线推荐模型来解决新闻推荐的动态特性,但是这些方法 ...

  9. 【强化学习】MOVE37-Introduction(导论)/马尔科夫链/马尔科夫决策过程

    写在前面的话:从今日起,我会边跟着硅谷大牛Siraj的MOVE 37系列课程学习Reinforcement Learning(强化学习算法),边更新这个系列.课程包含视频和文字,课堂笔记会按视频为单位 ...

随机推荐

  1. Okhttp对http2的支持简单分析

    在< Okhttp之RealConnection建立链接简单分析>一文中简单的分析了RealConnection的connect方法的作用:打开一个TCP链接或者打开一个隧道链接,在打开t ...

  2. C语言基础:分支语句和常见运算符 分类: iOS学习 c语言基础 2015-06-10 21:44 13人阅读 评论(0) 收藏

    if(判断条件){ 执行语句; }else if(判断条件){ 执行语句; } switch (整型表达式){  case 值1: 执行语句; break; case 值2: 执行语句; break; ...

  3. linux-锁屏时间设置

    系统:ubuntu16.04 操作步骤 设置setting -> System Settings -> Brightness&lock, 在界面中选择想要的设置即可: 参考 1.百 ...

  4. jQuery prop() 方法

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  5. TensorFlow笔记-05-反向传播,搭建神经网络的八股

    TensorFlow笔记-05-反向传播,搭建神经网络的八股 反向传播 反向传播: 训练模型参数,在所有参数上用梯度下降,使用神经网络模型在训练数据上的损失函数最小 损失函数:(loss) 计算得到的 ...

  6. 【转】Ubuntu添加PATH环境变量

    原文网址:http://www.cnblogs.com/pang123hui/archive/2011/05/28/2309889.html 添加分两种: 一.临时性添加 ~$ echo $PATH  ...

  7. Linux elasticsearch 安装 遇到的问题

    备注:我的 Linux 测试机  是2G 内存的 ,估计内存小于 我的内存肯定会出这个问题 .(安装的最新版6.3.2) 1.  下载文件  解压 2 .试着 运行 bin 下面的 elasticse ...

  8. shell教程-001:shell简介 什么是shell,shell命令的两种执行方式

    Shell本身是一个用C语言编写的程序,它是用户使用Unix/Linux的桥梁,用户的大部分工作都是通过Shell完成的. Shell既是一种命令语言,又是一种程序设计语言.作为命令语言,它交互式地解 ...

  9. 启动servlet报错:The servlets named [DemoServlet] and [main.java.com.wlf.demo.servlet.DemoServlet] are both mapped to the url-pattern [/hello] which is not permitted

    先看具体错误日志: [2019-04-26 09:29:25,484] Artifact demo-servlet:war: Artifact is being deployed, please wa ...

  10. oracle 导入excel

    方法二.利用PLSQL Developer使用PLSQL Developer工具,这个可是大名鼎鼎的Oracle DBA最常使用的工具.在单个文件不大的情况下(少于100000行),并且目的表结构已经 ...