「阿尔法狗」再进化!通用算法AlphaZero再攻克几种棋又有何难!

雷锋网AI科技评论报道:DeepMind悄悄放出了一篇新论文,介绍了一个阿尔法狗。一开始我们差点以为DeepMind也学会炒冷饭了,毕竟「从零开始学习」的AlphaGoZero论文10月就发出来、大家已经讨论了许多遍了。可定睛一看,这次的AlphaZero不是以前那个只会下围棋的人工智能了,它是通用的,国际象棋、日本象棋也会下,所以去掉了名字里表示围棋的「Go」;不仅如此,围棋还下得比上次的AlphaGoZero还要好——柯洁在得知AlphaGoZero之后已经感叹道人类是多余的了,这次一众围棋选手可以牵着国际象棋选手们再痛哭一次了。

从技术的角度讲,alphago一个通用的强化学习模型还比之前的已经足够简单的专用于下围棋的模型表现更好?「没有免费的午餐」定律难道失效了?

AlphaGo的一路进化中,我们见证了DeepMind的工程师们对深度强化学习本质的思考和尝试,也看到了不断的优化中带来的无需先验知识、降低资源消耗、提高训练速度等等可喜的技术进步。从使用人工特征、出山之战全胜打败樊麾、发出第一篇论文的AlphaGoFan,到4:1击败李世石、运行在50块TPU上、纪录片已经上映的AlphaGoLee,再到乌镇3:0击败柯洁、只用4块TPU就打碎了人类所有击败AlphaGo幻想的AlphaGoMaster之后,我们又等来了抛弃人工特征、抛弃所有人类高手棋局,全靠自学成材继续超越AlphaGoMaster的AlphaGoZero。在我们觉得AlphaGoZero已经成为尽善尽美的围棋之神的时候,DeepMind出人意料地带来了这个更通用的、能下各种棋类的、而且在围棋中的表现更上一层楼的通用强化学习模型,「AlphaZero」。

过往几个版本的AlphaGoZero大家想必都比较熟悉了,不过我们还是简单回顾一下,方便和新的AlphaZero对比。AlphaGo中一直都有深度有限的蒙特卡罗树搜索(MCTS),然后主要靠策略网络和价值网络分别预测下一步落子的点以及评估当前的局势。在更早版本的AlphaGo中,策略网络和价值网络是两个不同的深度神经网络,Zero版本中是同一个ResNet的两组输出;AlphaGoZero之前几个版本中都需要先把局面转换为高一层的人工特征再作为网络的输入、需要先学习人类棋谱再转变到自我对弈的强化学习、有一个单独的快速走子网络进行随机模拟,AlphaGoZero则把局面落子情况直接作为网络的输入、由随机的网络权值直接开始强化学习、舍弃快速走子网络直接用主要的神经网络模拟走子。可以看到,AlphaGoZero的思路和模型结构都得到了大幅度简化,带来的是更快的训练和运行速度,以及更高的棋力。而这样简单的模型就能带来这样好的结果,也是让研究者们对AlphaGoZero发出惊叹的原因。

如何从围棋到更多

其实一直以来人们在编写下棋的AI的过程中,都会针对每一种棋的不同特点设计一些专门的技巧在其中。AlphaGoZero中实现策略和价值两个网络的带有残差的CNN网络其实刚好就利用到了围棋的一些特点:比赛规则是平移不变的,这和卷积神经网络的共享权值相吻合;棋子的气和卷积网络的局部结构相吻合;整张棋盘是旋转、对称不变的,在训练中可以方便地运用现有的数据增强和组合方法;动作空间简单,只需要在一个位置落单一类别的棋子;结果空间简单,要么是赢,要么是输,没有平局。以上种种特点都可以帮助AlphaGoZero顺利、快速地训练。

