AlphaGo是什么?
阿尔法围棋(AlphaGo)是一款围棋人工智能程序,由位于英国伦敦的谷歌(Google)旗下DeepMind公司的戴维·西尔弗、艾佳·黄和戴密斯·哈萨比斯与他们的团队开发,这个程序利用“价值网络”去计算局面,用“策略网络”去选择下子。2015年10月阿尔法围棋以5:0完胜欧洲围棋冠军、职业二段选手樊麾;2016年3月对战世界围棋冠军、职业九段选手李世石。
936年,艾伦·图灵提出了一种可以辅助数学研究的机器(后来被称为“图灵机”),80年过去了,人类在人工智能领域已经取得突飞猛进的发展。上世纪90年代,IBM超级计算机“深蓝”击败国际象棋世界冠军,引发了“电脑是否超越人脑”的热议。然而,围棋因其变化莫测的招式成为了AI(Artificial Intelligence,人工智能)难以攻克的“禁地”。当然,这个世界总有“不信邪”的人。
DeepMind开发的AI程序AlphaGo,击败了欧洲围棋冠军樊麾(音译)之后,又将目光瞄向了可能是当今最强的围棋选手——李世石。无论胜负如何,此战势必会成为AI历史上的重要里程碑。
AlphaGo是什么来历?
起初,DeepMind是英国的一家小型人工智能公司,专精于深度学习和分析建模领域,在2014年被谷歌收购。这家公司的创始人名叫德米斯·哈萨比斯(Demis Hassabis),他拥有剑桥大学和伦敦大学学院的计算机科学和认知神经科学学位,还是一位国际象棋大师。从外表上来看,“学生气”的哈萨比斯很普通,但是其对AI的见解和愿景改变了很多的看法,其中就包括著名物理学家史蒂芬·霍金。一直以来,霍金总是倾向于“AI威胁论”,认为智能机器终有一天会威胁人类的安全。不过在与哈萨比斯长谈了4个小时之后,霍金似乎转变了态度。
介绍完DeepMind的负责人,我们把目光转回到AlphaGo。事实上,AlphaGo成名已久,曾经先后与Crazy Stone和Zen(两款知名围棋程序)进行了500局对弈,仅有一局失利。此外,其也优于Facebook的围棋程序Dark Forest,后者得到了马克·扎克伯格的支持。AlphaGo具备策略网络(Policy Network)和估值网络(Value Network)能力,前者分析局面、预测对手招式,后者负责判断胜率,可以在2微秒内走出一步棋,而Dark Forest仅具备第一种能力,并且走棋所花费的时间也要更慢。
当然,真正让AlphaGo成名的还是战胜欧洲围棋冠军樊麾,这在当时引起了轩然大波,甚至推升了谷歌的股价,毕竟这是电脑对人脑的一次胜利。更重要的是,站在计算机的角度来看,与象棋相比,围棋的难度要大很多,每个步数的潜在组合非常复杂,曾有专家说AI十年内都无法掌握围棋。
不过,0:5的比分也让大家开始质疑樊麾的能力(职业二段),后者也坦言的确发挥不佳,有些轻敌。不管怎样,此番对弈使得谷歌信心大增,直接将下一个对手定位韩国围棋九段李世石。熟悉围棋的朋友恐怕就无需介绍了,李世石是近10年来获得世界冠军最多的棋手,“最强称号”实至名归。
谈到AlphaGo的挑战,李世石显得非常有信心:“如果对手是人,我倒不会这么费神地准备,可对手是机器,我必须设想我一个人孤单坐在那里的情景。和机器下棋心理战行不通,我只能调节自己的心理。我现在每天假想对局,设法体会一个人下棋是什么感觉。如果只论实力,说实话还是觉得我能赢。(人工智能)想征服围棋,没那么容易。”
AlphaGo学会“思考” 引入神经学习
电脑的计算能力早已超过人脑,但对外界事物的感知和情感表达却难以突破,“奇点何时到来”成了人们热议的话题。如今,Boston Dynamics已经开发出机器狗、机器豹等“头脑简单,四肢发达”的家伙,它们的运动协调性和反应已非常让人满意。下一步,就是让机器的大脑也变得发达起来。1997年,IBM的深蓝计算机采用手工编码规则,搜索了所有可能的走法,击败当时的国际象棋世界冠军。近20年过去后,如果继续用传统的方法,恐怕很难与当今的高手对抗。
此外,前文也提到过,围棋看起来仅有黑子和白子,并不复杂,但走法却是变化莫测。棋盘纵横各19条等距离、垂直交叉的平行线,构成了19×19(361)个交叉点。国际象棋每盘约80步,每步有35种可选走法,共有35^80种可能的情况。相比之下,围棋每盘约150步,每步有250种可选走法,共有250^150种情况。如此看来,AI危矣!
“不信邪”的人总能找到办法。DeepMind团队发现了一种新的方法,在传统算法的基础上进行了大幅优化,并且加入了建模,也就是所谓的“深度神经网络”,能够实现更加复杂的功能。
说到这儿,可能你会一头雾水,听过物联网、宽带网,神经网络是个什么鬼?传统意义上的经典AI搜集了大量数据,包括专家意见,可以在某一领域发挥指导意义。但这一算法的“致命”问题是,没办法进行自我学习,只能被动吸取录入的信息。
这时候有人就在想,能不能将人类的神经网络copy一下呢?这种想法早在数十年前就出现了,参与者除了技术开发人员,还有神经学家和生理学家。遗憾的是,他们并没有发现人工神经网络(ANN)与真正的神经网络相比,到底有什么关系。不过,这种想法却催生了新希望:机器无需被人为地设定规则,而是可以直接从海量数据中自主学习。可以说,ANN算是深度学习网络的前身,后者已经应用在图像识别、语言翻译等领域。
这就是人工智能了吗?并不是。上述可以理解为初级的神经网络,其需要足够多的数据量支撑,并且要确保数据之间的稳定性,需要有固定的模式,更像是某种高级数学公式,而人类思考的特性就是“多变”。so,pass。后来,有人提出了生物神经网络的概念,这种想法更为复杂,建议跳出初级神经网络的概念,从无到有地创造一种生物学AI模式。想象这样一种场景,AI获得数据(比如说评估报告)后,为不同的人建立模型(不同员工的考核指标),预测每个人的正常和异常行为(可能进行的下一步行为),处理各类可能发生情况(对不同情况作出相应反应),并且随着数据的变化进行自我调整(根据员工的表现,动态调节评估系数),这就是所谓的学习过程。
嗯,神经学习大概就是这么个事儿。回到AlphaGo,这种AI程序拥有两种深度神经网络,分别是策略网络(Policy Network)和估值网络(Value Network),二者相互配合,选出胜算更大的一步棋,把非常复杂的搜索树减少到可操作的规模。简单来说,它不需要每次都考虑数百种可能,而是在策略网络提供的几十步更好的走法中,选择最好的那个。你可以理解为,这是两个“大脑”在合作下棋,一个负责分析局势,另一个负责走出和高手走法最像的一步,更贴近人类的思考方式。
在上述提到的优化算法中,蒙特卡洛树搜索(Monte Carlo Tree Search)起到了关键作用。大家先别晕,这其实就是“随机走,定输赢”。举个例子,AlphaGo会模拟A和B两种走法,假设按照A走下去完成500局,赢了300次,按照B走下去同样完成500局,赢了400次。这种走法都是随机,最后结果显示B占优,那么程序就会选择B作为下一步棋。
通过加入蒙特卡洛树搜索算法,AlphaGo的实力提升明显。随着开发人员的不断优化,这种算法很可能接近或超过人类职业选手。
谷歌在博客中提到:“我们选择将围棋‘分解’,用改进的搜索树算法结合深度神经网络开发出AlphaGo这一程序,通过将棋盘分解成包含数百万类似神经元的网络联接,划分为12个不同的网络层。我们让围棋高手训练AlphaGo程序走了3000万步,它预测对手下步棋的准确率达到了57%(之前的纪录是44%)。为了击败而不只是模仿最好的棋手,AlphaGo还能够通过增强学习在神经元之间对弈,调整网络连接,从而开发出新的策略。”
如果AlphaGo击败李世石,意味着AI赶超人类?
王安石有云:“莫将戏事扰真情,且可随缘道我赢。战罢两奁分白黑,一枰何处有亏成。”AlphaGo和李世石的对弈肯定不会像王安石这么淡然,但也谈不上绝对的谁胜谁败,只是人工智能的一次进步。是的,无论输赢,AlphaGo都是“胜者”。
为什么这么说?根据双方制定的规则,即使李世石以3:0或3:1提前取胜,剩下的比赛仍然会继续进行,为的就是让AlphaGo有一次难得的学习机会。谷歌花了100万美元,赚到全球的关注,收获了顶级高手的”技艺“,划得来,胜是意外之喜,败是情理之中,而李世石也很可能拿到巨额奖金,何乐不为?
说到AlphaGo获胜的意义,也只能代表AI计算能力的胜利,思维博弈方面的胜利还有待商榷。此外,人类大脑的可开发空间还有很大,不像计算那样指数级增长。考虑到人类会受到心理因素、外围环境等影响,AlphaGo在这方面是有着一定优势的。当然,我并不是否认人工智能的巨大进步,这个大黑盒中蕴藏了无限的可能。从长远来看,人工智能的胜利只是时间问题,毕竟人类或许一年玩1000局,而机器一天就能玩100万局,学习的速度相差太多。
如今,科学技术已经从Google Now、可穿戴设备这种增强人类能力的层级,发展到管理人类生活的层级(无人驾驶汽车),而且有研究表明这种机制的安全性要优于人类的不确定性。未来,人工智能的突飞猛进式发展终有一天会接管人类的大部分工作,在很多领域超越人类。但这一次,我还是赌李世石会赢。
附:李世石与AlphaGo的比赛日程
赛程:3月9日、3月10日、3月12日、3月13日、3月15日
规则:五盘对局,取得三局或三局以上者为胜。若比赛出现3-0或3-1已经分出胜负后,也将下满5局,以便AlphaGo机器人获得更多的学习机会。比赛采用中国规则,黑贴3又3/4子(黑贴7目半)。每位棋手各有两个小时布局时间,3次60秒的读秒,每场比赛预计需要约4-5个小时。
比赛开始时间及流程:比赛时李世石在棋盘上落子,助手将手数输入电脑传送给AlphaGo,AlphaGo的手数由助手摆到李世石落子的棋盘上。
奖励:获胜一方将获得100万美元。若AlphaGo获胜,奖金将捐献给联合国儿童基金和STEM教育(科学、技术、工程、艺术以及教学)及为其相关公益团体。