计算机科学角度分析GoogleAlphaGo 战胜李世乭的必然性
程京德
日本国立埼玉大学,日本埼玉 338-8570
2016年3月9日,对于计算机围棋研究工作者、计算机科学及人工智能研究工作者、职业围棋选手以及其他对围棋感兴趣的人,是一个难忘的日子: Google公司DeepMind团队研发的计算机围棋程序AlphaGo首局战胜围棋世界冠军之一、世界超一流职业围棋手李世乭,并且是在收官之前李世乭投子认输,AlphaGo中盘完胜。李世乭本人赛前说将会以5比0完胜AlphaGo的“豪言”以及其他职业围棋手说Google挑选李世乭做对手是让他捡了个大便宜的“大话”都已经在事实面前不攻自破了。AlphaGo的完胜将是人工智能领域一个里程碑式的事件。2016年1月27日Google公司发布AlphaGo战胜欧洲围棋冠军、职业二段围棋手樊麾之后,笔者曾对AlphaGo与李世乭的对局进行预测,认为李世乭将难赢易输,赢面不大。对于AlphaGo与李世乭的对战结果,可以说是在笔者的预料之中。本文试图从计算机科学角度来分析此次Google AlphaGo战胜围棋世界冠军李世乭的必然性并言及相关问题。
对于AlphaGo与李世乭的对战,自消息发布以来,各界翘首以待,“人机大战”、“围棋机器人”、“AlphaGo机器人”、以及类似的说法在各类媒体上比比皆是。首先,笔者想对此类说法进行一些澄清:李世乭究竟是在和谁对局?计算机?李世乭当然不是和仅仅一台计算机对局,所谓“人机大战”的说法有问题。必须明确的是,现代通用电子数字计算机自身除了按照预先给定指令进行高速计算之外,不会做其他任何事情,而所谓的指令,是人类以预先编制好的计算机程序的方式提供给计算机的。机器人?“机器人”本身就是个很有问题的名称,所谓“围棋机器人”、 “AlphaGo机器人”就更经不起推敲了。从概念上严格、准确地说,李世乭是在和由DeepMind团队研究开发的、在某台计算机(只要计算能力足够即可,并非特定的一台)上按照人的操作而运行的计算机围棋程序AlphaGo对局。
澄清了李世乭究竟是在和谁对局的问题,下面分析AlphaGo战胜李世乭的必然性。
计算机自身唯一超越人类的能力就是高速计算,那么,DeepMind团队是如何让AlphaGo利用计算机的高速计算能力来战胜人类的呢?
首先,最重要的一环是概念分层抽象及知识表达的自动化。人类智能(动物智能基本上不具备)中本质上重要的能力是概念的分层抽象能力,这是人类得以分层次地认识、表达、掌控千千万万复杂事物的基础。包括当年战胜世界冠军、国际象棋特级大师Garry Kasparov的IBM Deep Bule(图 1)在内,AlphaGo之前的计算机棋类程序都不具备概念分层抽象及知识表达自动化的能力。所以,这些程序都必然遭遇到搜索空间巨大所带来的计算复杂性难题。DeepMind团队让AlphaGo具备了概念分层抽象及知识表达的自动化能力,就可以让AlphaGo在高概念(亦即元概念)层次上进行高速计算,形象地说,不是对一个一个的局面进行计算,而是对一类一类的局面进行计算,从而有效地避免搜索空间巨大所带来的计算复杂性难题。这就是为什么当许多人都认为围棋的可能局面数量(无层次单纯计算的结果)巨大到高速计算机也无从应对时,AlphaGo却能够独树一帜、脱颖而出的道理。笔者认为,在DeepMind团队研究开发AlphaGo的所有技术创新中,这是最重要的,因为正是这种能力使得AlphaGo能够在短时间内进行的计算结果在实际对局中有效,正是这种能力使得AlphaGo能够与人类棋手匹敌,其他技术创新都是基于这种能力的。
图1 1997年5月11日,卡斯帕罗夫在纽约对战IBM超级电脑“深蓝”,最终以1胜2负3和的战绩败北(图片来源:新华网)
其次,此前笔者曾对AlphaGo和李世乭之战进行过预测,“如果AlphaGo的确具备了系统的、一般的自学习、自评价、自我成长能力,并且樊麾和李世乭的棋力之间仅仅是经验之差而没有本质上飞跃性差距的话,那么,3月份的AlphaGo和李世乭之战,对李世乭来说就凶多吉少了。”DeepMind团队让AlphaGo具备了自学习、自评价、自成长能力,正是这种能力使得AlphaGo战胜人类顶尖棋手成为了一个或迟或早的时间问题。在这一方面DeepMind团队的重要技术创新是他们发明了合理的评价标准,使得AlphaGo能够基于该标准对学习效果进行自我评价并引导自己向着正确方向进步,达到在该评价标准适用范围内的最佳水平。而一旦一个计算机程序具备了自学习、自评价、自成长能力,那么就意味着它可以在评价标准适用范围内,凭借现代计算机的高速计算能力(远远超出于人类),让自己非常快地成长到一个最佳水平。这种进步速度由于借助了计算机的高速计算能力,所以远远超出人类进步速度的水平。从今天的对局结果来看,AlphaGo的自学习、自评价、自成长能力的确具备了系统性和一般性,樊麾和李世乭的棋力之差,对于AlphaGo的快速进步能力来说并非什么很难的事情。
一言以蔽之,从计算机科学的角度来看,DeepMind团队成功地发明了概念分层抽象及知识表达的自动化机制,把解决围棋对局问题所必需的搜索化解为对现代计算机来说是可行的,成功地发明了合理的评价标准,使得计算机围棋程序具备了自学习、自评价、自成长能力,从而让AlphaGo今天完胜人类顶尖棋手。
行文至此,读者可以看到,笔者一直在强调“DeepMind团队让AlphaGo如何如何”,而李世乭输给了“机器”、“机器人”、“计算机”等说法强调计算机器战胜人类,笔者认为这些说法有待商榷之处。与DeepMind团队用来运行AlphaGo程序的计算机功能相当的计算机在这世界上应该绝不在少数,随便拿一台(包括DeepMind团队今天用的那台在内)来,没有AlphaGo程序,怎么赢李世乭?而AlphaGo在计算机上运行需要人的操作,更为本质上重要的是,AlphaGo是DeepMind团队研究开发出来的,它之所以具备强大能力,是DeepMind团队研究开发出来的机制所赋予的。所以,从计算机科学的角度来说,李世乭是输给了同为人类的DeepMind团队,是DeepMind团队借助计算机的高速计算和庞大存储能力战胜了李世乭,这场世纪大战的胜者仍然是人类自身而绝不是什么机器。
(责任编辑 刘志远)
|