永利网站网址 14

商量新的加剧学习算法蒙受困难,DQN无愧众算法之鼻祖

原标题:业界 |
探索新的强化学习算法遇到困难?不怕不怕,谷歌为你带来「多巴胺」

选自arXiv

AI 科技评论按:强化学习的研究如此火热,但强化学习的研究中又有如此之多的实践上的困难。「工欲善其事,必先利其器」,谷歌就推出了一个强化学习研究专用的框架帮自己减负、加速。
AI 科技评论把谷歌的介绍博客编译如下。

参与:Geek AI、贾伟

永利网站网址 1

游戏中的人工智能技术纷繁杂乱,近期来自来自哥本哈根大学和纽约大学的几位研究人员发表的一篇论文对相关技术做了详尽的综述,并用一张图描述出了游戏
AI 技术的历史沿革,DQN以其巨大影响成为众算法之鼻祖。

在过去的几年中,强化学习研究中涌现了许多重大技术进展。这些技术进展已经帮助智能体在游戏中发挥出超越人类的水平,著名的几个例子包括
DeeopMind 玩 Atari 游戏的 DQN、下围棋的 AlphaGo 和 AlphaGo
Zero,还有近期连续击败了业余玩家和前职业选手的 DOTA2 AI OpenAI
Five。

永利网站网址 2

