新智元推荐  

来源:venturebeat等
编辑:梦佳、白峰
【新智元导读】最近,DeepMind发布地表最强游戏智能体Agent57,该智能体基于Arcade Learning Environment开发,在Atari 2600的57个游戏中的表现超越了人类,如此惊艳的智能体是如何训练而成,在游戏中能拿到多高的分数?今天我们就来一起探个究竟。「新智元急聘主笔、高级主任编辑,添加HR微信(Dr-wly)或扫描文末二维码了解详情。」
4月1日,美国计算机学会(ACM)宣布,将 2019 年 ACM 计算奖授予 AlphaGo 研发团队领导者 David Silver,以表彰其在计算机游戏方面取得突破性进展。Silver 现任伦敦大学学院(UCL)教授、DeepMind 首席科学家。作为深度强化学习领域的领军人物,Silver 曾领导AlphaGo 团队,在围棋比赛中击败世界冠军。Alphago 是AI研究的里程碑,被《新科学家》杂志评为过去十年间最伟大的十大发明之一。
自20世纪50年代以来,训练电脑程序玩游戏一直是AI研究的核心实践。早在1997年,ACM 赞助的比赛中,IBM 的 DeepBlue 就成功击败了国际象棋冠军。2013年,Silver 和他在 DeepMind 的同事推出了一个在50个 Atari 游戏上能够战胜人类的程序。
在DeepMind 本周发表的一篇博客中,阐述了其最新研发的RL智能体Agent57。这是 Arcade Learning Environment 环境下第一个在所有 57 款 Atari 游戏中表现优于人类的系统。
目前 ALE 中支持的超过50种游戏

在 57 种经典 Atari 游戏中击败人类

可以说 Agent57 为目前来讲最优质的人工智能决策模型奠定了基础。这对于企业来讲是一个福音,企业可以通过实现工作场所自动化来提升生产力; 想象一下,AI 不仅能自动完成数据输入一类的日常重复的任务,而且还能对其所在的环境进行推理。
“通过 Agent57,我们已经成功地构建了一个表现更优秀的智能体,它在 Atari57 基准中的所有任务上的表现都超过了人类”,该研究的合著者写道。
“Agent57 能够随着计算量的增加性能逐步提升: 训练的时间越长,得分越高。”
NGU 玩滑雪游戏
Agent57 玩滑雪游戏
Deepmind 自己的 Deep Q-Networks 是第一个在大量 Atari 2600 游戏中实现人类水平的算法。随后,OpenAI 和 DeepMind 的 AI 系统在 Pong 和 Enduro 游戏测试中实现了超过人类的表现; Uber 模型完成了视频游戏蒙特祖玛复仇的闯关; DeepMind 的 MuZero 通过自学在 51 个游戏中表现超越了人类。但迄今为止,还没有一种算法能够在 ALE 的所有 57 个游戏中取得如此优异的表现。

强化学习玩游戏有哪些挑战?

为了实现最先进的性能,DeepMind 的 Agent57 在多台计算机上并行执行,并启用 RL 驱动的智能体采取行动,使得奖励的效果最大化。RL 在视频游戏领域显示出了巨大的潜力--OpenAI 的 OpenAI Five 和 DeepMind 自己的 AlphaStar RL 智能体分别击败了 99.4% 的 Dota 2 玩家和 99.8% 的星际争霸 2 玩家,然而正如研究人员所说,它并不是百分百完美的。
这里存在一个长期的信用分配问题,或者说确定哪些是最值得信任的结果,当奖励被延迟并且需要在较长的序列上分配信用时尤其困难。然后是探索和灾难性的遗忘,在看到第一个肯定的奖励之前,可能需要在游戏中执行数百个动作,并且智能体很容易陷入困境,无法在随机数据中寻找到模式,或者在学习新信息时突然忘记先前学到的信息。
为了解决这个问题,DeepMind 团队开发了 NGU(Never Give Up),该技术是公司内部开发的一种技术,它使用了内部产生的两个层次上的新颖性来增强奖励信号:短时间内的新颖性和长时间的新颖性。NGU 通过使用情景记忆来学习一个探索和开发可用的政策,最终目标是在开发政策下获得最高分。
NGU 玩 Pitfall
Agent57 玩 Pitfall
NGU 的一个缺点是,无论其对学习进度的贡献如何,NGU 每条策略都会收集相同数量的经验,但是 DeepMind 的最新实验会在智能体全生命周期内调整其探索政策。这样一来,它就可以专注于正在学习的特定游戏。