现在DeepMind的研究人员们想要把AlphaGoZero变成更通用化、能下更多不同棋的算法时候,就需要重新思考其中的一些处理方法。比如国际象棋和日本象棋中,如何走子高度取决于当前的子所在的位置,而每个子又有各自不同的走法;棋盘的局势是不可旋转、不可镜像的,这会影响行棋的方向;象棋可以有平局;日本象棋中甚至可以把捕获的对手的棋子重新放到棋盘上来。相比围棋,这些特点都让计算过程变得更复杂、更不适合AlphaGoZero这样的CNN网络。相比之下,2016年世界象棋算法锦标赛(TCEC)的冠军Stockfish就是一个使用人类高手的手工特征、精细调节过的权重、alpha-beta剪枝算法、加上大规模启发式搜索和不少专门的国际象棋适配的程序。最近刚刚击败了人类日本围棋冠军的最强算法Elmo也是差不多的情况。

AlphaZero是AlphaGoZero的通用化进化版本,它继续保持了AlphaGoZero中不需要人工特征、利用深度神经网络从零开始进行强化学习、结合蒙特卡洛树搜索的特点,然后更新网络参数,减小网络估计的比赛结果和实际结果之间的误差,同时最大化策略网络输出动作和蒙特卡洛树搜索可能性之间的相似度。

AlphaZero与AlphaGoZero之间的具体区别有以下几个:

AlphaGoZero会预计胜率,然后优化胜率,其中只考虑胜、负两种结果;AlphaZero会估计比赛结果,然后优化达到预计的结果的概率,其中包含了平局甚至别的一些可能的结果。

由于围棋规则是具有旋转和镜像不变性的,所以专为围棋设计的AlphaGoZero和通用的AlphaZero就有不同的实现方法。AlphaGoZero训练中会为每个棋局做8个对称的增强数据;并且在蒙特卡洛树搜索中,棋局会先经过随机的旋转或者镜像变换之后再交给神经网络评估,这样蒙特卡洛评估就可以在不同的偏向之间得到平均。国际象棋和日本象棋都是不对称的,以上基于对称性的方法就不能用了。所以AlphaZero并不增强训练数据,也不会在蒙特卡洛树搜索中变换棋局。

在AlphaGoZero中,自我对局的棋局是由所有之前的迭代过程中出现的表现最好的一个版本生成的。在每一次训练迭代之后,新版本棋手的表现都要跟原先的表现最好的版本做对比;如果新的版本能以超过55%的胜率赢过原先版本,那么这个新的版本就会成为新的「表现最好的版本」,然后用它生成新的棋局供后续的迭代优化使用。相比之下,AlphaZero始终都只有一个持续优化的神经网络,自我对局的棋局也就是由具有最新参数的网络生成的,不再像原来那样等待出现一个「表现最好的版本」之后再评估和迭代。这实际上增大了训练出一个不好的结果的风险。

AlphaGoZero中搜索部分的超参数是通过贝叶斯优化得到的。AlphaZero中直接对所有的棋类使用了同一套超参数,不再对每种不同的棋做单独的调节。唯一的例外在于训练中加在先前版本策略上的噪声的大小,这是为了保证网络有足够的探索能力;噪声的大小根据每种棋类的典型可行动作数目做了成比例的缩放。

AlphaZero释放威力

作者们用同样的算法设定、网络架构和超参数(只有刚刚说到的噪声大小不同),分别训练了下国际象棋、日本象棋、围棋的三个AlphaZero实例。训练从随机初始化的参数开始,步数一共是70万步,mini-batch大小4096;5000个第一代TPU用来生成自我对局,64个第二代TPU用来训练神经网络。

在人类把棋类作为人工智能研究的重要关卡以来的几十年间,研究者们开发出的下棋算法几乎总是避免不了人工特征和为具体的棋类做的特定性优化。如今,完全无需人工​​特征、无需任何人类棋谱、甚至无需任何特定优化的通用强化学习算法AlphaZero终于问世,而且只需要几个小时的训练时间就可以超越此前最好的算法甚至人类世界冠军,这是算法和计算资源的胜利,更是人类的顶尖研究成果。DeepMind愿景中能解决各种问题的通用AI,看起来也离我们越来越近了。

阿尔法狗Zero实现人工智能重大突破?听我国专家怎么说

