文 / 王晶,资深工程师,Google Brain 团队

作者王晶,现为 Google Brain 团队的资深工程师,主要致力深度强化学习的研发,和 DeepMind 团队在强化学习的应用上有许多合作。

北京时间 1 月 25 日凌晨 2 点, DeepMind 直播了他们的 AI AlphaStar 和人类顶尖的职业电竞选手对战星际争霸 2。根据 DeepMind 介绍,AlphaStar 在 2018 年 12 月 10 日和 19 日先后以 5:0 全胜的战绩击败了 2 位国际顶级的人类选手,此次直播的过程中也播放了之前比赛的重放。虽然 AlphaStar 在最后一场现场直播的比赛中惜败,但是仍然保持对人类 10 胜 1 败的战绩。

星际在全球玩家众多,是最流行的一款实时策略游戏之一,而 DeepMind 汇聚了全球最顶尖的人工智能科学家,似乎两者出现在同一个场景里有些违和。大众刻板印象里面,科学家一般都与实验科研为伍,怎么会对玩星际感兴趣呢?

其实如果大家对于 DeepMind 这个公司有所了解的话,就会发现这个世界一流的人工智能团队实际就是一路打游戏过来的。DeepMind 的创始人 Demis Hassabis 自小酷爱国际象棋,13 岁就成为了国际象棋大师。之后他于 2010 年成立 DeepMind,专门开发能够玩游戏的人工智能。这个时候人工智能领域大火,DeepMind 顺势推出了自己的深度强化学习 (Deep Reinforcement Learning),并于 2014 年在 Atari 游戏里面超过了人类水平。2014 年之后 DeepMind 被 Google 收购,借助 Google 的资源优势继续研发,从此在游戏领域一骑绝尘。2016 年和 2017 年 DeepMind 的 AI 先后战胜围棋世界冠军李世石和柯洁。接着 DeepMind 又推出了 AlphaZero,完全不借助人类棋谱,几个小时之内就在围棋,国际象棋和日本将棋上超过了人类水平。

DeepMind 之所以对于游戏如此热衷,除了创始人的游戏情节以外,最关键的还是游戏本身就是绝佳的人工智能测试环境。游戏就是人为创造的,用以帮助人来习得某个技能或者测试技能水平的工具。游戏通过提供明确的反馈,使人可以在短期内不断重复某些行为,从而习得技能。比如很多棋类游戏的设计初衷就是锻炼分析决策能力。当然也有专门用来让人获得愉悦的游戏,比如说许多网络游戏。这些游戏一般会有很强奖励(比如获得金币之类),获得奖励的速度也很快,这就是这类游戏容易让人沉迷的原因。

回过头来说星际本身。为什么 DeepMind 的科学家们看中了这么一款游戏呢?原因主要是星际争霸有这样两个特点:

  • 第一星际争霸的动作空间和策略非常复杂。围棋虽然每次落子的变化也很多,但是每次毕竟只是需要根据盘面挑选落子地方,还算比较简单。相对而言,星际争霸里面的的动作空间就很复杂,玩家需要:

    1)积累资源

    2)建设工厂

    3)组建军队

    4)消灭对方的工事

    每一个动作之间相互有影响,许多动作产生的后果是很长期的

  • 第二玩家没有全部的信息。基本上来说玩家只知道显示在屏幕上面的一小部分区域的信息。而真正的地图是很大。所以如果他们想要知道对手的信息,需要派出专门的侦查兵

为了这次的对战,DeepMind 其实已经准备已久。去年 DeepMind 和暴雪联合推出了基于星际争霸 2 的强化学习测试平台并且发布了论文《StarCraft II: A New Challenge for Reinforcement Learning》。这次参与对战的 AI 也是从这个平台上训练得到的。这里主要解答一些大家可能关心的问题。AlphaStar 的视角能够看到的是什么信息?它的操作和人是否一样?有没有作弊?

AlphaStar 到底是看到的什么呢?

