专栏首页新智元谷歌用“多巴胺”怼上OpenAI,开源TensorFlow强化学习框架

谷歌用“多巴胺”怼上OpenAI,开源TensorFlow强化学习框架


新智元报道

来源:ai.googleblog

编辑:肖琴

【新智元导读】今天,谷歌宣布推出一个新的基于Tensorflow的强化学习框架,称为Dopamine,旨在为强化学习研究人员提供灵活性、稳定性和可重复性。这个强大的新框架或将推动强化学习研究取得根本性的新突破。

最近 OpenAI 在 Dota 2 上的表现,让强化学习又大大地火了一把,但是 OpenAI 的强化学习训练环境 OpenAI Gym 却一直遭到不少抱怨,比如不太稳定、更新没有及时……

今天,谷歌宣布开源基于 TensorFlow 的强化学习框架——Dopamine,代码现在就能在Github 查看。

谷歌研究人员表示,他们开源的这个 TensorFlow 强化学习框架强调三点:灵活、稳定和可重复性(reproducibility)

为此,配套开源的还包括一个专用于视频游戏训练结果的平台,以及四种不同的机器学习模型:DQN、C51、简化版的 Rainbow 智能体和 IQN(Implicit Quantile Network)。

为了实现可重复性,Github 代码包括 Arcade Learning Environment 支持的全部 60 个游戏的完整测试和训练代码,并遵循标准化经验评估结果的最佳实践。

除了开源这个增强学习框架,谷歌还推出了一个网站,允许开发人员将多个训练中智能体的运行情况快速可视化。其他还有训练好的模型、原始统计日志和 TensorFlow event files,用于 TensorBoard 动态图的绘制。

Dopamine框架:灵感来自大脑的多巴胺受体

强化学习(RL)研究在过去几年取得了许多重大进展。强化学习的进步使得 AI 智能体能够在一些游戏上超过人类,值得关注的例子包括 DeepMind 攻破 Atari 游戏的 DQN,在围棋中获得瞩目的 AlphaGo 和 AlphaGo Zero,以及在 Dota2 对战人类职业玩家的Open AI Five。

具体来说,在 DQN 中引入重放记忆(replay memories)可以利用先前 agent 的经验,大规模的分布式训练可以在多个 workers 之间分配学习过程,分布式的方法允许agent 建模完整的分布,而不仅仅是建模它们的期望值,从而能够学习更完整的世界。

这类进展非常重要,因为产生这些进展的算法也适用于其他领域,例如机器人技术。

通常,实现这类进展需要快速的迭代设计——通常没有明确的方向——并破坏既定方法的结构。然而,大多数现有的 RL 框架不能同时提供灵活性和稳定性,研究人员难以有效地迭代 RL 方法,进而探索新的研究方向,虽然这些新研究方向可能不会立即带来明显的好处。此外,从现有框架中复制结果常常太耗时,这可能导致后续的科学再现性问题。

今天,谷歌宣布推出一个新的基于 Tensorflow 的框架,称为 Dopamine,旨在为 RL 研究人员提供灵活性、稳定性和可重复性。

这个平台的灵感来自于大脑中奖励动机行为的主要组成部分之一(多巴胺受体,dopamine receptor ),这反映了神经科学和强化学习研究之间强大的历史联系,它的目的是使这种推测性的研究能够推动根本性的发现。开源框架还包含一组 colabs,说明如何使用这个框架。

易用性

清晰和简洁是这个框架设计中的两个关键考虑因素。谷歌提供了紧凑的代码(大约 15个 Python files),并且有详细的文档记录。这是通过专注于 Arcade Learning 环境(一个成熟的、易于理解的 baseline)和 4 个 value-based 的 agent 来实现的,分别是:DQN, C51,Rainbow agent 的一个简化版本,以及 Implicit Quantile Network agent,这是上个月刚在 ICML 大会上发表的。这种简单性能帮助研究人员更容易理解agent 的内部工作原理,并快速尝试新的想法。

