史上最强棋类AI降临!AlphaZero今天登上Science封面:一个算法“通杀”三大棋
2018-12-07 14:05:48

undefined

不仅会下围棋,还自学成才横扫国际象棋和日本将棋,史上最强棋类AI降临!

今天,DeepMind的通用棋类算法,也是迄今最强的棋类AI——AlphaZero,经过同行评议,被顶级期刊《科学》以封面论文的形式,正式引入学界和公众的视野。

同时,这也是经过完整同行审议的AlphaZero论文,首次公开发表。

论文描述了AlphaZero如何快速学习每个游戏,如何从随机对弈开始训练,在没有先验知识、只知道基本规则的情况下,成为史上最强大的棋类人工智能。

《科学》杂志评价称,能够解决多个复杂问题的单一算法,是创建通用机器学习系统,解决实际问题的重要一步。

DeepMind说,现在AlphaZero已经学会了三种不同的复杂棋类游戏,并且可能学会任何一种完美信息博弈的游戏,这“让我们对创建通用学习系统的使命充满信心”。

AlphaZero到底有多厉害?总结如下:

?在国际象棋中,AlphaZero训练4小时就超越了世界冠军程序Stockfish;

?在日本将棋中,AlphaZero训练2小时就超越了世界冠军程序Elmo。

?在围棋中,AlphaZero训练30小时就超越了与李世石对战的AlphaGo。

啊2.jpg

一年前,DeepMind静静地在arXiv贴出了AlphaZero的预印版论文,当即就在圈内引发轰动:AlphaZero从零开始训练,2小时击败最强将棋AI,4小时击败最强国际象棋AI,8小时击败最强围棋AI(李世石版AlphaGo)。

现在,DeepMind将完整评估后的AlphaZero公之于众,不仅验证了上述结果,还补充了新的提升。

AlphaZero没有使用人类知识(除了棋类基本规则),从零开始训练,快速掌握日本将棋、国际象棋和围棋这三种复杂棋类游戏,展现出令人耳目一新的独道风格,拓展了人类智慧,并证明了机器拥有创造性的可能。

国际象棋大师卡斯帕罗夫——20年前输给IBM深蓝的国际象棋世界冠军,今天在Science发表社论,表示他很高兴看到AlphaZero展现出了像他一样“动态、开放”的棋风:

“传统观点以为,机器将通过无休止的枯燥操作趋近完美,最终导致平局。但据我观察,AlphaZero优先考虑棋子的活动而非盘面上的点数优势,更喜欢在我看来有风险和激进的地方落子。

“计算机程序通常会反映出编程者的侧重和偏见,但由于AlphaZero通过自我对弈训练,我认为它体现了棋的真谛(truth)。正是这种出色的理解使其能够超越世界顶级的传统棋类引擎,而且每秒计算的落子位置要少得多。”

AlphaZero证明了机器也能成为专家,机器生成的知识也值得人类去学习。“AlphaZero以这样一种强大而有用的方式超越了我们,”卡斯帕罗夫写道:“只要在虚拟知识(virtual knowledge)能够生成的领域,这个模型都可能复制到任何其他任务上。”

IBM深蓝的共同创造者之一Murray Campbell,也在Science发表评论文章,指出DeepMind论文使用通用的搜索方法,结合蒙特卡罗树搜索(MCTS),增强了深度强化学习。

“尽管MCTS已经成为围棋程序中的标准搜索方法,但迄今为止,几乎没有证据表明它在国际象棋或将棋中有用。”Campbell写道:“DeepMind展示了深度强化学习与MCTS算法相结合的力量,从随机初始化的参数开始,让神经网络通过自我对弈不断更新参数。”

AlphaZero有什么不同?

国际象棋有什么难的?

实际上,国际象棋是计算机科学家很早就开始研究的领域。1997年,深蓝击败了人类国际象棋冠军卡斯帕罗夫,这是一个人工智能的里程碑。此后20年,国际象棋的算法在超越人类后,一直还在不断地进步。

啊啊3.jpg

这些算法都是由强大的人类棋手和程序员构建,基于手工制作的功能和精心调整的权重来评估位置,并且结合了高性能的alpha-beta搜索。

而提到游戏树的复杂性,日本将棋比国际象棋还难。日本将棋程序,使用了类似国际象棋的算法,例如高度优化的alpha-beta搜索,以及许多有针对性的设置。

啊啊2.jpg

AlphaZero则完全不同,它依靠的是深度神经网络、通用强化学习算法和通用树搜索算法。除了基本规则之外,它对这些棋类游戏一无所知。

其中,深度神经网络取代了手工写就的评估函数和下法排序启发算法,蒙特卡洛树搜索(MCTS)算法取代了alpha-beta搜索。

AlphaZero深度神经网络的参数,通过自我博弈的强化学习来训练,从随机初始化的参数开始。