其中值得展开说明的是,DQN()
中引入的记忆回放特性让当前智能体可以利用以前的不同智能体的经验进行学习,大规模分布式训练(

如今,将人工智能技术应用到游戏中已经是一个成熟的研究领域,有许多会议和专门的期刊对此进行讨论。来自哥本哈根大学和纽约大学的几位研究人员近期发布的一篇综述文章中,梳理并回顾了视频游戏深度学习领域的最新进展,详细介绍了各种游戏研究平台及相关深度学习方法的演化历史,同时讨论了重要的开放性挑战。据作者介绍,其撰写该论文旨在从不同类型游戏的视角来回顾这个研究领域,指出它们对深度学习的挑战,以及如何利用深度学习来玩这些游戏。

大多数时候,探索更新更好的技术都需要一个从基础设计开始进行快速迭代的过程
—— 这个迭代改进的过程不一定有什么清晰的方向 ——
而且也会打乱已有方法的结构。然而,多数现有的强化学习框架提供的灵活性+稳定性组合并不理想,不足以让研究人员们高效地迭代改进正在探索的强化学习方法,拖慢了他们发现那些收益更偏向长远的研究方向的脚步。除此之外,现有的框架中复现现有模型的结果也非常耗费时间,这也为后续科研活动中的可重复性要求埋下了隐患。

我们感兴趣的是,在不存在前向模型的情况下,使用像素数据或特征向量,玩好一款特定的视频游戏(不同于围棋等棋盘游戏)的方法。

新框架,「多巴胺」

值得注意的是,尽管这篇文章收集并讨论了大量的游戏
AI,但还是有很多在本文中没有涉及到——游戏 AI
是一个广阔而多样的领域。这篇论文的重点在于深度学习方法如何更好地玩视频游戏,而关于如何以靠谱的、有趣的或与人类似的方式玩游戏的研究也有很多。人工智能技术也被用于对玩家的行为、经验或偏好建模,或被用于生成游戏内容(如游戏难度、贴图或规则)。深度学习并不是游戏中唯一使用的人工智能方法。其它比较著名的方法,例如还包括蒙特卡罗树搜索和演化计算。在接下来的内容中,读者需要记住,这篇综述论文涉及的范围还是很有限的。

永利网站网址 3

本文将简单介绍这篇论文的核心内容,并着重介绍关于游戏 AI
中深度学习技术历史演化的部分。

今天谷歌发布了一个新的基于 TensorFlow
的强化学习框架「多巴胺」(Dopamine)。多巴胺是人脑中「行为 –
反馈」激励通路的主要组成部分之一,多巴胺的释放可以给人带来开心愉悦的感觉;它同时也反映了神经科学研究和强化学习研究之间渊源流长的联系。正如其名,它的目标是提供一个兼顾灵活、稳定、可重复性的强化学习实验框架,让不论资深还是新手研究人员都感受到「多巴胺」带来的放松和愉悦,从而帮助他们更多、更快、更好地开展有可能带来颠覆性发现的思辨、探索研究。

论文标题:Deep Learning for Video Game Playing

「多巴胺」框架的设计面向研究人员,它是一个简单但鲁棒的框架,适合用于强化学习算法设计中的快速原型设计和迭代改进。如果算法研究人员需要一个轻量、容易理解的代码库,为了自由地尝试各种不同的甚至狂野的想法,「多巴胺」就是最合适的选择。

永利网站网址 4

「多巴胺」的设计原则是

链接:

  • 便于实验:新用户也可以简单地运行 benchmark 实验
  • 灵活开发:新用户也可以简单地尝试新的研究想法
  • 紧凑可靠:提供了几个经过检验的算法的实现
  • 可重复性:帮助提高实验结果的可重复性

摘要:在本文中,我们将回顾近年来深度学习的进展,重点关注深度学习技术如何被用于玩不同类型的电子游戏,如第一人称射击游戏、街机游戏和实时策略游戏。我们分析了不同的游戏类型对深度学习系统的独特要求,并着重讨论了将这些机器学习方法应用于视频游戏时重要的开放性挑战(如通用的游戏玩法、应对巨大的决策空间和稀疏的奖励信号)。

遵循这些设计原则,「多巴胺」的首个版本重点关注了目前最先进的运行在单
GPU 上的彩虹 DQN,它在 Atari-2000
游戏中有惊人的表现。根据论文中得到的结论,「多巴胺」中的彩虹 DQN
实现了以下三个最为重要的组件:

游戏中的深度学习

  • n 步 Bellman 更新(详情参见
  • 优先经验重放学习(
  • 值分布方法(

人工神经网络的架构大致可分为两大类。一类是前馈和递归神经网络,前馈网络采用单个输入(例如游戏状态的表示),并输出每个可能动作的概率值。另一类是卷积神经网络,它由可训练的滤波器组成,适用于处理图像数据,例如来自视频游戏屏幕的像素。

除了彩虹 DQN
( 3
个基于数值的智能体:DQN、C51( ICML 2018
上的隐式分位数网络( 学习环境(

永利网站网址 5

便于使用的实现

永利网站网址 6

上手快捷清晰、简介是框架设计、代码编写中的重要考量要素。「多巴胺」提供的代码紧凑,只有大约
15 个 Python 文档,而且有完善的注释。

RNN
通常应用于时间序列数据,其中网络的输出取决于先前时间步骤的激活。除了网络的先前隐藏状态与下一个输入一起反馈给网络外,RNN
的训练过程类似于前馈网络。这就允许网络通过记忆先前的激活而变得具有上下文感知,这在那种单个观察不代表完整状态的游戏中是非常有用的。对于
shi’pi 视频游戏,通常使用一堆卷积层,然后是循环层和完全连接的前馈层。

可重复性谷歌的开发人员们也对强化学习研究中的可重复性问题有非常深的感受。为了提供一些可重复性的保障,「多巴胺」的代码提供了完整的测试功能;测试功能也就可以作为另一种形式的文档。除此之外,「多巴胺」也遵循了
arxiv.org/abs/1709.06009中提出的关于在 Arcade
学习环境中标准化经验评价的建议。

永利网站网址 7

Benchmark 对于新手研究人员来说,能够在 benchmark
中快速比较自己的想法和已有方法的表现是非常重要的。出于这个目的,「多巴胺」也提供了包含的四个智能体的全部训练数据,其中均包含了
Arcade 学习环境支持的 60 个游戏中的数据;格式有 Python 格式以及 JSON
格式。谷歌的开发人员们还额外设计了一个网站,可以在上面快速可视化这四个智能体在所有 60
个游戏中的训练过程。下图是四个智能体在 Atari 游戏 Seaquest
中的训练过程。

机器学习任务中主要有三种任务类型:监督学习、无监督学习和强化学习。这些任务类型中的方法通常基于梯度下降优化。

永利网站网址 8

1、监督学习

谷歌也在「多巴胺」中打包了经过训练的模型、原始统计记录以及可以在
Tensorboard 中绘图的 TensorFlow 事件记录文件。

在监督学习中,模型是从样本中训练出来的。大数据集通常有利于提高模型的性能。在游戏中这些数据可以来自游戏踪迹(即人类在游戏中的记录),用这些数据可以训练
agent 学习从输入状态到输出动作的映射。

谷歌的开发人员们希望「多巴胺」的灵活、便于使用的特性可以帮助研究人员们尝试新的点子,不论是逐步改进的,还是根本性颠覆的。谷歌已经把「多巴胺」应用到了自己的科研中,已经借助它的灵活性快速迭代改进了许多想法。所以谷歌不仅希望把这个美妙的工具分享给更多研究人员,帮助整个领域的研究人员更快地做出进展,也可以借助更多力量把「多巴胺」做得更好。

虽然现有数据可以让 agent
快速地学习到最佳实践,但由此获得的模型往往也是脆弱的;可用的数据生产成本可能很高,并且可能缺少
agent
应该处理的关键方案。对于游戏的玩法,算法也仅限于数据中可用的策略,而不能自行探索新算法。因此,在游戏中监督算法通常通过与强化学习算法及一些额外训练相结合来使用。

github 地址:

监督学习在游戏中的另一个应用是学习游戏的状态切换。神经网络可以学习预测动作状态对的下一状态,而不是为给定状态生成动作。

via ai.googleblog.com,雷锋网 AI 科技评论编译返回搜狐,查看更多

2、无监督学习

责任编辑:

无监督学习的目标不是学习数据与其标签之间的映射,而是发现数据中的模式。这些算法可以学习数据集的特征分布,可以用于聚类相似数据,将数据压缩为基本特征,或创建原始数据特征的新合成数据。对于奖励稀疏的游戏,例如蒙特祖玛的复仇(Montezuma』s
Revenge),以无监督的方式从数据中学习是一种潜在的解决方案,也是一项重要的开放式深度学习挑战。

深度学习中一种重要的无监督学习技术是自动编码器,它是一种试图学习使输入与输出一致的神经网络。网络由两部分组成:将输入
x 映射到低维隐藏向量 h 的编码器,以及尝试从 h 重构 x
的解码器。主要思想是,为了保持较小的
h,网络必须学会压缩数据,从而学习良好的表示。研究人员将这种无监督算法应用于游戏,可以从高维数据中提取到更有意义的低维数据。但目前这一研究方向仍处于早期阶段。

3、强化学习

在强化学习中,agent 通过与向 agent
提供奖励信号的环境交互来学习行为。视频游戏可以容易为强化学习设立环境,而玩家则建模为可以在每个步骤采取有限动作集的
agent,奖励信号可以由游戏分数来确定。

在 RL 中,agent
依赖于奖励信号。这些信号可能经常发生,例如游戏中得分的变化;也可能不经常发生,例如用赢或输作为奖励信号。视频游戏可以和
RL
很好地结合,因为大多数游戏都会为成功的策略提供奖励。但开放世界游戏(Open
world games)并不总是有明确的奖励模型,因此对 RL 算法具有挑战性。

永利网站网址 9

游戏类型和研究平台

深度学习方法的快速发展无疑受益于公开数据集上的评测。游戏 AI
也是类似,一个游戏 AI
算法的好坏完全由游戏中得分多少或者能否赢得比赛而决定。像 IEEE
计算智能和游戏大会(IEEE Conference on Computational Intelligence and
Games)这样的会议在各种游戏环境中进行了广泛的比赛。

论文中对各种与深度学习相关的流行游戏及研究平台的特征及面临的挑战做了详尽的介绍,这里不再一一赘述。

永利网站网址 10

DL技术历史沿革

永利网站网址 11

上图显示了各种深度学习方法以及它们之间互相影响的示意图(下面的部分相当于对此图的长篇解读)。图中的每一种方法都被着色了,以显示出用于对比的游戏基准。

DQN
是一种影响巨大的算法,它将基于梯度的深度学习应用于基于像素的视频游戏中,其最初被应用于
Atari 基准测试。请注意,还存在一些更早的方法,但是都没有 DQN
成功。Double DQN 和 Dueling DQN 是使用多个网络改进估计过程的早期的对 DQN
的扩展。DRQN 则采用递归神经网络作为 Q 网络。Prioritized DQN
是另一种早期的扩展,它加入了改进后的经验回放采样技术。Boostrapped DQN
建立在 Double DQN 的基础上,采用不同的改进后的采样策略。在 Atari
游戏中对 DQN 的进一步改进包括:C51 算法,该算法基于 DQN,但改变了 Q
函数;使网络随机化从而帮助模型进行探索的 Noisy-Nets;同样从示例中学习的
DQfD;结合了许多最先进的技术的 Rainbow 模型。

Gorila 是第一个基于 DQN 建立的异步方法,接着是 A3C 方法,它为
actor-critic 方法使用了多个异步智能体。2016 年底,UNREAL
进一步扩展了这一概念,它将已有的工作与辅助学习(auxiliary
learning)结合起来,从而应对稀疏反馈环境。从那时起,出现了许多对 A3C
技术额外的扩展。IMPALA 通过重点关注一个被训练能够玩所有 Atari
游戏的智能体,对此进行了进一步的扩展。2018 年,随着 Ape-X
的诞生,大规模分布式学习在此领域的研究也得以继续发展。

演化计算技术也见证了视频游戏的复兴。首先 Salimans
等人证明了进化策略在此领域可以与深度强化学习一争高下 [121]。随后,Uber
AI
又发表了两篇论文:一篇表明不涉及求导的进化算法可以与深度强化学习相匹敌,另一篇是对进化策略的扩展。这些工作都得益于简单的并行化处理,并可能在探索过程中具有一定的优势。

永利网站网址 12

在引入 DQN 前后,在 Atari
游戏中被采用的另一种方法是置信域策略优化。该方法更新一个根据环境更新的替代目标函数。2017
年晚些时候,近端策略优化作为一种更鲁棒、更简单的替代优化方案被引入,它也借鉴了
A3C 的创新指出。有些扩展方法是专门为游戏「蒙特祖玛的复仇」(ALE
基准测试中的一款游戏)而开发的,但由于奖励信息稀疏和信息隐藏问题,这款游戏尤其困难。在蒙特祖玛的复仇中表现最好的算法是通过内在动机和层次学习扩展
DQN。吃豆人也是一款非常著名的 Atari
游戏,研究人员针对其不同的部分单独学习奖励函数,以使智能体对新环境更鲁棒。

Doom 是 2016
年被使用的另一个新对比基准。在这款游戏上的大部分工作都是针对为 Atari
设计的方法的扩展,从而处理更丰富的数据。A3C +递进学习(curriculum
learning)的方法提出将递进学习与 A3C 结合使用。DRQN
+辅助学习的方法通过在训练过程中加入额外的奖励来扩展 DRQN。DQN + SLAM
融合了 DQN 与映射未知环境的技术。

DFP 是唯一没有扩展在 Atari 使用过的技术的方法。正如 UCT 对 Atari
游戏的分类结果那样,他们将台球分类为以对象为中心的预测任务
[36],将赛车分类为直接感知任务,DFP 使用监督学习来对游戏进行学习。除了
UCT
的分类结果,所有这些技术都学着直接预测游戏的未来状态,并从这些信息中做出预测。这些不同年代的工作,没有任何工作之间是相互引用的。除了直接感知,在赛车游戏领域唯一独特的工作是
Deep DPG,它扩展了 DQN
将其用于连续控制。这项技术已经游戏中被扩展到机器人足球。

永利网站网址 13

2016 年底,研究人员基于 Q-learning
进行了针对于星际争霸游戏中的微操的研究工作。IQL
通过将所有其他智能体视为环境的一部分,扩展了 Prioritized DQN。COMA
通过计算反事实奖励(每个智能体增加的边际收益)扩展了 IQL。biCNet
和零阶优化也是基于强化学习的方法,但不是从 DQN
中引申出的。另一种流行的方法是层次学习。2017
年,研究人员将回放数据技术与层次学习结合,进行了相关的尝试。2018
年,用两种不同的强化学习方法与层次学习方法相结合的技术取得了目前最佳的性能。

2016 年发表的一些工作将 DQN
扩展到了「我的世界」游戏中。大约在同一时间,研究人员开发出了一些技术,使
DQN
具有上下文感知能力并将其模块化,从而使其能够应对大的状态空间。最近,递进学习技术也被应用到了「我的世界」中。

2015 年,DQN
被应用到了文本冒险游戏中。不久之后,它被修改为针对特定于语言的文字冒险游戏的架构,并使用「state-action」对的相关性作为
Q 值。关于这些游戏的大部分工作都重点关注显式的语言建模上。「golovin ai
agent」和「Affordance Based Action
Selection」都利用神经网络学习了语言模型,该语言模型为智能体玩游戏提供动作选择机制。最近,在
2018 年,研究人员再次将 DQN 与一个动作消融网络(Action Elimination
Network)联合使用。

将以前算法融合、从而进行扩展已经被证明是将深度学习应用于视频游戏的一个很有前途的方向,Atari
是最流行的强化学习对比基准。另一个明显的趋势是对于并行化计算的关注:在多个
CPU 和 GPU 之间分配工作。并行化计算在 actor-critic 方法(如 A2C 和
A3C)以及演化计算方法(如 Deep GA
和进化策略)中最为常见。层次强化学习、内在动机学习和迁移学习是目前视频游戏开发中亟待解决的问题,是值得探索的新方向。

依然存在的挑战

虽然深度学习在视频游戏中取得了显着成效,但仍存在许多重要的开放性挑战。事实上,如果从未来十年或二十年来回顾现在的研究,我们很可能会将现在的研究看做重大研究的初期。在论文中,作者将当前游戏
AI
所面临的挑战分为四大类——代理模型属性、游戏产业、游戏中的学习模型、计算资源等,并做了详细分析。我们在此仅对「代理模型属性」的开放问题作以简单介绍。

永利网站网址 14

1、通用视频游戏(General Video Game Playing)

解决单个问题并不智能,如何设计能够玩所有视频游戏的通用游戏 AI
agent,是一个重要的挑战。

2、克服稀疏,延迟或欺骗性的奖励

Montezuma’s Revenge
等以稀疏奖励为特征的游戏仍然是大多数深度强化学习方法的挑战;虽然最近将
DQN 与内在动机或专家演示相结合的进步可以提供帮助,但是对于当前深度 RL
方法而言,具有稀疏奖励的游戏仍然是一个挑战。

永利网站网址,3、多智能体学习

当前的深度 RL
方法主要涉及训练单个代理。少量智能体合作的情况已经有些研究,但如何将这些研究扩展到更多的智能体仍然是一个开放的挑战。

4、终身适应

当玩家总是在 FPS
地图中的相同位置遭伏击时,人类玩家可以快速改变其行为;然而当前的大多数智能体则需要昂贵的再训练才能适应这种情况以及它们在训练期间未遇到的其他不可预见的情况。

5、类人游戏

大多数方法建模的智能体通常只考虑游戏分数。但如果期望人类在视频游戏中与基于人工智能的机器人对抗或合作,其他因素也会发挥作用。类人游戏是一个活跃的研究领域。

6、可调节的性能水平

目前几乎所有关于 DL
玩游戏的研究都旨在创造尽可能获得高分的智能体。但出于游戏测试、创建教程和演示游戏的目的,能够创建具有特定技能水平的智能体可能很重要。

7、处理极大的决策空间

虽然 Chess 的平均分支因子在 30 左右,而 Go 的平均分支因子在 300
左右,但像星际争霸这样的游戏的分支因子则远远超过这样的数量级。虽然最近进化规划的进展允许在具有更大分支因子的游戏中进行实时和长期规划,但如何将
Deep RL 扩展到如此复杂的水平是一个重要的开放性挑战。

本文为机器之心编译,转载请联系本公众号获得授权。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

标签:, , , , , , ,
网站地图xml地图