谷歌发表论文破解围棋难题,Facebook却说「是我们先做到的」
导读:谷歌DeepMind团队在最新一期《Nature》上发表论文称,他们研发的人工智能算法击败了欧洲围棋冠军Fan Hui,同时也击败了目前最好的围棋程序中99.8%的对手。而帮助他们解决这个人工智能历史难题的关键是使用了策略网络和评估网络两种深度神经网络。而就在前一天,Facebook也在arXiv.org上更新了一篇用卷积神经网络和蒙特卡洛树搜索相结合来解决围棋问题的新、论文。并且,公司人工智能实验室负责人Yann LeCun在自己的FB主页上针对谷歌和Facebook的研究发表了一段非常精彩的说明。
谷歌DeepMind团队发表《Nature》封面论文,赢得围棋人工智能挑战
在迈向搭建具有更类似人类直觉的人工智能道路上,谷歌取得了出乎意料的辉煌一步;他们研发出能够在极其复杂的围棋游戏中击败专家级人类选手的计算机。他们将论文发表在了《Nature》上。
《Nature》2016/1/28 期的封面
谷歌团队已经表明,掌握围棋所需技能并不为人类独享。他们的一款叫做Alpha Go的计算机程序击败了欧洲围棋冠军Fan Hui,战绩为5:0。Alpha Go的下一个挑战将是世界顶级围棋选手之一,李世乭,比赛将于三月份在首尔举行。
开发Alpha Go的团队是Google的DeepMind,这是2014年Google在英国收购的一家很小的人工智能公司。这个团队使用的是一种非常流行和成功的机器学习方法,叫做深度学习,同时还加上了另一种模拟技术来对潜在的步法进行建模。深度学习需要对一个大型的神经网络进行训练,使其对数据中的模式做出反应。事实还证明,它对图像和音频处理也十分有用。许多大型科技公司都在探索新方法来使用这种技术。
要想掌握围棋,需要不断实践练习,也需要识别棋子布局中微妙模式的巧妙本事。
DeepMind团队表示,Alpha Go的关键在于使用的深度神经网络,实际上,在Alpha Go中有两种不同的神经网络,第一种叫做策略网络,用来预测下一步;第二种叫做评估网络,用来预测棋盘上不同的分布会带来什么不同的结果。Alpha Go使用它们的方法是,把非常复杂的搜索树减少到可操作的规模。所以,它并不是在每一步都要考虑几百种步数,而只考虑策略网络提供的几十种最有前景的步法,评估网络的作用是减少搜索的深度,所以,它的搜索深度并不是特别深,它并不是一下子搜索出直达比赛末尾的300多步,而是搜索更少的步数,比如20多步,并评估这些位置,而不是一路评估到底,看谁最终能赢。搜索并不是靠蛮力,而是与某种与想象力很相似的东西。
AlphaGo 对战 Fan Hui 五局
领导这项研究的另一位Google研究者David Silver说:「围棋有着巨大的搜索空间,用蛮力很难解决。Alpha Go的关键在于,将搜索空间缩小到可以操作的范围。这个方法让Alpha Go比以前的方法都更像人类。」
Demis Hassabis说,围棋是人类发明的最复杂也是最美的游戏。通过战胜Fan Hui,「我们的程序赢得了长期以来一项重大人工智能挑战的胜利。而这项技术在Google的首个用途将是开发更好的个人助理软件。这样的个人助理能够从用户在线行为中学习用户偏好,并对产品和事件作出更符合直觉的建议。
DeepMind创始人Demis Hassabis
Hassabis还说道,他们用来创造Alpha Go的技术,也正是他的团队努力开发强人工智能的尝试。他说:「最终,我们想要将这些技术应用到真实世界的重要问题中。因为我们用的方法是通用的,我们希望有一天,它们能延伸得更广,帮助解决最紧迫的社会问题,从医药诊断到环境模型。」
实际上在几年前,大多数围棋选手和棋类程序员都相信,围棋实在是太困难了,必须要花上几十年的时间,计算机才能达到人类专业棋手的标准水平。对计算机来说,围棋比象棋的挑战更大,原因有二:每个回合可能存在的走法数量多得多,没有一个简单的方法来测算优势。所以,棋手只能学着在棋盘上几百个棋子中识别出抽象模式。即使是专家也经常会很难解释为什么一步棋看起来很有优势或有问题。
众专家的评价
1997年,当IBM深蓝计算机在象棋上称霸时,它使用的是手工编码的规则,在搜索时将穷尽所有可能发生的步法。Alpha Go从本质上则是随着时间而学习的,可以识别出可能具有优势的模式,然后模拟出数量有限的潜在结果。
Google的成就受到了广泛的祝贺,也引起了许多本领域研究者的惊讶。
新成立的非营利性组织OpenAI的AI研究者Ilya Sutskever说:「从技术的角度说,这个研究对AI具有纪念碑式的贡献。」他说,这个成果非常重要,因为Alpha Go从本质上教会了自己如何赢得比赛。「同样的技术也可以用于其他棋类游戏中,以获得高超表现。」
加拿大阿尔伯塔大学的计算机科学教授Michael Bowling最近开发了一个能在扑克牌上赢过人类的程序。他听到这个消息也很兴奋。他相信,这个方法在许多可以运用机器学习的领域都很有用。他说:「许多我们通常认为是人类智能的东西其实都构建于模式匹配上。许多被我们看做学习的东西,其实都是在过去看到了某些模式,然后意识到它们与现在的状况有何联系。」
纽约大学认知教授Gary Marcus说:「这不是所谓的端对端深度学习系统。而是精心建构的模块化系统,在前端具有一些缜密的手工操作,也就是说,几乎媲美人类心智:丰富,模块化,通过演化做出些微调整,而不仅仅是一束随机互联的神经元,完全通过经验做出调整。」
Facebook不甘示弱:提前发表论文,LeCun精彩回应
而就在国外媒体对谷歌这篇论文进行大规模报道之前,Facebook人工智能实验室(以下简称FAIR)负责人Yann LeCun也非常「巧合」地在自己Facebook主页贴出了Facebook刚刚发表在arXiv.org的一篇针对围棋问题的论文,还意味深长的从围棋问题的历史、相关技术、Facebook研究进展等方面进行了详细说明。
LeCun的回应
首先,Yann LeCun解释了我们为什么要研究围棋?他说,作为一项非常困难的任务,围棋是一个很好的案例来验证各种学习技能的结合,包括模式识别、问题解决和规划等,也是一个可以用来测试新想法的工具,包括机器学习、推理和规划的结合。
Yann LeCun说,Facebook FAIR的一位科学家Yuandong在几个月前开始独立研究围棋项目,他开发了一款叫做「黑暗森林」的机器人。根据论文中的描述,最新版机器人将卷积神经网络和目前围棋机器人的经典方法——蒙特卡洛树搜索进行了有机结合。
此前,曾在2014年东京围棋擂台赛上通过让子以微弱优势战胜人类棋手的Crazy Stone就是依赖于蒙特卡洛树搜索,这是一套能够从本质上对每一步走法的所有结果都进行分析的系统。所以,有些机器能够非常精通西洋棋、国际象棋和其他棋类。它们比人类棋手看的更远,所以能够轻松的击败他们。但围棋不是这样,下围棋有太多的可能性需要考虑。在国际象棋的任何一个回合,平均可能的走法有35种。但围棋的走法却能达到250种。并且在这250种可能的走法之后,还对应着另外250种可能,以此类推。因此,用蒙特卡洛数搜索去计算每一步走法所带来的所有结果是不可能的。
从Facebook的研究成果可以看出,通过将训练过的卷积神经网络和蒙特卡洛树搜索的结合,我们可以在模式匹配功能上再加入策略评估这个新功能。这也将有益于游戏之外的其他应用,比如说自然语言生成,在回复中能够加上自发性和多样性,同时也能进行推理,而推理所需要的就是搜索可能的答案并挑选出最优的逻辑链。我们的兴趣并不在于要开发出世界上最好的围棋选手,但这是我们人工智能研究进展的一次有趣练习。
从去年11月起,DarkForest就已经在公开的围棋服务器KGS上击败了一些人类选手和其他围棋机器人。DarkForest的第一版完全是基于卷积神经网络。通过有监督模式的训练让它来「模仿」人类选手。我们使用了大量人类专业选手比赛录像的数据库,然后将比赛的棋盘格局输入到卷积神经网络中,以此来训练它预测人类选手的下一步走法。这需要大规模卷积神经网络,它的输入是一个带有注释的完整的19×19围棋棋盘,而神经网络输出的是一个代表着人类专业棋手每一步走法概率分布的棋盘地图。这充分利用了卷积神经网络的模式识别能力,而这种能力在图像中的物体识别、人脸识别和语音识别方面的成功早就得到了证明。
LeCun表示,将卷积神经网络应用于围棋的想法要追溯到很久之前的1994年,Nicol Schraudolph及合作者共同在NIPS上发表了一篇论文,将卷积神经网络和增强学习结合起来应用于围棋问题研究。但当时对这些技术的理解还不够深入,而且那时的计算机限制了可以被训练的卷积神经网络的规模和复杂性。近期,多伦多大学的博士生Chris Maddison与Google DeepMind的研究者在ICLR 2015上共同发表了一篇论文,文章中提到,用比赛视频数据库训练过的卷积神经网络能够在预测走法上拥有优秀表现。爱丁堡大学Amos Storkey团队发表在ICML上的论文同样体现出这个结果。许多研究者开始相信,或许深度学习和卷积神经网络真正能够在围棋上有所作为。Amos Storkey说:「围棋是由棋盘上的各种模式来驱动,深度神经网络非常擅长从棋盘的各种模式中进行归纳总结,因此非常合适下围棋。」
这就是促使Yuandong将第一版黑暗森林发布在KGS服务器上的原因,此后,一个更加先进的版本很快攀升到了KGS服务器上的第三名,远好于之前的研究。这项排名要好于大多数开源程序,即便是人类棋手,也需要花费几年时间才能达到这个水平。人类棋手喜欢和它对弈的原因在于它的走法非常像人类棋手。但同时它又非常擅长作战策略。赢下局部和策略有关的战争有时需要非常具体的探索,而非单纯的模式识别。
很明显,通过将卷积神经网络和蒙特卡洛树搜索的结合可以提升程序在策略方面的能力。在过去五年中,计算机围棋程序通过蒙特卡洛树搜索取得了很大进步。蒙特卡洛树搜索是一种应用于计算机国际象棋程序中的树形搜索方法的「随机」版本。INRIA的法国研究者团队第一次提出了蒙特卡洛树搜索。之后,这种方法很快在几个最好的计算机围棋团队中流传开来,并变成开发顶级围棋机器人所需要的标准方法。
今天发布的新论文描述了DarkForest的最新版本,被称作黑暗森林3,它使用了卷积神经网络和蒙特卡洛树搜索的结合。这个程序已经在KGS服务器上运营了一个多月,并取得了成人组第五的排名。这个排名意味着它已经成为全美国最好的前100名选手之一,也步入了世界最顶尖围棋机器人之列。
有趣的是,这个项目是由我们一个小团队仅花了几个月时间开发出来的,没有投入任何围棋专家资源(当然,除了比赛录像数据库)。这是对机器学习威力的一次伟大证明。
接下来明智的选择是将卷积神经网络和蒙特卡洛树搜索与增强学习结合起来,就像Nicol Schraudolph的开创性研究。使用增强学习的优势在于可以让机器自己与自己对战连续玩很多次游戏,自己训练自己。这个想法可以追溯到Gerry Tesauro的「NeuroGammon」,一个二十世纪九十年代的计算机西洋双陆棋程序,它将神经网络和增强学习结合了起来,并打败了这款游戏的世界冠军。我们知道,世界范围内的几个团队正在积极研究这一系统。我们的系统仍处在开发中。
Yann LeCun最后的结尾非常有深意:
Facebook对研究的态度素来是「尽早发布,时常发布」,以此诠释开源软件世界颇受欢迎的座右铭。我们的围棋机器人系统已经运营在KGS服务器上,我们的论文已于早些时候发表在 arXiv.org。我们认为,当研究团队彼此迅速交换研究成果并以彼此研究为基础来推进研究时,科学会进步的更快。
谷歌和Facebook的围棋军备之争
谷歌和Facebook正在开展一场破解围棋的算法竞赛。此前,Facebook一名研究员Rob Fergue认为,「围棋就是高级人工智能的目标。」同时他也承认,Facebook此举至少在小范围内是在与谷歌进行竞争。谷歌的围棋研究令人印象深刻。
谷歌和Facebook的围棋军备之争
如今,谷歌和Facebook使用深度学习来识别网络图片中的人脸;计算机能够识别出我们的语音命令;可以将一种语言翻译成另一种;有时甚至能够理解人类的自然语言。
这些技术都依赖于深度神经网络。如果你将足够多的关于树木的照片输入进去,它们就能学会识别出一棵树。如果输入足够多的对话,它们就能学会如何进行一段得体的对话。如果输入足够多的围棋走法,它们就能学会下围棋。
「围棋是由棋盘上的各种模式来驱动,深度神经网络非常擅长从棋盘的各种模式中进行归纳总结,因此非常合适下围棋。」爱丁堡大学教授 Amos Storkey表示。他正在使用深度神经网络来处理围棋问题,就像谷歌和Facebook所做的那样。
他们相信这些神经网络最终能够缩小机器和人类之间的差距。在下围棋时,即使是最高段的棋手也无法检查出每一步走法所带来的所有结果。他们往往是基于盘面来进行决策。借助于深度学习,研究者就可以对这种方法进行复制。将成功走法的图片输入到神经网络中,从而帮助机器掌握每一次成功走法的模样。「这种方法并不是希望找出最优走法,而是学习人类的下棋风格,然后对人类棋手进行有效的复制。」Storkey说到。
谷歌和Facebook交战过程如下(美国当地时间):
- 2015年11月,Facebook在Arxiv发表论文,提到了一种将蒙特卡洛数搜索与深度学习相结合的方法,这套系统在与人类棋手的比赛中丝毫不落下风,公司表示,它甚至能够表现出人类般的下棋风格。毕竟,这套系统是从人类棋手的棋路中进行学习的。RÉMI COULOM Coulom称这项结果「非常惊人」。
- 2015年12月初,谷歌DeepMind创始人Hassabis在接受视频采访被问到「或许你们会在围棋上有所突破?」Hassabis笑着说:「我现在不能谈论这件事,但是几个月后,我相信会出现一个大惊喜。」
- 2016年1月26日,Facebook对去年11月发表的论文《Better Computer Go Player with Neural Network and Long-term Prediction》进行了更新,Yann LeCun在个人Facebook主页发表长篇声明。
- 2016年1月27日,谷歌DeepMind在《Nature》发表论文。
本文来源MIT TR、Facebook、Wired、Googleresearch,机器之心编译出品
- 哲学传播者 [Chrome 47.0|GNU/Linux] 2016-01-28 21:35 4 赞 回复
- 配图不好,google的logo早都改了
- ZengYi [Firefox 44.0|Ubuntu] 2016-01-28 16:27 10 赞 回复
- Skynet产生的时间果然在linux 4.4发布前后啊!