随着时间推移,系统渐渐从输、赢以及平局里面,学会调整参数,让自己更懂得选择那些有利于赢下比赛的走法。

那么——

围棋和国际象棋、将棋有什么不同

围棋的对弈结局只有输赢两种,而国际象棋和日本将棋都有平局。其中,国际象棋的最优结果被认为是平局。

此外,围棋的落子规则相对简单、平移不变,而国际象棋和日本将棋的规则是不对称的,不同的棋子有不同的下法,例如士兵通常只能向前移动一步,而皇后可以四面八方无限制的移动。而且这些棋子的移动规则,还跟位置密切相关。

啊啊啊1.jpg

尽管存在这些差异,但AlphaZero与下围棋的AlphaGo Zero使用了相同架构的卷积网络。

AlphaGo Zero的超参数通过贝叶斯优化进行调整。而在AlphaZero中,这些超参数、算法设置和网络架构都得到了继承。

除了探索噪声和学习率之外,AlphaZero没有为不同的游戏做特别的调整。

下面就让我们一起来看看,AlphaZero的论文作者David Silver、Thomas Hubert、Julian Schrittwieser和Demis Hassabis亲自撰文,阐述他们如何用5000个TPU,让AlphaZero快速掌握将棋、国际象棋和围棋。

undefined

用5000个TPU,快速掌握将棋、围棋和国际象棋

传统国际象棋的引擎依赖于由人类高手玩家“手工制作”的数千条规则和启发式方法,它们都试图解释游戏中可能发生的每一种结果。

日本将棋程序也是特定于游戏的,使用与国际象棋程序类似的搜索引擎和算法。

AlphaZero则采用了一种完全不同的方法,用深度神经网络和通用算法取代了这些“手工制作”的规则,而这些算法对基本规则之外的游戏却一无所知。

undefined

▲在国际象棋中,AlphaZero仅用了4个小时便首次超越了Stockfish;在日本将棋中,AlphaZero在2小时后首次超过Elmo;在围棋方面,AlphaZero在2016年的比赛中,经过30个小时的鏖战,首次击败了传奇棋手李世石。注:每个训练步骤代表了4096个落子位置。

为了学习每一个游戏,一个未经训练的神经网络通过强化学习与自己对打数百万次。

一开始,它完全是随机的,但是随着时间的推移,系统从输赢中开始学习,并根据神经网络的参数进行调整,使其在未来可以选择更有利的走法。

网络需要的训练量取决于游戏的风格和复杂性,国际象棋需要9小时,将棋需要12小时,围棋需要13天。

“AlphaZero的一些举动,例如将王将移至棋盘中央是有违将棋理论的,从人类的角度来看,它的这些举动似乎是将自己置于危险境地。但令人难以置信的是,它仍然控制着局面。AlphaZero独特的游戏风格向我们展示了将棋的新可能性。”羽生善治这样说。羽生善治,日本将棋棋士,获得七项头衔的“永世称号”,亦是日本将棋史上第一个达成七冠王与“永世七冠”的人,改写了将棋界多项历史纪录。

训练后的网络用于指导搜索算法(蒙特卡罗树搜索,MCTS),选择游戏中最有有利的动作。对于每次移动,AlphaZero仅搜索传统国际象棋引擎所考虑的一小部分位置。

例如,在国际象棋中,它每秒仅搜索6万个位置,相比之下,Stockfish大约有6千万个位置。

undefined

这些经过全面训练的系统是在国际象棋(Stockfish)和将棋(Elmo)最强大的“手工引擎”以及我们之前自学的AlphaGo Zero系统(已知最强大的围棋选手)的帮助下进行测试的。

*每个程序都在它们所设计的硬件上运行。Stockfish和Elmo使用了44个CPU核,而AlphaZero和AlphaGo Zero使用了一台拥有4个第一代TPU和44个CPU核的机器。第一代TPU在推理速度上与NVIDIA Titan V GPU等商用硬件大致相似,但架构并不具有直接可比性。

*所有的比赛都有时间控制,每场比赛3小时,外加每一步额外的15秒。

在每次评估中,AlphaZero都毫无悬念地击败了对手:

*在国际象棋比赛中,AlphaZero击败了2016年TCEC(第九季)世界冠军Stockfish,赢得155场比赛,在1000场比赛中只输了6场。为了验证AlphaZero的稳健性,我们还进行了一系列比赛,这些比赛都是从常见的“人类开局方式”开始的。在每一种开局情况下,AlphaZero都击败了Stockfish。我们还与最新开发版本的Stockfish以及它的变体打过比赛,在所有的比赛中,AlphaZero都赢了。

*在将棋比赛中,AlphaZero击败了2017年CSA世界冠军版Elmo,赢得了91.2%的比赛。

*在围棋比赛中,AlphaZero击败了AlphaGo Zero,赢得了61%的比赛。

undefined