我们都知道人类玩家在玩星际的时候看到的是计算机屏幕的信息(如果是团战可能还会有场下交流)。计算机屏幕上面的信息是标准的视频流。人类玩家首先做的实际上是识别哪个士兵,哪个是工厂。在计算机视觉里面,这些被称为物体识别和场景识别任务。值得一提的是识别这些人物本身很困难,但和策略的部分关系不大。所以 Deepmind 对问题进行了一些简化。 AlphaStar 以图像的方式从游戏引擎里面读取特征信息,这些图像直接标记了哪里是兵或者工厂。你可以想象,AlphaStar 有很多只眼睛,有的看到兵,有的看到所有的工厂。除了计算机屏幕上面的信息,AlphaStar 还可以看到一个粗略的全景地图,可以另外知道一些全局的信息,比如当前有多少资源,多少兵力等等。AlphaStar 看到的视角实际上长得像是下面这个样子。

那么 AlphaStar 是怎么进行操作呢?

人类玩家都知道玩星际很多时候是拼手速。操作速度快的人基本可以碾压操作速度慢的人。人类一般一分钟进行 30 到 300 次操作。最厉害的人类选手大概是每分钟 500 次操作。理论上计算机的操作速度远远超过人类,所以如果不限定操作速度的话,比较基本上没有意义了。在 DeepMind 发布的工具包里面,操作速度被限制为每分钟 180 次。除此以外,DeepMind 尽量让 AlphaStar 的操作和人的操作是一样的。人类玩家的正常操作一般来说是一个鼠标键盘序列。比如说要移动兵的话,人一般会先按 m 代表进入 move 操作,再按 shift 同时点击要移动的兵。AlphaStar 的操作也会产生类似的序列。

根据上面的信息,我们知道 AlphaStar 的输入和输出其实和人类选手是差不多的,并没有特殊作弊的行为。从这次的比赛视频来看,AlphaStar 在选择策略上如同职业选手般娴熟,非常令人惊叹。那么 Deepmind 大概是用了什么样的方法来训练 AlphaStar 的呢?Deepmind 在赛后发布了一篇博客进行了介绍。据说相应的论文正在同行评议中,相信不久就会将看到细节。这里我结合博客内容和我自己相关的经验进行下简单介绍。

Deepmind AI 的深度网络由多个模块构成,看起来主要的网络是一个被称为 Transformer 和 LSTM 的网络结构构建。这类网络最重要的特点就是有很长的记忆能力,可以在很长的序列里面自动找到数据中的关联,早期这类网络是在自然语言处理里面成熟的。之所以这次使用这样的网络结构,我猜测主要是星际里面的很多动作的影响时间很长,比如说开始建一个工厂到真正这个工厂开始能够提供物资需要过很久。训练的过程和初代版的 AlphaGo 类似,结合了有监督学习 (Supervised Learning) 和强化学习 (Reinforcement Learning)。这两种学习方法其实我们人类也常用 — 有监督学习相当于从课本上面学习,而强化学习像是从实践中摸索。有监督学习和强化学习并用,就相当一个人先从课本上学习大概知识然后学以致用,在实践中不断改进。

在 AlphaStar 中,第一步的训练是在暴雪提供的数据集上进行的有监督学习。据 DeepMind 称,经过有监督学习,AlphaStar 对暴雪的内置 AI 能保持 95% 上的胜率。接下来很多经过有监督学习的 AlphaStar 进行联赛 (League),相互对打,在这个过程中使用强化学习不断提升能力。下面这个图展示了这两个阶段水平的提升。