可重复性

谷歌尤其重视强化学习研究的可重复性(reproducibility)。他们为代码提供了完整的测试覆盖率;这些测试还可以作为文档的附加形式。此外,他们的实验框架遵循Machado et al. (2018) 给出的建议,使用街机学习环境(Arcade Learning Environment)进行标准化经验评估。

基准测试

对于新的研究人员来说,能够快速地将他们的想法与已有的方法进行对比是很重要的。因此,我们在 Arcade Learning Environment 支持的 60 款游戏中提供了 4 个 agent 的完整训练数据,这些数据可以作为 Python pickle 文件(用于通过我们的框架训练的agent)和 JSON 数据文件(用于与在其他框架中训练的 agent 进行比较);此外,谷歌还开放了一个网站,在上面可以快速地查看所有 60 款游戏提供的 agent 的可视化训练运行。

下图是 4 个 agent 在 Seaquest 上的训练,这是 Arcade Learning Environment 支持的Atari 2600 游戏之一。

在 Seaquest 上,4 个 agent 进行了训练。x 轴表示迭代,其中每次迭代是 100 万帧(4.5 小时的实时游戏); y 轴表示每场游戏获得的平均分数。阴影区域显示了 5 次独立运行的置信区间。

谷歌还提供了来自这些 agent 的训练好的深度网络、原始统计日志以及用于使用Tensorboard 绘图的 Tensorflow 事件文件。这些都可以在官网下载。

开源获取地址:

https://github.com/google/dopamine

其他主要强化学习框架

OpenAI Gym

2016 年 4 月 28 日,OpenAI 对外发布了强化学习开发平台 OpenAI Gym。Gym 平台的基本理念是,研究者建立自己的算法后,可以把该算法置于不同的环境中进行测试,然后把测试后的基本算法发布在 Gym 的平台上,让社区中的其他人看到。该平台现在已经与一些开放资源人工智能工具,例如谷歌的 TensorFlow 展开合作。

在OpenAI Gym上训练强化学习agent

OpenAI Gym 是一款用于研发和比较强化学习算法的工具包,它支持训练智能体(agent)做任何事——从行走到玩 Pong 或围棋之类的游戏,都在范围中。

OpenAI Universe

2016 年 12 月,OpenAI发布 OpenAI Universe。 根据其官方博客的介绍,这是一个能在几乎所有环境中衡量和训练 AI 通用智能水平的开源平台,当下的目标是让 AI 智能体能像人一样使用计算机。目前,Universe 已经有 1000 种训练环境,由微软、英伟达等公司参与建设。

Universe AI训练平台

Universe 通过一个通用的接口适用于各种场景:智能体通过捕捉屏幕的像素生成对键盘和鼠标的命令来操作远程桌面。场景需要 VNC 服务器,universe 库将智能体转换为 VNC 客户端。

OpenAI Gym Retro

这是OpenAI开源的用于游戏研究的完整版强化学习平台 Gym Retro,支持的游戏从大约 70 多个Atari游戏和 30 多个世嘉游戏扩展到各种仿真器支持的 1000 多个游戏。

Gym Retro支持1000多个游戏

Gym Retro 用于研究强化学习算法及其泛化。RL 之前的研究主要集中在优化 Agent 解决单个任务上。通过 Gym Retro,我们可以研究内部概念相似但外观表现不同的游戏之间泛化的能力。

DeepMind Lab

就在OpenAI 刚刚宣布开源 Universe平台后,DeepMind 也宣布将其 AI 核心平台 DeepMind Lab 开源。该平台将几个不同的 AI 研究领域整合至一个环境下,方便研究人员测试 AI 智能体的导航、记忆和 3D 成像等能力。

DeepMind Lab