独创棋风,拓展人类智慧,迈向通用学习系统重要一步

然而,让人感到最着迷的是AlphaZero的行棋风格。例如,在国际象棋中,AlphaZero在自我训练中独立发现并走出了人类棋手常用的定式,如开局、王不立险地(King safety)和兵的走法。

但是,由于这些都是自学的,因此不会受传统观念的影响,AlphaZero还开创出了自己的直觉和策略,产生了一系列令人兴奋的新颖思路,为几个世纪以来国际象棋战略战术的思考提供了有益的补充。

过去一个多世纪以来,国际象棋一直被用作衡量人类和机器认知水平的黄金标准。 AlphaZero取得的非凡成果,刷新了这门古老的棋盘游戏和尖端科学之间的显著联系。前国际象棋世界冠军加里·卡斯帕罗夫如是说。

在与AlphaZero对弈时,棋手注意到的第一件事就是它的行棋风格,国际象棋大师Matthew Sadler说道,“它会怀着明确的目的和力量来瓦解对手的王”。Sadler和女子国际象棋大师Natasha  Regan一起分析AlphaZero,并写作出版了专著《Game Changer:AlphaZero的颠覆性国际象棋策略和人工智能潜力》。

undefined

AlphaZero的行棋风格非常灵活,最大限度地提升己方子力配备的灵活性和机动性,同时最大限度地降低对手子力的灵活性和机动性。

与我们的通常想法不同的是,AlphaZero似乎对“子力”本身的重视程度较低,而重视“子力”是现代国际象棋的基本行棋思路,棋盘上每个子都具有价值,如果一个玩家在棋盘上的子力高于对手,那么他就拥有子力优势。而AlphaZero甚至愿意在棋局早期牺牲子力,以获得长期收益。

“令人印象深刻的是,AlphaZero在行棋时能将这种风格应用在各种各样的开局和定式中。”Matthew说道,他也观察到,AlphaZero从走第一步开始就体现出了这种明确的的性,且一以贯之,其风格体现得非常明显。

“过去的传统国际象棋软件已经非常稳定,几乎不会出现明显错误,但在面对没有具体和可计算解决方案的时,其行棋会发生偏差,”他说:“正是在这种时候,才是AlphaZero发挥其'感觉'、'洞察'或'直觉'的地方。”

这种独特的能力,在其他传统的国际象棋引擎中是看不到的。目前,AlphaZero已经被用来在世界国际象棋锦标赛上为棋迷们提供有关Magnus Carlsen和Fabiano Caruana(现男子国际象棋等级分前两名)对局的新见解和评论。

“我们可以看看AlphaZero的分析,与顶级国际象棋大师对棋局的分析,甚至和棋手实战着法有何不同,这真是令人着迷的一件事。AlphaZero可以作为整个国际象棋社区的强大教学工具。”

AlphaZero的“教诲”,让我们想起了2016年AlphaGo与围棋世界冠军李世乭对弈时的场景。在那次比赛中,AlphaGo走出了许多极具创造性的致胜着法,包括在第2局比赛中的执黑第37手,这手棋推翻了人类数百年的思路。这些着法已经被包括李世乭本人在内的所有级别的棋手和爱好者研究过。

他们对此表示:“我之前还认为AlphaGo是基于概率来计算的,它只是一台机器。但当我看到这手棋时,我改变了想法。毫无疑问,AlphaGo是有创造性的。

“人机大战”的影响力已经远远超出了国际象棋本身。这些自学成才的专家级机器不仅表现优异,棋力非凡,而且从自己创造的新知识中学习。前国际象棋世界冠军加里·卡斯帕罗夫说。 

和围棋一样,我们对AlphaZero在国际象棋上的创造性突破感到兴奋,自从计算机时代以来,人工智能时时面临着巨大挑战,包括巴贝奇、图灵、冯·诺依曼在内的早期计算机先驱人物,都曾试图设计国际象棋程序,但AlphaZero的用途不仅仅是国际象棋、将棋和围棋。

为了创建能够解决各种现实问题的智能系统,它们需要更加灵活,能够适应新情况。虽然目前在实现这一目标方面取得了一些进展,但AI的通用化问题仍然是研究中的一项重大挑战,经过训练的AI系统面对特定任务时能够以极高标准完成,但任务只要稍有变化往往就会失败。

AlphaZero掌握了三种不同的复杂游戏,这可能是朝着解决这一问题迈出的重要一步。尽管目前还处于早期阶段,但AlphaZero取得的进步,以及在蛋白质折叠系统AlphaFold等其他项目上的令人鼓舞的结果,让我们对实现通用学习系统的使命充满信心,相信未来我们能够找到一些新的解决方案,解决最重要、最复杂的科学问题。



编辑:顾军
责任编辑:樊丽萍

来源:综合自新智元、量子位微信号

0
Logo

文汇报

源于事实 来自眼界
DownLoad