阿尔法狗(AlphaGo)再次震惊世界,在《自然》杂志上发表的论文显示,英国深度思维(DeepMind)公司研发出了“阿尔法狗—零”(AlphaGoZero),它在仅输入围棋规则、未输入任何人类棋谱的情况下,通过自学习,就具备了完胜阿尔法狗的超强棋力。一时间,许多人惊呼:“阿尔法狗—零”实现了人工智能重大突破。事实真的如此吗?接受解放日报·上观新闻记者采访的两位人工智能专家做了理性分析。

大多数领域离不开人类知识

深度思维公司将alphago的发展分为4个版本:1.0版本是“阿尔法狗-樊”,它在2015年战胜欧洲围棋冠军樊麾,是计算机程序首次战胜人类职业棋手;2.0版本是“阿尔法狗-李”,它于去年战胜了世界冠军李世石,意味着人工智能具备了超越人类顶级棋手的实力;3.0版本是“阿尔法狗-大师”,今年战胜了世界排名第一的柯洁。这3个版本有一个共同点:开始学围棋时,研发人员都会输入一批棋谱,即人类千百年来摸索出的基本下法,让机器在此基础上进行自学习。而4.0版本“阿尔法狗-零”则不需要任何人类棋谱知识,在起步阶段,它只被输入了围棋规则,完全“从零开始”进行自学习——与自己对弈,并在很短时间内拥有了超强棋力。

这是否意味着人工智能不再需要人类知识,就能飞速成长?上海交通大学机械与动力工程学院机器人研究所闫维新博士给出了否定的回答。他带领团队研发出了医学影像人工智能分析系统“阿尔法医生”,能识别直肠癌、皮肤癌等多种疾病。在他看来,“阿尔法狗—零”确实取得了技术突破,能完全依靠自我对弈进行学习,目前适用于棋类游戏领域。在其他很多领域,这种技术突破会给研发人员带来启发,然而能否“移植”,还有待观察。

闫维新以他擅长的人工智能图像识别为例,目前的开发技术需要大量人类知识。如何教会机器对医学影像进行识别和诊断?需要把医生勾画好的数以万计的片子输入人工智能系统,让它对大样本图像进行分类学习、迭代十余万次。如果样本量不够,有时会采用样本扩增方法,通过对原始样本图像的处理生成新图像,不过识别效果往往不会有质的改变。“如果不输入医生勾画好的医学影像,人工智能怎么能学会识别病灶呢?”因此,棋类游戏中不依靠人类知识的自学习技术,不可能直接移植到图像识别领域。当然,这种技术或许能给研发人员带来启发,让他们通过创新,减少样本的输入量。

Zero技术应用范围比较有限

复旦大学哲学学院教授、人工智能哲学专家徐英瑾也持类似观点。他指出,棋类游戏是一个比较特殊的领域:游戏规则和输赢判断都非常明确,可以被高度形式化。因此,“阿尔法狗—零”能完全不需要人类棋谱数据,仅靠“左右互搏”产生的数据进行自学习,并成长为顶尖棋手。但大多数领域并不像下棋那样。如绘画,它是没有“输赢”之分的,评判绘画作品优劣的标准也很模糊,所以就不能仅靠输入一套游戏规则(如“越像实物的画越好”)来让人工智能成为大画家。又如军事,这似乎是个可以用“输赢”来明确评判的领域,但其实,军事上的输赢常常很难界定。两方交战中,一场战役的胜利很多时候并不意味着一方就此胜出,因为战争的“大局”没有明确边界,比棋类游戏的“大局”复杂得多。

由此可见,“阿尔法狗—零”技术的应用范围是比较有限的。当然也要看到,它在棋类游戏领域取得了较大的技术进步。徐英瑾介绍,此前的阿尔法狗有两张神经网络——价值神经网和策略神经网,需要48个TPU(神经网络训练所需的芯片);而“阿尔法狗—零”将两张神经网络合并了,只需4个TPU,使能耗大幅降低。

阿尔法狗再进化:自学3天,就100:0碾压李世石版旧狗

一年多前,alphago便是2016年1月28日当期的封面文章,Deepmind公司发表重磅论文,介绍了这个击败欧洲围棋冠军樊麾的人工智能程序。