DeepMind Lab 是一个专为基于智能体的 AI 研究设计的,完全像 3D 游戏般的平台。它从自己的视角,通过模拟智能体的眼睛进行观察。场景呈现的视觉效果是科幻风格。可用的操作能让智能体环顾四周,并且以 3D 的形式移动。示例任务包括收集水果、走迷宫、穿越危险的通道且要避免从悬崖上坠落、使用发射台在平台间穿越、玩激光笔、以及快速学习并记住随机生成的环境。

阿里Gym StarCraft

阿里去年开源了针对星际AI的研究平台Gym StarCraft。在 Gym StarCraft 中,AI 和强化学习研究者可以非常方便地使用 Python 语言来进行深度强化学习智能 Agent 的开发,它底层完成了对 TorchCraft 和 OpenAI Gym 的封装,支持基于 TensorFlow 和 Keras 等主流算法框架进行开发,仅需几十行代码即可完成一个基本的智能 Agent 的开发。

同时,为了便于评测智能 Agent 的有效性,Gym StarCraft 被集成在了 OpenAI Gym 这一主流的强化学习 AI 评测平台中,支持世界各地的星际 AI 研究者基于它去进行公平、快捷的效果评估。

本文分享自微信公众号 - 新智元(AI_era)

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

原始发表时间:2018-08-28

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

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 深度解析OpenAI:马斯克打造精英军团,释放AI潜力

    【新智元导读】4月28日,OpenAI 对外发布了人工智能开发平台Gym,倡导开放AI研究和开发,该团队希望能借此改变人们对算法的固有认识。马斯克情怀满满的Op...

    新智元
  • OpenAI还是CloseAI?记者半年揭秘这个以拯救世界为使命的机构幕后真相

    OpenAI成立短短四年,就已经成为世界领先的人工智能研究实验室之一,最重要的是,它因其使命而受到崇拜:它的目标是第一个创造AGI——一种具有人类思维的学习和推...

    新智元
  • OpenAI成立新公司,前YC总裁担纲CEO,马斯克退出

    OpenAI 非营利部门负责管理 OpenAI LP,主持学者和研究人员等教育计划,并负责政策实施。

    新智元
  • OpenAI的GPT-3花费了1200万美元,现在放出商用API,人人皆可拿来自动生成文本、编写代码

    那些训练费用动辄几百上千万美元的巨型NLP模型,不久后每个人都能用上,虽然是付费形式。

    量子位
  • PyTorch-GPU加速实例

    软件:Windows7、python3.6.5、pytorch-gpu-0.4.1

    砸漏
  • 用【机器学习】来研究【机器学习】:SVM为最热门研究主题,Python超越SAS和R

    前几天BAT齐聚深圳,机器学习、人工智能成了热门话题。有人问我,机器学习这么逆天,怎么不用来学习学习“自己”(指机器学习本身)呢? 别急,今天介绍两个研究,都是...

    数说君
  • 想去 Google AI 工作?请收下这 20 道面试题

    谷歌拥有世界上最聪明的AI研发科学家,数据工程师及数据科学家。谷歌的CEO桑达尔·皮查伊(Sundar Pichai)重新调整了公司战略,即“AI先行”。谷歌依...

    AI研习社
  • 深度 | 以人为本的机器学习:谷歌人工智能产品设计概述

    选自Google Design 作者:Jess Holbrook 机器之心编译 参与:王宇欣、林静、李泽南 取代了手动编程,机器学习(ML)是一种帮助计算机发...

    机器之心
  • PHP数据结构(十二) ——静态查找表​

    PHP数据结构(十二)——静态查找表 (原创内容,转载请注明来源,谢谢) 一、概念 1、查找表:由同一类型数据元素构成的集合。 ...

    用户1327360
  • [译] JS 中 service workers 的简介

    一个service worker在单独的线程上运行,因此它是非阻塞的。这也意味着它无法访问主JavaScript线程中可用的DOM和其他API,比如cookie...

    嘉明

扫码关注云+社区

领取腾讯云代金券