Agent57 是如何构建的?

Agent57 通过让许多参与者进入一个供学习者进行采样的集中存储库(重播缓冲区)来收集数据,重播缓冲区包含定期修剪的过渡序列,这些过渡序列来自与游戏环境独立的 actor 进程。
Deepmind 团队使用了两种不同的 AI 模型来估算每个状态行动值,这个值代表了每个 AI 代理在给定策略的状态下执行特定动作的好坏,从而使 Agent57 能够根据奖励的情况进行调整。他们还合并了一个元控制器,在每个参与者上独立运行,可以自适应地选择在训练和评估时使用哪些策略。
正如研究人员解释的那样,元控制器有两个优点。在训练期间,Agent57 会分配更多的网络给优先考虑的政策。除此之外,在评估期间,Agent57 提供了一个自适应的方式来选择最好的政策。

游戏水平全面超越人类

为了对 Agent57 进行评估,DeepMind 团队将其与最先进的算法进行了对比,包括 MuZero、 R2D2 和 NGU 等。报告显示,虽然 MuZero 在所有 57 场比赛中取得了最高的平均分(5661.84)和中值(2381.51) ,但在 Venture 这样的游戏中,它却遭遇惨败,分数和随机政策的情况差不多。实际上,相对于 R2D2(96.93)和 MuZero (89.92) ,Agent57 显示出了更高的平均性能(100) ,在 51 个游戏以 50 亿帧的成绩超越了人类玩家,在滑雪游戏(Skiiing)中以 780 亿帧的成绩超越人类。
研究人员接着分析了使用元控制器的效果。其本身与 R2D2 相比,它的性能提高了近 20%,甚至在像 Solaris 和 Skiing 这样的长期信用分配游戏中也是如此。在这些游戏中,AI 智能体必须花费较长时间收集信息,以获取反馈强化训练。

最适合强化学习研究的平台ALE

Arcade Learning Environment (ALE)是一个简单的面向对象框架,允许研究人员和业余爱好者为 Atari 2600 游戏开发 AI 代理。它构建在 Atari 2600 模拟器 Stella 之上,并将模拟的细节与代理设计分离开来。
ALE 将仿真的核心组件从渲染和声音模块解耦,使得库依赖大大减少,能够快速实现智能体和内核的通信,自动提取游戏得分和游戏结束的信号来评估策略的效果,跨平台支持 Java、Python、C++等编程语言,开发人员只需要专注自己的策略调优而无需关注和游戏内部的通信。

为什么采用 Atari 作为评估基准

为什么是 Atari 2600 游戏?主要有以下几点原因
  • 游戏多种多样,具有普遍性;
  • 足够有趣,可以代表实践中可能面临的各种环境;
  • 由独立第三方创造,因此不带有实验者的偏见。
ALE 环境下的 Atari 游戏多种多样,对于智能体来说是个更普遍性的挑战,因此常用 Atari 中的得分来衡量智能体的性能。之前的研究人员会用平均分来衡量智能体在一系列任务中的表现,初看好像是合理的,随着时间的推移,平均性能越来越好,但平均分并不能展示出它在哪些任务上表现好,哪些表现不好,难以衡量一个智能体的普适性
举个例子,考虑一个由二十个任务组成的基准测试。假设代理 a 在 8 项任务中得分 500% ,在 4 项任务中得分 200% ,在 8 项任务中得分 0% (平均为 240%) ,而代理 b 在所有任务中得分 150% (平均为 150%)。平均而言,代理 a 比代理 b 执行得更好。然而,代理 b 拥有更一般的能力: 它比代理 a 在更多任务上超过了人类水平。(0%表示智能体随机水平,100%代表人类水平)
“Agent57 在最难和最简单的游戏中都获得了超过人类水平的表现。”
强化学习的应用不止在 Atari 游戏,而且强化学习的技术本身也在不断进化,我们人类在游戏领域的优势会逐步丧失,但反过来看,技术的进步也在促进人类文明的发展,强化学习的未来还有很多未知,让我们共同期待吧!
链接:
https://github.com/mgbellemare/Arcade-Learning-Environment
继续阅读
阅读原文