AlphaGo之父详解 “围棋上帝”炼成记
刘佳
围棋已经流传近3000年,但人类一直低估了一点:以第五条线为代表的棋局中部区域。
这是AlphaGo之父、DeepMind创始人DemisHassabis向外界分享AlphaGo背后故事时透露的重要信息。
自去年3月首尔那场载入史册的比赛以来,AlphaGo超越人类棋手固有思维和套路的招法,对围棋界的冲击史无前例。用DemisHassabis的话说,“就像人们利用哈勃望远镜发现新的宇宙空间一样。AlphaGo就是围棋界的‘哈勃天文望远镜’。”
5月24日,DeepMind创始人DemisHassabis以及AlphaGo团队负责人DavidSilver一起对外详解了AlphaGo背后的研发故事,以及AlphaGo究竟意味着什么?
“AlphaGo已经展示出了创造力,在某一个领域它甚至已经可以模仿人类直觉了。”DemisHassabis对第一财经记者表示,在未来能看到人机合作的巨大力量,人类智慧将通过人工智能进一步放大。“强人工智能是人类研究和探寻宇宙的终极工具。”
围棋难在哪儿
历史上,电脑最早掌握的第一款经典游戏是井字游戏,这是1952年一位博士在读生的研究项目;随后是1994年电脑程序Chinook成功挑战西洋跳棋游戏;3年后,IBM深蓝超级计算机在国际象棋比赛中战胜世界冠军加里·卡斯帕罗夫。
相比之下,围棋看似规则简单,复杂性却难以想象。它一共有10的170次方种可能性,这个数字比整个宇宙中的原子数10的80次方都多,没有办法穷举出围棋所有可能的结果。
在DemisHassabis看来,更困难的是围棋不像象棋等游戏靠计算,而是靠直觉。“围棋中没有等级概念,所有棋子都一样,围棋是筑防游戏,因此需要盘算未来。你在下棋的过程中,是棋盘在心中,必须要预测未来。小小一个棋子可撼动全局,牵一发而动全身。围棋‘妙手’如受天启。”Hassabis如此解释道。
第一位与AlphaGo对阵的人类职业棋手樊麾对记者感慨,“曾经以为计算机打败职业棋手,一辈子都不会看到,没想到这么快就实现了。”
对AlphaGo团队来说,是时候寻找一种更聪明的方法来解开围棋谜题了。
AlphaGo系统的关键是,将围棋巨大无比的搜索空间压缩到可控的范围之内。
为了应对围棋的巨大复杂性,AlphaGo采用了一种新颖的机器学习技术,结合了监督学习和强化学习的优势。
具体而言,首先是通过训练形成一个策略网络(policynetwork),将棋盘上的局势作为输入信息,并对所有可行的落子位置生成一个概率分布。然后,训练出一个价值网络(valuenetwork)对自我对弈进行预测,以-1(对手的绝对胜利)到1(AlphaGo的绝对胜利)的标准,预测所有可行落子位置的结果。
这两个网络自身都十分强大,而AlphaGo将这两种网络整合进基于概率的蒙特卡罗树搜索(MCTS)中,实现了它真正的优势。最后,新版的AlphaGo产生大量自我对弈棋局,为下一代版本提供了训练数据,此过程循环往复。
AlphaGo如何决定落子
在获取棋局信息后,AlphaGo会根据策略网络探索哪个位置同时具备高潜在价值和高可能性,进而决定最佳落子位置。
在分配的搜索时间结束时,模拟过程中被系统最频繁考察的位置将成为AlphaGo的最终选择。在经过先期的全盘探索和过程中对最佳落子的不断揣摩后,AlphaGo的搜索算法就能在其计算能力之上加入近似人类的直觉判断。
DemisHassabis表示,AlphaGo不只是模仿其他人类选手的下法,而且在不断创新。
例如,在与李世石第二局里对弈第37步,这一步是Demis在整个比赛中感到最震惊的一步。
Demis解释道:在围棋中有两条至关重要的分界线,从右数第三根线。如果在第三根线上移动棋子,意味着你将占领该线右边的领域。而如果是在第四根线上落子,意味着你计划向棋盘中部进军,潜在的,未来你会占棋盘上其他部分的领域,可能和你在第三根线上得到的领域相当。
因此,在过去的3000多年里,人们普遍认为在第三根线上落子和第四根线上落子有着相同的重要性。但在第37步中,阿尔法狗却把棋子落在了第五条线,进军棋局的中部区域。“这可能意味着,在过去几千年里,人们低估了棋局中部区域的重要性。”
值得一提的是,和去年战胜李世石的AlphaGo相比,DeepMind科学家DavidSilver称现在AlphaGo要更强三子,他介绍道:“与李世石对战的AlphaGo在云上有50个TPUs在运作,搜索50个棋步为10000个位置/秒,而5月23日打败柯洁的AlphaGoMaster则在单个TPU上进行游戏,AlphaGo成为自己的老师,它从自己的搜索里学习,有着更强大的策略和价值网络。”
柯洁也在5月24日的微博中,对于AlphaGo团队给出的检测报告感叹:自己是在跟怎样可怕的对手下棋。
“这个差距有多大呢?简单地解释一下就是一人一手轮流下的围棋,对手连续让你下三步……又像武林高手对决让你先捅三刀一样……”柯洁说。
除了下围棋,AlphaGo还能做什么?
围棋之外,DemisHassabis告诉记者,AlphaGo的高效算法是一种通用型的算法,也可以推广到其他算法,把人工智能运用到各种各样的领域,如将AI用到材料设计、新药研制上,还有现实生活中的应用,如医疗、智能手机、教育等。
不过他也对第一财经坦言,围绕AlphaGo,背后的技术包括图像处理、大数据分析等,这些技术目前在其他领域的使用还在早期探索阶段,只在AlphaGo研究的中间环节某些领域应用,但是在未来肯定会在多个领域推广相关的技术。