谷歌DeepMind研究科学家:AI对战星际争霸胜算几何?_最新动态_新闻资讯_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 新闻资讯 > 最新动态 > 谷歌DeepMind研究科学家:AI对战星际争霸胜算几何?

谷歌DeepMind研究科学家:AI对战星际争霸胜算几何?

 2018/1/29 12:27:29    程序员俱乐部  我要评论(0)
  • 摘要:2018年1月28日至30日,《麻省理工科技评论》新兴科技峰会EmTechChina于北京国贸大酒店正式召开。延续《麻省理工科技评论》系列峰会的既往传统,2018年的EmTechChina同样将目光聚焦在新兴科技上,其中,人工智能、区块链、量子计算、可持续能源、生物医疗、自动驾驶成为本次大会的热门关键词。谷歌DeepMind研究科学家OriolVinvals发表了题为《AI对战星际争霸胜算几何?》的演讲。他提出了数据和任务在研究机器学习和人工智能领域的重要性
  • 标签:谷歌 科学家 研究

  2018 年 1 月 28 日至 30 日,《麻省理工科技评论》新兴科技峰会 EmTech China 于北京国贸大酒店正式召开。延续《麻省理工科技评论》 系列峰会的既往传统,2018 年的 EmTech China 同样将目光聚焦在新兴科技上,其中,人工智能、区块链、量子计算、可持续能源、生物医疗、自动驾驶成为本次大会的热门关键词。

  谷歌 DeepMind 研究科学家 Oriol Vinvals 发表了题为《AI 对战星际争霸胜算几何?》的演讲。他提出了数据和任务在研究机器学习和人工智能领域的重要性;并介绍了基于 AlphaGo 在深度强化学习方面取得的突破性成就;现在在机器学习如何战胜《星际争霸 II》的玩家是科学家们正在研究的话题。

  以下为谷歌 DeepMind 研究科学家 Oriol Vinvals 的主题演讲实录,由品途商业评论精编整理,有删减:

  首先,我想介绍一下,科学家在研究机器学习和人工智能的时候,究竟在做些什么?我想和大家分享的不是算法,而是数据。数据和任务是非常重要的,我们一定要确认我们的技术前沿是什么,任务是什么,然后你才能够找到合理的矩阵来处理这些问题。

  有一个很有趣的现象,在技术方面取得重大突破的时间并不长,因为只要找到一个合适的算法就可以取得这样的突破。我们在语音识别和图像分类上都取得了很多里程碑式的进展,我们还利用机器翻译技术在人类与机器之间架起了一座桥梁。在生成式网络方面我们也有很多应用,比如根据照片生成名人的脸,根据普通马生成斑马,根据夏天的图景来生成冬天的图景等等。这些方面对图片的解读可以说已经非常成功了。

  接下来我想与大家探讨一下深度强化学习。这是多去几年中我们基于 AlphaGo 所做的一些突破性的研究。

  深度强化学习与监督学习和人类的学习方式相比,还是有一定区别的。比如对于观察本身,算法的观察是需要环境的,没有充分的观察,早期的人形机器人在遇到障碍物的时候往往无法顺利应对而摔倒。我们就会想,能不能建立一个仿真环境来训练这些机器人呢?如果我们有一个很好的环境,我们就可以先去训练它。也就是说我们一定要有一个很完美的环境才能实现我们的目标。为此,我们建立了虚拟场景,并尽可能地提高它的仿真度。

  也只有在这样的强化环境下,我们才能取得进一步的进展。比如提到应用场景,我们常常会想到游戏。人们在设计游戏的时候总是小心翼翼,以确保玩家可以获得一定的智能化体验。比如 AlphaGo 参与的围棋有 3000 年的历史,这是一个非常有挑战性的环境,因为没有一个单一的解决方案能确保带来最好的结果。当然,我们也可以整合不同的能力让它们玩不同的游戏,比如通过训练让机器人学会下国际象棋。

  我们也有专门下围棋的算法,这时目标变得更加复杂,玩法也变得更加复杂。目前没有一台机器可以通过搜索策略的方法来玩好这个游戏。

  那 AlphaGo 是通过什么方法来玩这个游戏的呢?正是强化学习。我们的神经网络可以自动地从数据中学习一些特征。这样我们就可以让它看着棋盘,看人类怎么走,棋盘上也会显示出输赢。也就是说我们不需要展开整个展示走法与输赢的网络,只要展开一部分网络就可以做出很好的模拟。这是一个很好的突破。

  但这样也不是特别好。因为我们在以人的角度去学习,都要使用数据集来训练。后来我们随机地运行游戏,下过一局之后 AlphaGo 就可以了解一下比赛是如何进行的,就可以调整整个网络,最终学会下棋。

  这些网络是在玩游戏的过程中不断训练提升的。AlphaZero 随机下棋。经过几天的训练之后,就学会专业棋手的走法了。

  所以,我们第一版的 AlphaGo 击败了樊麾,后来下一个版本在韩国和李世石进行了对弈并取得了胜利。再后来我们进一步地训练网络,整个网络比之前强了三倍,赢了柯洁和其他专业棋手。我们是从零开始,一点点积累积数据训练,最后战胜了专业棋手。

  除此之外,我们比较感兴趣的是游戏《星际争霸 II》。这也是是非常有趣和复杂的游戏,这个游戏基本上是建造一些建筑物以及单位,在同一个地图里不同的组织会相互竞争。在这个游戏中,哪怕只是建造建筑物,也需要做出许多决策。而除此之外,我们还要不断收集和利用资源、建造不同的建筑物、不断扩张,因此整个游戏非常具有挑战性。

  我们在这个游戏中使用的方法依旧是强化学习。我们要模仿人类玩这个游戏的方式,但即使是模仿人类点击鼠标和敲击键盘的行为也非常困难。为此,我们引入了一个游戏引擎。

  和围棋任务最大的不同在于,围棋可以看到整个棋盘,但是在《星际争霸 II》中我们通常无法看到整个地图,需要派小兵出去侦查。而且游戏是不间断进行的。整个游戏甚至会有超过 5000 步的操作。而且对于增强学习,除了上下左右这些普通的移动,我们发现用鼠标点击界面控制不同物体的移动以及不同的行为,也是非常难的。我们发布了这个环境,所有人都可以参与其中。我们也发布了相关的报道,这基本上是一个开源的平台,大家可以测试自己的算法。

  我们还没有完成过整局游戏,但是完成了操作《星际争霸 II》比较重要的 7 个操作,比如选择一个单位并让它移动过去。我们所使用的算法能做到这一步,而且和人类玩家操作的效果基本一样。而另一些任务,比如建造建筑、收集资源等,仍然是比较难的。我们测试的算法,表现会比随机的环境要好,但和专业玩家还是有一段距离的。

  我们的第一版是在 Linux 平台发布的。我可能是第一个用 Linux 玩《星际争霸》游戏的人。我们的增强学习还是做得非常好的,所以我们可以直接通过人的视角来观察这个游戏。如刚才所说的,我们可以将地图看成一个 40×60 的像素。从像素来开始进行判断的话,其实能够帮助我们更好地去了解机器是怎么样玩游戏的,虽然说机器还没有办法完全像人类一样。

发表评论
用户名: 匿名