“阿尔法狗”:下一盘比围棋更大的棋
自从2016年12月29日在围棋网络对战平台现身之后,截至2017年1月4日晚,一个名为“Master”的神秘账号在与人类围棋高手的车轮战中取得了60胜0负1和的战绩,手下败将不乏柯洁、朴廷桓、古力等世界顶尖名将,甚至在对局中看不到这些顶尖名将有一点点能和Master扳手腕的可能(Master战绩中唯一的和棋还是因为对手陈耀烨在对战时掉线)。在和古力最后一战前,Master承认自己就是升级版的“阿尔法狗”(AlphaGo,谷歌旗下DeepMind公司的一款围棋人工智能)。
人算不如“狗”算
1月3日晚,在接连赢下朴廷桓和元晟溱之后,Master在围棋网络对战平台的连胜纪录达到49场。当晚第50场的对手是“潜伏”,该账号的持有者被一致认为是世界头号选手柯洁。根据最新的世界围棋排名,柯洁是如今世界棋坛积分排名第一的选手,也是榜单上唯一一名排在“阿尔法狗”之前的棋手。
这场对局在Master的快速攻击面前,“潜伏”渐渐有些捉襟见肘,最终投子认负。“抬走,下一个。”这是观战的网友们为赢棋后的Master设计的对白。
而在去年“阿尔法狗”对阵李世石的“围棋人机大战1.0”之际,柯洁曾表示:“就算它战胜了李世石,但它赢不了我。”此后他还在微博上放出豪言,“管你是阿法狗还是阿法猫!我柯洁在棋上什么大风大浪没见过?让风暴再来得猛烈点吧……”
与之形成鲜明对比的是,2016年的最后一天,正当Master大杀四方之时,柯洁在微博中写道:“新的风暴即将来袭。我从3月份到现在研究了大半年的棋软,无数次的理论、实践,就是想知道计算机到底强在哪里?昨夜辗转反侧,不想竟一夜难眠,人类数千年的实战演练进化,计算机却告诉我们人类全是错的。我觉得,甚至没有一个人沾到围棋真理的边……”
那么问题来了,这只“阿尔法狗”是怎么下棋的?为什么这么强?到底强在哪里?
还记得1997年IBM公司的“深蓝”计算机战胜国际象棋世界冠军卡斯帕罗夫那次划时代的“人机大战”吗?“深蓝”赢得比赛用的就是人类最不屑的办法——穷举——把棋盘里可能出现的所有情况都模拟出来,然后对手下的每一步棋都“了然于胸”,再选择最能赢的走法。就像拿着几个亿去买彩票,所有有可能的组合全部下注,最后中了个500万。
人工智能能在国际象棋领域这么做,完全是因为国际象棋的所有可能性是10^47,以电脑的“脑力”要列举这么多种可能性还是够用的。但要想用一模一样的办法称霸围棋棋坛,面对围棋的十九路棋盘,“阿尔法狗”要应付的可能性是2x10^170,换成自然数的形式就是2后边跟着170个0……要穷举这么多的棋谱,电脑的“脑力”显然是不够用的。要知道,全宇宙的所有原子总数也不过是10^80个。
但是,穷举还是要有的,不过要用一种聪明点的办法缩小穷举的范围。人类不是下了几千年的围棋吗?那就先拿3000万份棋谱来学习一下人类下棋的基本套路。“阿尔法狗”刚开始通过自身的“人工神经网络”来“深度学习”围棋时,就是从网络围棋对战平台KGS拿来的3000万份棋谱开始的。不过这显然是不够的,所以在继续找更多的棋谱的同时“阿尔法狗”还开始了和自己下棋玩——通过学习得来的人类下棋套路来模拟博弈,尽可能地得到更加多的棋谱来学习。
这样一来,孜孜不倦地学习了数以千万计的棋谱“阿尔法狗”就对如何合理地下棋这件事有了自己的丰富经验,这就形成了自己“价值网络”——估算每一张棋谱里的每一步棋对最后赢棋有多大帮助,并找出其中的一些规律——这大概就是人类常说的“棋感”。而再看看人类,一辈子也下不了一万盘棋,还要记要分析要总结规律?想想就心累。
“阿尔法狗”学习了海量棋谱得来的“棋感”用来模仿和预测人类下棋已经有很高的把握了,据“阿尔法狗”团队2016年的说法,“阿尔法狗” 下围棋时的落子选择能正确符合57%的人类高手。就是说有57%的人类高手在面对同样的棋局时会选择和“阿尔法狗”一样的下一步,而不符合人类高手想法的那部分并不意味着“阿尔法狗”是错的,也更有可能是人类自己犯错而已。
有了深厚的内力加持还是不够的,“阿尔法狗”还需要在对战时把自己的积淀用到实处。先前说过,“阿尔法狗”和“深蓝”在迎战人类的方法并没有什么本质上的差别,都是穷举。虽然现在“阿尔法狗”已经懂得有规律地穷举了,但是它的运算能力还是不足以穷举规律之中的棋局的所有可能走势,毕竟这个运算量对于计算机来说依然是个天文数字。
所以,“阿尔法狗”引进了另一个大杀器,蒙特卡洛树搜索(MCTS)算法。蒙特卡洛算法,是由美国数学家乌拉姆最早提出,再经数学天才冯·诺伊曼发展和完善,以赌城蒙特卡洛命名的一种算法。在过于复杂的局面中,人工智能由于硬件缺陷,无法实现穷举级别的采样,而蒙特卡洛算法正是在采样不足的情况下,通过尽可能多次的随机采样,一步一步接近最优解。举个简单例子,有一堆钻石,每次随机选一枚,选中更大的就留下。那么经过越来越多次随机选择,最终留下的那枚钻石,就必然越来越接近这堆钻石中最大的。
具体到“阿尔法狗”下围棋这件事上,蒙特卡洛树搜索算法就是把“阿尔法狗”的“棋感”认为有可能的接下来的棋局都先过一遍(有时是走几十步之后,有时是走到对局结束),把对自己不利的都删除掉,剩下的便是胜率最高的走法,而且是每下一步棋时这么过一遍。
简而言之,“阿尔法狗”的工作原理就是利用深度神经网络的学习能力,建立自己的“价值网络”来分析每一步的收益,并以此来简化蒙特卡洛搜索树算法的搜索空间,达到落子合理性和时间消耗的平衡。虽然我们可以简单地用一句话来概括“阿尔法狗”的精髓,但是实际上,为了实现这一句话,“阿尔法狗”用了170个GPU(图形处理器)和1200个标准CPU(中央处理器)——在这种配置下,人一生能见识的棋谱还不如“阿尔法狗”一个小时记住的多。
人类还能赢吗?
因“阿尔法狗”的出现而很可能成为围棋界“末代皇帝”的柯洁感慨“没有一个人沾到围棋真理的边”,那么围棋真理是什么呢?柯杰不知道,李世石不知道,聂卫平不知道,日本围棋大师藤泽秀行也曾用“棋道一百,我只知七”来形容自己对围棋的无知,而如今完胜人类的“阿尔法狗”暂时也还不知道,但是它比任何人都更接近。
无论“围棋真理”这四个字多么磅礴大气而又虚无缥缈,对于围棋这种游戏来说,有一条真理对于参与者来说是永远不会变的,那就是求胜。
而“阿尔法狗”能完胜人类,除了它超强的运算能力,还在于它牢牢坚守“求胜”这条真理。从“阿尔法狗”的下棋机制我们不难看出,它的每一步只有一个目标,便是求胜,至于胜多少它是不在乎的。如果“阿尔法狗”在某个棋局时有两种落子选择,一种最后胜率是98%但只能赢对手1目,另一种最后胜率是95%却能赢对手10目,“阿尔法狗”会选择前者,但是人类却不一定。造成这种差距的背后,是“阿尔法狗”通过实打实的运算使它比人类“看得更远”。
所以很多棋手在观察“阿尔法狗”下棋时会有种怀疑人生的感觉,有时候它在大幅领先时并不急于扩大优势,反而在下一些“昏棋”,有些甚至是“学棋时下出来会被前辈骂的臭棋”,而这恰恰是“阿尔法狗”棋理上胜过人类的一个地方——既然赢面逐渐扩大,那么为了巩固胜利更应该堵住对手一切有可能反击,而不是追求局部厮杀的痛快。
2016年3月,AlphaGo以总比分4:1战胜韩国顶尖棋手李世石(右)
去年李世石在和“阿尔法狗”的对战中还能用“神之一手”扳回一局,而这次Master横扫棋坛,每局棋从第一颗棋子开始,我们看不到人类棋手有一丝可乘之机,升级版的“阿尔法狗”每一步都在追求胜的路上走得滴水不漏,每一步都下在对方最难受的要害上,处处制约。所有棋手在对战的中盘便已优势尽失,更枉谈收官阶段的激烈对杀。“阿尔法狗”胜过人类的,用人类围棋术语来说,大概便是一种“大局观”。连当今棋坛公认的“大局观”数一数二的棋圣聂卫平在与Master对战过后都感慨自己在输在前盘布局,并建议后来的挑战者如果想要打败它的话,必须在前半盘领先,否则棋路“厚实”的“阿尔法狗”到了中盘便可以轻易达到不战而屈人之兵的境地。
但是要和“阿尔法狗”比大局观,比前盘布局谈何容易,即使是顶尖高手也难做到下一步想数十步,而“阿尔法狗”却有能力算到百步之后的局面。
所以,按照目前的情况总结起来,“阿尔法狗”不仅比人类更懂自己,并且也比人类更懂围棋,它比所有人都更接近“围棋上帝”(大概就如“深蓝”之于国际象棋,有能力穷举棋盘上的所有变化)的境界,而它与“围棋上帝”之间剩下的那段距离,便是人工智能留给人类的最后的微弱的想象空间。
人类还将输掉什么?
统治围棋棋坛,绝不是“阿尔法狗”的终极使命,也不是“阿尔法狗”的缔造者,英国人工智能研究实验室DeepMind和它背后的谷歌公司的终极使命,通过“阿尔法狗”的不断进化最后研制出通用型人工智能设备才是。
谷歌2014年大举收购DeepMind看中的便是DeepMind在基于人工神经网络的机器深度学习算法上的成就。我们知道“阿尔法狗”的人工神经网络不仅能学习人类,还能模拟人类的方法来进行自我学习。而这个世界就像围棋一样,是由无数的可能构成的,人类已有的活动样本虽然庞大但很可能只是冰山一角,很多未发生的可能性便要通过机器通过模拟现实来学习。而人工神经网络学习到的数据越多,那么它知道的便越多,它从中总结出来的规律便越完善,可用性越高。
比如谷歌就在去年7月宣布DeepMind研发的学习软件已经找到了节约用于冷却谷歌数据中心电力的方法,节约幅度达到40%左右。该学习软件把数据中心的操作日志进行压缩,并以模拟形式实现了流程的优化。去年11月,DeepMind与一些医疗机构处理数百万名患者的医疗记录,利用人工智能软件分析了约100万份视网膜扫描报告成功找到了退行性眼疾的早期征兆,或通过头颈部癌症图像让人工智能软件学会区分健康和癌组织之间的不同。同时,这两年谷歌在基于人工智能的自动驾驶、图像识别、文字翻译等领域也是突飞猛进,基本处于相关行业全面领先的地位。
而这些,背后的实现方法本质上与“阿尔法狗”下棋的套路也没什么不同,如果说人类善于总结规律,那么通过“阿尔法狗”我们知道人工智能更善于总结正确的规律。
一直以来Google都在研发基于人工智能的无人驾驶汽车,并且取得了不小的成果
所以有了这样的方法论,人工智能可以做的事情便多了。首先,我们现在就可以看见的便是人工智能正在取代人类在旧行业中的重复性机械劳动,比如机器人走上工厂的流水线。同时我们还能看到新闻媒体开始用机器人写稿、汽车开始可以无人驾驶、快递开始可以用无人机送货,就连股市交易都能通过人工智能实现自动下单(如今美国金融市场上过半的交易都都是机器自动化交易)……
就连人类自己创造并引以为豪艺术领域,也逃不过人工智能的魔爪。早在2012年7月,伦敦交响乐团演奏了一曲《通向深渊》(Transits—Into an Abyss)。有评论家称其“充满艺术感且令人愉悦”。而这首《通向深渊》完全由人工智能创作的作品,同时在业界,已经有程序可以自动设计出极为复杂的曲子。
所以我们可以想象的是,如果把每一种职业都看做是一项和围棋一样有规则、过程和结果都可以量化的游戏(这里的结果的量化并不局限于围棋那种只有输、赢、和的量化,面对音乐这种比较抽象和主观的事物,从结果层面来量化它的好或不好还需要通过计算人类对某一曲目的接受程度,比如两首乐曲分别有80%和50%的观众表示喜爱,那么显然最优秀的结果已经被量化了),人类从业者和人工智能互为对手,那么像“阿尔法狗”那样通过“学习/自我学习-分析-总结规律-选择最优解决方案”模式运作的人工智能,只要有足够的数据样本、运算能力和合适的程序参数设置,人能解决的问题对运算能力与日俱增的人工智能来说便不难了。毕竟,你看现实生活中,有多少工作会比成为一个顶尖的围棋棋手还难?
作者:李斑子