可以看出,有监督学习使得 AlphaStar 达到人类中的金牌水平(Gold Level),在进行了 8 天强化学习之后,AlphaStar 最终超过人类选手 TLO。14 天之后超过了人类选手 MaNa。值得一提的是,在 14 天的强化学习训练期间,每个 AlphaStar 相当于完成了 200 年的游戏试验。尤其是多个 AlphaStar 相互对战,需要的计算量极其巨大。为了加快计算速度 DeepMind 使用了 Google's v3 TPU (向量计算单元)开发了一个分布式训练系统。TPU (Tensor processing unit) 是 Google 开发的专门用于人工智能的处理器,从 2016 年推出,至今已经演进到第三代。每一个 AlphaStar 智能体使用了 16 块 三代 TPU,这是相当惊人的计算能力 — 要知道几个小时灭掉 AlphaGo 的 AlphaZero 在对弈的时候也不过只用了 4 块一代 TPU。

AlphaStar 之所以能够使用 TPU 的强大算力,得益于从 16 年起 Deepmind 将主要研究平台转移到了 TensorFlow 上面。TensorFlow 是 Google 开发的开源机器学习平台,如今也是最受欢迎机器学习系统之一。TPU 就是专门为 TensorFlow 开发的硬件。除了 DeepMind 以外,Google 大部分的人工智能系统也都是基于 TensorFlow。

芯片领域有一个摩尔定律,就是计算力随着时间是指数增长的。其实人工智能领域也有着类似的规律,比如说 AlphaGo 对阵李世石的时候人类尚可一战,不久之后对战柯洁人已经完全不在 一个量级。相信随着时间的前进,AlphaStar 也会不断的强大,同时在更多的问题上人工智能也会超过人类。许多人因此担忧人会随着人工智能的发展人变得多余。其实我们大可不必担忧,虽然如今人工智能在许多地方取得了不俗的成就,但其本质仍然是人类的工具。人类历史其实就是一个不断的发明创造新的工具的历史,从火的使用,到蒸汽机,再到如今的人工智能,无一不是如此。在新的时代,新的人类必然会懂得如何去使用全新的工具。AlphaStar 的星际争霸首秀,可能是这个新的时代的又一个序章。回到文初的问题,为什么科学家们会对星际争霸如此痴迷 — 因为这不仅是游戏里的星际,更是人类的星辰大海。