今年5月,以3:0的比分赢下中国棋手柯洁后,alphago宣布退役,但DeepMind公司并没有停下研究的脚步。伦敦当地时间10月18日,DeepMind团队公布了最强版alphago,代号AlphaGoZero。它的独门秘籍,是“自学成才”。而且,是从一张白纸开始,零基础学习,在短短3天内,成为顶级高手。

团队称,AlphaGoZero的水平已经超过之前所有版本的alphago。在对阵曾赢下韩国棋手李世石那版AlphaGo时,AlphaGoZero取得了100:0的压倒性战绩。DeepMind团队将关于AlphaGoZero的相关研究以论文的形式,刊发在了10月18日的《自然》杂志上。

“alphago在两年内达到的成绩令人震惊。现在,最强阿尔法狗AlphaGoZero,提升了很多。Zero提高了计算效率,并且没有使用到任何人类围棋数据,”alphago之父、DeepMind联合创始人兼CEO戴密斯·哈萨比斯(DemisHassabis)说,“最终,我们想要利用它的算法突破,去帮助解决各种紧迫的现实世界问题,如蛋白质折叠或设计新材料。如果我们通过alphago,可以在这些问题上取得进展,那么它就有潜力推动人们理解生命,并以积极的方式影响我们的生活。”

不再受人类知识限制,只用4个TPU

AlphaGo此前的版本,结合了数百万人类围棋专家的棋谱,以及强化学习的监督学习进行了自我训练。

在战胜人类围棋职业高手之前,它经过了好几个月的训练,依靠的是多台机器和48个TPU(谷歌专为加速深层神经网络运算能力而研发的芯片)。

AlphaGoZero的能力则在这个基础上有了质的提升。最大的区别是,它不再需要人类数据。也就是说,它一开始就没有接触过人类棋谱。研发团队只是让它自由随意地在棋盘上下棋,然后进行自我博弈。值得一提的是,AlphaGoZero还非常“低碳”,只用到了一台机器和4个TPU,极大地节省了资源。

经过几天的训练,AlphaGoZero完成了近5百万盘的自我博弈后,已经可以超越人类,并击败了此前所有版本的alphago。DeepMind团队在官方博客上称,Zero用更新后的神经网络和搜索算法重组,随着训练地加深,系统的表现一点一点地在进步。自我博弈的成绩也越来越好,同时,神经网络也变得更准确。

“这些技术细节强于此前版本的原因是,我们不再受到人类知识的限制,它可以向围棋领域里最高的选手——AlphaGo自身学习。”AlphaGo团队负责人大卫·席尔瓦(DaveSliver)说。

据大卫·席尔瓦介绍,AlphaGoZero使用新的强化学习方法,让自己变成了老师。系统一开始甚至并不知道什么是围棋,只是从单一神经网络开始,通过神经网络强大的搜索算法,进行了自我对弈。

随着自我博弈的增加,神经网络逐渐调整,提升预测下一步的能力,最终赢得比赛。更为厉害的是,随着训练的深入,DeepMind团队发现,AlphaGoZero还独立发现了游戏规则,并走出了新策略,为围棋这项古老游戏带来了新的见解。

自学3天,就打败了旧版AlphaGo

经过短短3天的自我训练,AlphaGoZero就强势打败了此前战胜李世石的旧版AlphaGo,战绩是100:0的。经过40天的自我训练,AlphaGoZero又打败了AlphaGoMaster版本。“Master”曾击败过世界顶尖的围棋选手,甚至包括世界排名第一的柯洁。

对于希望利用人工智能推动人类社会进步为使命的DeepMind来说,围棋并不是AlphaGo的终极奥义,他们的目标始终是要利用AlphaGo打造通用的、探索宇宙的终极工具。AlphaGoZero的提升,让DeepMind看到了利用人工智能技术改变人类命运的突破。他们目前正积极与英国医疗机构和电力能源部门合作,提高看病效率和能源效率。

人工智能阿尔法狗是把双刃剑

CSER执行总监SeánÓhÉigeartaigh博士指出,人工智能AlphaGo将改变一切;“对人工智能的恶意使用”这份报告可以说是对今后5 – 10年的展望。