Reference

  • AlphaStar: Mastering the Real-Time Strategy Game StarCraft II

    (https://deepmind.com/blog/alphastar-mastering-real-time-strategy-game-starcraft-ii/)

  • StarCraft II: A New Challenge for Reinforcement Learning

    (https://arxiv.org/pdf/1708.04782.pdf)

  • https://wallstreetcn.com/articles/3474868

  • Deepmind's blog

    (https://deepmind.com/blog/deepmind-and-blizzard-open-starcraft-ii-ai-research-environment/)

  • deepmind's github repo

    (https://github.com/deepmind/pysc2)

  • Relational Deep Reinforcement Learning

    (https://arxiv.org/pdf/1806.01830.pdf)

更多 AI 相关阅读:

  • AI 扎根农业,帮助农民识别病株

  • 利用 AI 洪水预警,危急时刻能救命

  • AI 辅助科学,预测地震余震位置

AlphaStar 星际首秀,人工智能走向星辰大海相关推荐

  1. 探秘AlphaStar:星际争霸人工智能

    (声明:此文已发表于<爱上机器人>2019年2月刊,转载请联系作者) 前言   近十年来,人工智能的研究人员们一直在尝试将游戏用作测试和评估人工智能系统的方法.得益于算法的发展和计算能力的 ...

  2. 潘云鹤:人工智能走向2.0 | 全球青少年图灵计划首场大师公开课

    2020-07-23 20:11:40 作者 | 蒋宝尚 编辑 | 丛 末 2020年7月22日,"全球青少年图灵计划"项目在中关村国家自主创新示范区展示中心正式发布,向未来的&q ...

  3. 【转贴】看星际争霸人工智能伯克利如何“主宰”了“2010星际争霸人工智能挑战赛”...

    我们集中在伯克利校区里的一个会议室里,局域网的设备散落在我们周围.桌面上堆满了电脑和披萨,屏幕上投影的是一场<星际争霸>的比赛.Oriol Vinyals,一位计算机科学的博士生,正指挥着 ...

  4. 潘云鹤院士:人工智能走向2.0的本质原因——人类世界正由二元空间变成三元空间...

    从2012年人工智能再次爆发至今已经7年有余,人们逐渐走过了困惑.恐慌和兴奋,特别是中国的大众,由于没有经历人工智能在70年代和90年代的两次高潮和跌落,表现得尤为明显.但经过数年的沉淀,人们对深度学 ...

  5. [译]星际争霸人工智能比赛——通告

    赖勇浩(http://laiyonghao.com) 昨天在广州技术沙龙第 3 期的会场上通过 Google reader 看到这个消息(http://developers.solidot.org/a ...

  6. 【星际人工智能】虫群版天网:伯克利如何“主宰”了“2010星际争霸人工智能挑战赛”

    我们集中在伯克利校区里的一个会议室里,局域网的设备散落在我们周围.桌面上堆满了电脑和披萨,屏幕上投影的是一场<星际争霸>的比赛.Oriol Vinyals,一位计算机科学的博士生,正指挥着 ...

  7. 揭秘星际2人工智能AlphaStar:DeepMind科学家回应一切

    来源:机器之心 25 日凌晨,人工智能 AlphaStar 与职业玩家 MaNa 进行了一场史无前例的「人机大战」:虽然之前在内部比赛中 AI 十战十胜,但现场比赛中,MaNa 机智地戏耍了对手,为人 ...

  8. AlphaStar星际争霸10:1绝杀人类;苹果自动驾驶大裁员 | AI一周热闻

    华为发布5G芯片天罡和巴龙5000 创新奇智完成超4亿人民币A轮和A+轮融资 苹果裁撤自动驾驶项目员工 200 余人 特斯拉揭秘"克隆行为"技术细节 亚马逊推出机器人Scout,进 ...

  9. [译]星际争霸人工智能比赛——规则

    赖勇浩(http://laiyonghao.com) 昨天在广州技术沙龙第 3 期的会场上通过 Google reader 看到这个消息(http://developers.solidot.org/a ...

最新文章

  1. 正則表達式截取字符串两字符间的内容
  2. PostgreSQL 数据访问 offset 的质变 case
  3. SpringBoot项目以服务器方式启动
  4. hdu-4704 sum(费马小定理)
  5. 前后端分离报错The Token’s Signature resulted invalid when verified using the Algorithm: HmacSHA256
  6. Spring+Quartz实现定时执行任务的配置
  7. 分界符 EOF 不使用反斜杠转义的技巧
  8. 常用的xshell用vi命令编辑文本
  9. PHP checkdate()函数与示例
  10. 工作235:splice
  11. 分别写出引入CSS的3种方式, 特点, 优先级
  12. 【干货】2021百度营销通案.pdf(附下载链接)
  13. MT6763芯片资料MT6763处理器性能介绍下载
  14. Glide加载长图;WebView加载富文本(图片自适应屏幕大小)
  15. 应用统计学学什么科目_应用统计学专业考研需考哪些科目
  16. CSS3颜色渐变整理
  17. 如何给 PDF 文档批量添加页眉页脚?如何给 PDF 文档批量添加页码?
  18. NetBeans的下载、安装
  19. 燃烧远征怀旧服务器人数小程序,《魔兽世界怀旧服》燃烧的远征制作人访谈 详细讲解新版本...
  20. 搜狗微信公众号文章抓取

热门文章

  1. 什么时候需要做读写分离?
  2. Springboot高考志愿填报信息管理系统毕业设计-附源码
  3. android 取消选择图片会闪退或者报错
  4. [转帖]流言终结者 —— “SQL Server 是Sybase的产品而不是微软的”
  5. Unity + Mirror NetworkTransform 从客户端到服务器
  6. 〖产品思维训练白宝书 - 核心竞争力篇⑥〗- 产品经理核心竞争力解读之执行力
  7. 图书管理系统Java Swing版本
  8. B2C电子商务基础系统架构解析
  9. HDFS慢节点监控及处理
  10. 多张表合并一张表union all