那么,在可以预见的将来,落入邪恶之手的AI可能带来怎样的灾难呢“邪恶AI”归纳了一部分?

比如,谷歌开发的AI“阿尔法狗”(AlphaGo),就是战胜国际围棋大师李世石(Lee Se-dol)的那个,在黑客手里就可以被用来归纳数据规律,搜索编码中易于攻破的薄弱环节;歹毒之人或有邪恶目的人可以买无人驾驶飞行器,用人脸识别软件训练它,使它能够自行搜索,攻击具体目标;可以让机器人自动化操作,制作和发布假视频来操纵舆论以达到某种政治目的;黑客可以用语音合成技术来假冒袭击目标,骗取关键信息。

AlphaGo Zero的相关评价

普遍认为,AlphaGo Zero是一次巨大的进步,即便是和它的开山鼻祖AlphaGo作比较时。艾伦人工智能研究院的奥伦·伊奇奥尼表示,AlphaGo Zero是“非常令人印象深刻的技术”成果“,”不管是在他们实现目标的能力上,还是他们花40天时间用四个TPU训练这套系统的能力“。”卫报“称AlphaGo Zero是”人工智能的大突破“ ,援引谢菲尔德大学的伊莱尼·瓦希莱基(Eleni Vasilaki)和卡内基梅隆大学的汤姆·米切尔(Tom Mitchell),两人分别说它是令人印象深刻的成就和“突然的工程成就“。悉尼大学的马克·佩斯说AlphaGo Zero是”巨大的技术进展“,带领我们进入”未至之地“。

然而,纽约大学心理学家盖瑞·马库斯对我们目前所知的则表示谨慎,AlphaGo或许包括“程序员如何建造一台解决围棋等问题的机器的隐晦知识”,在确保它的基础结构比玩围棋时更有效率之前,它需要在其他的领域受检测。相反,DeepMind“自信这种方法可以归纳至更多的领域中” 。

韩国职业围棋选手李世石回应称:“之前的阿尔法狗(AlphaGo)并不完美,我认为这就是为什么要把AlphaGo零造出来”。至于AlphaGo的发展潜力,李世石表示他必须要静观其变,但同时表示它会影响年轻的棋手。韩国国家围棋队教练睦镇硕表示,围棋界已经模仿到之前AlphaGo各个版本的下棋风格,从中创造新的思路,他希望AlphaGo零能带来新的思路。睦镇硕补充道,棋界的大趋势如今被AlphaGo的下棋风格影响。“最初,我们很难理解,我差不多认为我在跟外星人打比赛。然而,有过这么次的体会,我已经适应它了。 “他说。”我们现在错过了辩论AlphaGo与人类之间的能力差距的点。现在讲的是计算机间的差距。“据称,他已经开始和国家队棋手分析AlphaGo Zero的比赛风格:”虽然只看了几场比赛,但我们的印象是,AlphaGo Zero和他的前者相比,下棋更像人类[。“中国职棋手柯洁在他的微博上表示:“一个纯净,纯粹自我学习的AlphaGo是最强的……对于AlphaGo的自我进步来讲……人类太多余了”。

阿尔法狗deepmind名义

2014年起,阿尔法狗(AlphaGo)以英国棋友deepmind的名义开始在弈城围棋网上对弈.deepmind在2014年4月到2015年9月长达1年半的时间里,维持在7D到图8D之间,总共下了300多盘棋。2015年9月16日首次升上9D,之后在AlphaGo与樊麾对弈前后的三个月内未进行网络对弈。2015年12月到2016年2月,deepmind一共下了136盘,基本在9D水平。其中和职业棋手的多次对局互有胜负。

黄士杰在AlphaGo与李世石九段比赛前曾否认deepmind是AlphaGo的测试账号,但是在AlphaGo与李世石比赛之后,DeepMind创始人哈萨比斯承认AlphaGo曾经使用deepmind账号进行过测试。

2016年12月16日,在AlphaGo以万事达身份登录弈城围棋网之前,黄士杰要求删除deepmind账号。现在deepmind的战绩和棋谱已经无法查阅。

中国乌镇围棋峰会

2016年6月4日,在第37届世界业余围棋锦标赛新闻发布会上,国际围棋联盟事务总长杨俊安透露今年内阿尔法狗(AlphaGo)或将挑战中国职业棋士柯洁九段。不过DeepMind创办人杰米斯·哈萨比斯表示目前还没有确定AlphaGo的下一步计划,一旦有明确的安排,会有官方声明。

2016年12月8日,第21届三星车险杯世界围棋大师赛决赛过后,柯洁九段表示:「目前棋士之间的比赛众多,我放弃了与DeepZenGo的对局我觉得,我现在的状态还不能打败『阿尔法狗』(AlphaGo),今后需要更加努力。」

2017年4月10日,中国围棋协会,谷歌和浙江省体育局联合在中国棋院召开新闻发布会,宣布以柯洁为首的中国棋士将和AlphaGo在5月23至27日的中国乌镇围棋峰会上对弈。此次对弈分为三场比赛,首先在5月23,25和27日这三天,柯洁将与AlphaGo下三番棋,用时为每方3小时,5次1分钟读秒。

谷歌DeepMind为本次柯洁与AlphaGo的三局比赛提供了150万美元的胜者奖金,同时柯洁有30万美元的出场费。此外在5月26日,时越,芈昱廷,唐韦星,陈耀烨和周睿羊5人将进行团队赛,他们将联合与AlphaGo对弈,用时为每方2小时30分钟,3次1分钟读秒。

同日,古力,连笑还将和AlphaGo合作进行人机配对赛,比赛将以棋士与AlphaGo合作的形式进行,用时为每方1小时,1次1分钟读秒最终,AlphaGo以3:0战胜柯洁,并被中国围棋协会授予职业围棋九段称号,不过聂卫平九段称它水平「至少20段」在结束与柯洁的比赛后,Deepmind宣布AlphaGo将「退役」,不再参加任何围棋比赛,但将公开AlphaGo自己与自己互弈的棋谱;而在未来Deepmind将会把AlphaGo的技术运用到医疗等更广泛的领域。

AlphaGo模拟是什么

模拟就是阿尔法狗(AlphaGo)自己和自己下棋,相当于棋手在脑袋中的推演,就是棋手说的“计算”。

阿尔法狗AlphaGo面对当前局面,会用某种(下面会讲)策略,自己和自己下其中有两种策略:往后下几步(提前终止,因为阿尔法狗AlphaGo有一定判断形势的能力);或者一直下到终局(终局形势判断相对简单,对于棋手简单,对于机器还有一定难度,但是这个问题已经基本解决)。对于棋手来说就是推演棋局。

AlphaGo会模拟多次,“不止一次”。越来越多的模拟会使AlphaGo的推演“越来越深”(一开始就1步,后来可能是几十步),对当前局面的判断“越来越准”(因为她知道了后面局面变化的结果,她会追溯到前面的局面,更新对前面局面的判断),使后面的模拟‘越来越强’(更接近于正解,她后面模拟出来的着法会越来越强)。怎么做到的?看她怎么模拟的。

注意,这里的模拟是下棋(线上)时的模拟,后面还会有个学习时的模拟,不要混淆了。

AlphaGo怎么模拟的?

每次模拟中,AlphaGo自己和自己下。每步中由一个函数决定该下哪一步。函数中包括了以下几个方面:这个局面大概该怎么下(选点:policy net),下这步会导致什么样的局面,我赢得概率是多少(形势判断:value net和rollout小模拟),鼓励探索没模拟过的招法。这些英文名词后面会有解释。

模拟完一次后,阿尔法狗AlphaGo会记住模拟到棋局,比如几步以后的棋局。并且计算这时政策的价值。因为这时已经更接近终局了,这时的值会更加准确(相对于前面的模拟或局面).阿尔法狗AlphaGo还会用这些更准的值更新这个函数,函数值就越来越准了,所以模拟的每一步越来越接近正解(最优的下法),整个模拟越来越接近黑白双方的最优下法(主变化,Principle variation),就像围棋书上的正解图一样。到此为止,你已经大概了解AlphaGo她怎么工作的了,下面只是一些细节和数学了。

AlphaGo是如何学习的?

阿尔法狗的学习依赖于深度学习Deep Learning and增强学习强化学习,合起来就是Deep Reinforcement Learning。这实际上当前人工智能界最前沿的研究方向。

关于阿尔法狗深度学习和增强学习,本文不做详细的介绍。阿尔法狗深度神经网络是由巨量的参数形成的一个多层的神经网络,输入某一种类型的数据,输出某一种特定的结果,根据输出的误差,计算并更新神经网络的参数,从而减少误差,从而使得利用神经网络,特定的输入可以得到特定想要的结果。

以深度模拟“脑”为例。这个实际上是一个12层的神经网络。输入主要是整个棋盘的19 * 19的信息(比如黑棋的信息,白棋的信息,空着的信息,还有其他一些和围棋规则有关的信息一共48种)。输出要求是下一步的落子。那么Google Deepmind拥有3000万个落子的数据,这就是训练集,根据输出的误差就可以进行神​​经网络的训练。结束达到57%的正确率。也就是说输入一个棋盘的棋局状态,输出的落子有一半以上选择了和人类高手一样的落子方式。从某种意义上讲,就是这个神经网络领悟了棋局,从而能够得到和人类高手一样的落子方法。

换另一个角度看会觉得阿尔法狗AlphaGo很可怕,因为这个神经网络本来是用在计算机视觉上的。神经网络的输入是棋盘,就类似为阿尔法狗AlphaGo是看着棋盘学习的。

接下来的自学成长“脑”采用阿尔法狗深度算法增强学习(deep reinforcement learning)来更新深度神经网络的参数。通过反复和过去的“自己”下棋来获得数据,通过输赢来判断好坏,根据好坏结果计算策略梯度,从而更新参数。通过反复的自学,我们看到自学成长“脑”可以80%胜率战胜深度模仿“脑”,说明了这种学习的成功,进一步说明自学成长“脑”自己产生了新的下棋方法,形成了自己的一套更强的下棋风格。

AlphaGo是如何下棋的?

在分析AlphaGo是如何下棋之前,我们先来看看一下人类棋手会怎么下棋:

第1步:分析判断全局的形势

第二步:分析判断局部的棋局找到几个可能的落子点

第3步:预测接下来几步的棋局变化,判断并选择最佳的落子点。

那么,阿尔法狗AlphaGo在拥有强大的神经网络”大脑“的基础上采用蒙特卡洛树搜索来获取最佳的落子点,本质上和人类的做法是接近的。

首先是采用蒙特卡洛树搜索的基本思想,其实很简单:

多次模拟未来的棋局,然后选择在模拟中选择次数最多的走法

阿尔法狗AlphaGo具体的下棋基本思想如下(忽略掉一些技术细节比如拓展叶节点):

第1步:基于深度模仿“脑”来预测未来的下一步走法,直到L步。

第二步:结合两种方式来对未来到L的走势进行评估,一个是使用全局分析“脑”进行评估,判断赢面,一个是使用快速感知“脑”做进一步的预测直到比赛结束得到模拟的结果。综合两者对预测到未来大号步走法进行评估。

第3步:评估完,将评估结果作为当前棋局下的下一步走法的估值。即给一开始给出的下一步走法根据未来的走向进行评估。

第四步:结合下一步走法的估值和深度模仿脑进行再一次的模拟,如果出现同样的走法,则对走法的估值取平均(蒙特卡洛的思想在这里)

反复循环上面的步骤到Ñ次。然后选择选择次数最多的走法作为下一步。

说的有点复杂,简单的讲就是综合全局和具体走法的计算分析,对下一步棋进行模拟,找到最佳的下一步。对步子的选择,既要依赖于全局分析“脑”的判断,也需要深度模仿“脑”的判断。

分析到这里,大家就可以理解为什么在阿尔法狗AlphaGo与范辉的比赛中,有一些阿尔法狗AlphaGo的落子并不仅仅考虑局部的战术,也考虑了整体的战略。

知道了阿尔法狗的具体下棋方法之后,我们会明白让阿尔法狗AlphaGo棋力如此之强的还是在于AlphaGo的几个深度神经网络上。