既然李在石 alphago 围棋难以战胜,下围棋还有意义吗

AlphaGO凭什么战胜李世石
  AlphaGO和李世石的第一局对局棋谱。(李世石执黑)
  新闻背景
  昨天,谷歌旗下英国公司DeepMind 开发的AlphaGO 计算机程序,在与世界顶尖天才棋手李世石的五番棋对决中,以4:1取得完胜。此时此刻,想必每一个关注这个事件的人心里都有一个疑问,AlphaGO 到底是何方神圣?竟强到让围棋一代天骄李世石九段败下阵来?
  ■ 任你千般招数,我只亢龙有悔
  现在很多正在研究AlphaGO与李世石这几盘对局的棋友,热衷于按照人类的思考方式为AlphaGO的每一步落子赋予一个战略意图,然后讨论合理与否。但事实上,AlphaGO和人类下棋思路很不一样。人类下棋时的思路是多变的,根据盘面情形的不同,人类会把最基本的赢棋问题转化成不同类型的子目标,时而考虑如何杀棋,如何做活,时而又考虑如何借助打击对手扩张地盘,如何制造劫争。有时我们还会猜测对手在盘算什么,自己又如何“将计就计”来应对等等。一旦确立了这些子目标,人类棋手便集中精力考虑具体战术走法来完成这个子目标,而不是赢棋这个最终目标。
  但是AlphaGO与人类思维最大的不同,就是没有这种具有适应性的战略思考成分。事实上,今天AlphaGO 的“思考模式”,和20年前战胜国际象棋世界冠军卡斯帕罗夫的“深蓝”是一样的。对于一个给定的当前盘面A,AlphaGO和深蓝这样的计算机,会对盘面A之后可能出现的大量局面变化所导致的不同结果分别进行预判,然后综合所有这些可能性的胜率分析结果,对最初给定的盘面A进行一次评估。
  “在当前局面下,我走在x点的话最终胜算几何”,计算机就是通过不停地重复问自己这个单一问题来完成对弈的,大有点“任你千般招数,我只一招亢龙有悔”的味道。
  ■ 需要融入人类围棋知识经验
  既然AlphaGO和20年前的深蓝思路一样,为什么它能拥有以前计算机程序不曾达到的棋力呢?
  一种观点认为,“围棋复杂度远比国际象棋高,因此AlphaGO的成功关键是避免了像深蓝那样穷举所有可能性”。这其实是对搜索型程序的误解,所谓“蛮力搜索”从来都不是“穷举所有可能”。事实上,无论是围棋还是国际象棋,其变化总数都远远超过宇宙中所有原子数量的总和,根本不可能有物理系统有这样的“穷举能力”。从深蓝到AlphaGO,这些搜索型程序其实都只是考虑了盘面所有可能性中极小的一部分,和“穷尽所有变化”相比规模小到不值一提。
  更具体说,深蓝时代的国际象棋程序,得益于拥有一个强大的评估函数。当时人类国际象棋大师所拥有的知识已经足够精确,使得对盘面胜率的评估可以被直接手工编写。围棋这边,AlphaGO之前的一流围棋程序,大多借助围棋专业知识来手工编写搜索策略。这样的程序目前已经达到业余五段水平,但这些“传统围棋程序”中用到的围棋知识仍然只是“入门级”的。一般而言,围棋高手的知识并不像国际象棋中那样精确,从而使得手工将围棋知识经验写入搜索算法的编程方式面临很大挑战,这一直是阻碍传统围棋程序棋力进一步提高的主要瓶颈。这次横空出世的AlphaGO,主要就是突破了这个“知识融入”瓶颈。
  ■ 可以自我训练和改进的程序
  AlphaGO的“围棋知识升级”是由同一项技术带来的——人工神经网络。这项技术的主要优点是不需要手工编写,而是通过程序自我改进的方式,来表达比较“模糊”的领域知识和经验。
  由一条条指令组成的传统“过程式”程序,固然对我们人类而言直观明了,但当程序输出有偏差时通常不能自我修正,而是需要人根据具体情况对程序进行分析之后,才能找到应该改动哪里,如何改动。但 “神经网络程序”在面对输出误差时,却有一套既简单又通用的自动修正方法。这样,每完成一次计算,神经网络程序就可以通过比对输出误差来对自己进行一次微调,当观察了大量误差数据之后,这些微调累加起来就有可能趋近一个误差很小的神经网络程序。
  具体到AlphaGO,开发团队建立一个包含上千万个实战盘面的数据集,每个盘面对应一个实战中的落子位置和最终胜负结果,然后根据这个数据集来“训练”人工神经网络预测落子位置和盘面胜率。面对数据集中的一个盘面,最开始的神经网络可能只是随机无意义地做出的判断,但通过和数据集中的“正确答案”之间的误差进行比对,神经网络可以逐渐修正自己的判断输出,使得这样观察了上千万个误差数据之后的神经网络,可以做出大概正确的落子预测和胜率预测。
  事实结果证明,这样通过海量数据迭代训练出来的神经网络模块,可以比传统的手工编写知识的方式表达更多的围棋领域知识和经验,因此配备了神经网络的蒙特卡洛搜索程序(也就是AlphaGO),棋力才呈现出飞跃式提升。
  ■ 训练AlphaGO更像“驯动物”
  但要注意到,这种人工神经网络在学习方式上和我们人类是截然不同的。人类从了解围棋规则,到理解前人总结的一般概念和要领 (如棋理、手筋、定式),到练习局部攻杀 (俗称做死活题),再到通过实战把所学的各种“局部”知识融成一体,再到对已有对局复盘打谱,找出对棋局结果影响大的“关键手”,分析研究背后反映出的因果关系和逻辑规律,其间还要和其他棋手讨论交换心得,甚至可能在某些时候从围棋之外的生活经验得到启发借鉴,然后又以非常微妙的方式运用于围棋之中。所有以上步骤又再经过反复循环之后,一个人类围棋高手才逐渐诞生。
  与之不同的是,我们看到上面描述的训练人工神经网络的方式,和马戏团训练动物更类似,相当于就是做对了给个吃的,做错了打一鞭子,然后大量重复。拿AlphaGO来说,它“学棋”没人类那么多手段,相当于就是自己坐在那里默默看高手对局,数量多到世界上最勤奋的人几十辈子也看不完,其间每一局每一步都通过比对自己与高手的差异,一点点校正自己的行为,以图尽量模仿。这个校正过程本质上可以看作是在同样浩瀚无穷的原始“参数空间”中的一个“蛮力搜索”过程。
  人类和AlphaGO学习方式的不同,一个最大的后果就是AlphaGO这样的神经网络学习,必须要极其海量的数据堆砌才有可能体现出效果。在AlphaGO的训练过程中就发生了一个小插曲:一开始,他们使用来自16万盘棋中的数据来训练AlphaGO,但效果却不佳。为此开发团队不得不通过AlphaGO自弈的方式,重新产生了3000万盘棋做训练数据。这带给我们一个重要的信息就是,AlphaGO使用的神经网络在训练时对数据量要求非常惊人,即使是十万量级的数据规模仍然不能满足要求,而是一定要通过其他手段达到百万甚至千万的量级。
  延伸阅读
  AlphaGO战胜李世石
  并不代表人工智能已接近人类
  AlphaGO战胜李世石这一事件,确实给很多人观念上的巨大冲击。有些人认为,围棋是检验人类智能的标准,围棋下得好的人大都思维敏捷聪明绝顶,所以计算机在围棋棋盘上战胜人类,预示着人工智能超越人类智能脚步的临近。
  但笔者认为,这种理解恐怕带有一定“恐慌情绪”——速算能力同样是一个人智力超群的标志,但最聪明的人也算不过兜里的智能手机,可没见谁担心自己的手机比自己智商高。况且对于和围棋情况类似的国际象棋,机器早已超越人类多年(人类国际象棋棋手下棋时同样需要综合棋感、推理、计算、定式知识等思考手段)。
  这些事实都一再证明,通常用于检验人类智能的标准,未必是检验“智能”程度的一般原则,尤其不适用于检验机器智能。从专业角度看,通用性才是智能的一般标准,一个物理系统的“智能”体现为它在各种不同环境中都能更好完成既定目标的“全才”能力。
  那么机器要怎样才能“证明自己的智商”呢?既然客观事实已经证明用于人类的智能标准对机器不再有效,我们就应该放弃固有的思维惯性,回归到智能的原始定义去检验机器智能。AlphaGO战胜了人类高手,这说明AlphaGO围棋下的好,但并不能立即说明AlphaGO智力超群。围棋上你下不过AlphaGO,0:1。可是随便再找一万个任务来你都比AlphaGO强,总比分10000:1。
  事实上,现在学术界已经有人开始挑战“通用人工智能”,可以说这也是人工智能领域的“初心所在”。比如这次做出AlphaGO的DeepMind公司也致力于此。他们做了一个程序可以同时在几百种视频游戏中都超出人类平均水平,是可喜的进展。但这也不过是几百比零而已,我们一个人可以解决的问题何止万千,按“通用性”标准来看,此时此刻的机器智能程度远远不及人类万分之一。
  综上所述,现在像“动物”一样学习,“一根筋”式思考的AlphaGO程序,之所以可以战胜李世石这样的顶级棋手,不是因为它此时已经像人类一样思考和学习,更不是因为它已经达到了“超人”的智力水平。当然,围棋被称为人工智能研究的果蝇,AlphaGO带来的事实结果和其中所用技术,肯定会为人工智能学术界带来很多启发,毫无疑问是伟大的里程碑。但这距离公众担心的机器智能威胁人类智能的局面,还尚且遥远。
  (本文作者在微软亚洲研究院任副研究员期间曾从事围棋AI相关研究,对于此次AlphaGO事件的进一步深入介绍,作者在3月底即将出版的《NEWTON科学世界》杂志4月号有专文刊载。)
[责任编辑:AlphaGo是如何下棋的,它真的能“理解”围棋吗? AlphaGo是如何下棋的,它真的能“理解”围棋吗? 科技夜谭百家号求扫盲。回答关注(9)|查看更多问答10个回答机器之心05-赞踩2016年3月大战李世乭的AlphaGo版本被认为还不是很完善,当时AlphaGo主要是依靠大量学习人类棋手的棋谱来提高棋艺。随后AlphaGo进入到完全的自我深度学习阶段,也就是完全摒弃人类棋手的思维方式,按照自己(左右互搏)的方式研究围棋。2016年年底,AlphaGo化名Master,在网络上与人类顶尖棋手下了60盘测试棋,取得60局全胜的骄人战绩。通过那次测试,谷歌旗下的DeepMind又发现了AlphaGo不少需要完善的地方,2017年5月中下旬即将与柯洁进行正式人机大战的将是AlphaGo2.0版本。日,Nature杂志以封面论文的形式介绍了DeepMind团队开发的人工智能程序AlphaGo,这也就是后来击败韩国棋手李世乭的AlphaGo版本。AlphaGo结合了监督学习与强化学习的优势。通过训练形成一个策略网络,将棋盘上的局势作为输入信息,并对有所可行的落子位置形成一个概率分布。然后,训练一个价值网络对自我对弈进行预测,以-1(对手的绝对胜利)到1(AlphaGo的绝对胜利)的标准,预测所有可行落子位置的结果。AlphaGo将这两种网络整合进基于概率的蒙特卡罗树搜索(MCTS)中,实现了它真正的优势。在获取棋局信息后,AlphaGo会根据策略网络(policynetwork)探索哪个位置同时具备高潜在价值和高可能性,进而决定最佳落子位置。在分配的搜索时间结束时,模拟过程中被系统最繁琐考察的位置将成为AlphaGo的最终选择。在经过先期的全盘探索和过程中对最佳落子的不断揣摩后,AlphaGo的探索算法就能在其计算能力之上加入近似人类的直觉判断。但是新版的AlphaGo产生大量自我对弈棋局,为下一代版本提供了训练数据,此过程循环往复。AlphaGo的强大之处不在于一招一式,而在于对每一局比赛展现出的全新视角。虽然围棋风格略显抽象,但AlphaGo的策略展示了灵活与开放的精神:没有先入为主的训练让它找到了最有效的下棋方式。实用哲学让AlphaGo经常走出违反直觉——但却最为合理的举动。尽管围棋是一个有关圈地的游戏,但胜负手却在于对不同战区之间的取舍平衡,而AlphaGo擅长创造这种平衡。具体来说,AlphaGo擅长运用「影响力」——已有棋子对自己周围的影响为自己谋取优势。虽然AlphaGo的价值网络不能准确地计算出影响的数值,但它的价值网络能够一次性考虑棋盘上的所有棋子,以微妙和精确的方式做出判断。正是这样的能力让AlphaGo把自己在局部的优势转化为整个比赛的胜势。4评论柯南话乒乓乒乓球解说员体育问答专家05-赞踩过去围棋程序的思路是,让电脑计算出围棋的所有变化,这样肯定就能击败人类了。理论绝对没错,可事实上这一点根本做不到,因为据比较准确的估算,这个变化的总数极其庞大,庞大到比宇宙中所有的微粒总数还大,再快的计算机N多年都算不完。所以,很长一段时间内,电脑早就能完胜人类最顶尖的中国象棋和国际象棋棋手,可在围棋领域,电脑的水平却一直跟职业棋手相去甚远,以至于围棋被认为是人类对电脑最牢固的一道防线。然而,阿法狗的横空出世彻底颠覆了人类的认知。这就是思路改变出路的经典案例了。阿法狗的路子是,它根本不试图去穷尽围棋的所有变化,甚至它压根不去计算变化。它只是尽量收集职业高手的棋谱,然后用极其牛逼的算法挑选出每个局面下的最佳招法,如此而已。典型的知其然而不知其所以然。原理确实简单,但背后的算法却实在复杂和精妙。拜互联网所赐,甚至不用和职业高手对弈已经靠设计师输入棋谱,狗2通过程序就可以自动从网上抓取棋谱充实自己的数据库,然后在跟职业高手的对弈中利用前述的算法挑选最佳招法。如此这般,职业高手跟狗2下的越多,甚至职业高手之间的对局越多,狗2就会越强。所以,阿法狗可以完全不懂什么布局、中盘、和官子,也不必懂什么死活、手筋、恶手,更不用去判断厚势值多少目这些围棋中最奥秘的东西。就像令狐冲从画中看出剑法一样,它眼中的围棋世界跟职业棋手眼中的围棋局面形似而神不似,是完全不一样的。它并不思考,也不会思考,狗2会思考,上帝狂发笑~它只是模仿和选择,当然,它的这种能力太过于强大。因此,阿法狗是无所谓棋风,无所谓招法的,它玩的就是传说中武功的最高境界:无招胜有招。最后颠覆下大家的认知。现在所谓的人工智能,包括狗2在内,严格说起来根本不算人工智能。或者说只是人工智能很初级的阶段,再或者说是不同于人工智能的另一种能力-机器智能,反正不管怎么说,跟人类智能不是一回事。为什么这么说呢?大家想想看,什么是人类智能?最重要的是思考吧,可人类如何通过大脑思考,现代科学还远远没有搞明白,大脑的结构、神经元的机理和神经网络的运行等,这些最根本的东西人类了解得非常有限。换句话说,人类智能是怎么回事我们自己都不清楚,人类编制的程序怎么可能是人工智能呢?何况从阿法狗的机理我们不难看出,它的强大并不是通过人类大脑模式的思考,本质上还是机器式的储存和模仿,只不过这种能力太过于强悍,以至于似乎在某些方面比人类智力厉害得多,但毕竟不是一回事。聪明无比的笨蛋,也许是这类所谓“人工智能”最贴切的称呼。就像一个从来没学过围棋的小孩,突然吃了一粒神丹妙药,一下子变成了绝顶高手,而且还不断地吃这种神丹,让自己越来越强。这跟人类利用智力学习围棋的过程是完全不同的。2评论徐老师开箱数码测评师05-赞踩北京时间3月9日中午12:00,在韩国首尔上演了电脑与人脑的大战,由GoogleAlphaGo围棋程序对阵韩国围棋9段冠军李世石,经过不到4个小时的对弈,AlphaGo战胜李世石,取得了围棋比赛的第一局,举世震惊。作为人工智能挑战人脑的第二次进击,AlphaGo相对超算“深蓝”又有哪些不同呢?未来人工智能会不会全面取代人类呢?AlphaGo是由GoogleDeepMind(英国,2014年被Google4亿美元收购)开发的人工智能程序。DeepMind致力于开发人工智能程序,不同于早起的人工智能单纯依赖计算机强大的计算性能,AlphaGo程序开发了计算机学习和系统神经科学方法,通过KGS(KiseidoGoServer)与世界各地的围棋选手竞技过程中不断成长,在去年10月份的时候就已经战胜了欧洲围棋冠军樊麾,并于近日正式开始挑战世界冠军李世石,第一局已经告捷。◆AlphaGo如何下围棋?自从计算机在国际象棋上挑战人类成功之后,所有人的目光就聚焦在了围棋这项古老的东方棋类。然而对计算机来说,围棋似乎是个比国际象棋更“难”的东西。1985年企业家应昌期先生悬赏一百万美金寻找能够打败人类职业棋手的计算机,一直未果。进入21世纪之后,研究者们开始探索一套被称为“蒙特卡洛树搜索”的全新思路,以日本的ZEN(天顶围棋)和法国的CrazyStone为代表的一流围棋程序沿着“蒙特卡洛方法”的思路不断改进,而去年正式揭开面纱的AlphaGo更是将人工智能围棋博弈带向新的高度,继去年10月份攻克欧洲围棋冠军樊麾,昨日又在韩国首尔首战告捷战胜世界围棋冠军李世石。如果说对棋局盘面的静态评估好比人类棋手的“感觉”过程,那么动态评估就好比人类棋手的“推理”过程。在静态评估中机器得益于人类专家的很多帮助,而动态评估的部分是人工智能大显身手的地方了。“动态评估”试图对从当前盘面出发“有可能”出现的大量局面变化所导致的结果进行预判,并综合分析所有这些可能性,对当前盘面进行一次评估。这也是人类在动态环境中做决策时经常使用的策略,也就是希望通过“看得更远”来提前发觉潜在的危险或机会。代替AlphaGo落子的日本棋手正在和李世石对弈基于一套给定规则,任意给定的棋局盘面会有一个“合法走法”的集合,其中每个走法都会把棋局引向一个新盘面,而这个新盘面又会有自己的另一个合法走法集合,每个走法又对应一个新的盘面。如果假设每个盘面都有种合法走法,那么从当前盘面走一步之后一共有N种可能“到达”的盘面,两步之后有N^2种可能盘面,三步之后有N^3种可能……如此展开下去,从最初的给定盘面经过M步之后可能到达N^M种不同的盘面,它们就是在“未来N步内所有可能的局面变化”。国际象棋的人工智能遍历图围棋的人工智能遍历图从给定盘面开始的局势变化的复杂度是随考虑的步数呈指数级增长的,这意味着从原则上不存在准确计算盘面的最优结果的有效方法。不过这对于对局双方来说未必是个坏消息——虽然AlphaGo无法计算最优解,对手也同样无法计算。事实上一个游戏之所以成为游戏,恰恰就是因为对局双方都相信对手不具备完美决策的能力,而自己要做的只是比对手“错得更少一些”。另一方面对于AlphaGo来说,“不可能对局势变化的所有可能性进行有效计算”意味着想做得比对手更好需要从原理上解决两个关键问题:(1)决定一个“筛选策略”,从所有从当前盘面出发有可能导致的变化中选择一部分作为“我们实际考虑的那些局面变化”;(2)决定一个“汇总策略”,把所有实际考虑的变化的静态评估结果综合起来,对当前盘面的胜率完成评估。◆人工智能的核心--深度卷积神经网络深度卷积神经网络是人工智能的核心基础,诸如现在主流的人工智能的应用人脸识别、图像分类、天气预报等。19年前,超级计算机“深蓝”击败国际象棋冠军卡斯帕罗夫的新闻相信很多人耳熟能详,虽然当时的“深蓝”从狭义角度来看并算不上是人工智能,其强大之处就是使用了超级计算机作为运算支撑使用遍历方式最终打败人类,但是相对于国际象棋,围棋拥有361(19x19)个点复杂度远超国际象棋,如果使用遍历其运算量和数据存储量现阶段甚至很长一段时间超级计算机也无法满足这样的需求。所以AlphaGo转而使用了蒙特卡洛搜索树算法,是对一类随机算法的特性的概括。例如使用蒙特卡洛搜索树算法从100个苹果篮子中取出最大的苹果,每次闭眼拿1个,挑出最大的。于是随机拿1个,再随机拿1个跟它比,留下大的,再随机拿1个……每拿一次,留下的苹果都至少不比上次的小。拿的次数越多,挑出的苹果就越大,除非拿100次,否则无法肯定挑出了最大的。这个挑苹果的算法,蒙特卡罗算法是尽量找好的,但不保证是最好的。对于围棋而言,由于遍历数据的庞大,只能通过部分遍历的方式寻找最优下棋的方式,所以会出现获得真正的结果之前,无法知道目前得到的结果是不是真正的结果。◆lphaGo的两大法宝--价值网络和策略网络作为人工智能的核心,AlphaGo更是使用了两个大脑,也就是ValueNetworks(价值网络)和PolicyNetworks(策略网络)两个计算网络,使用ValueNetworks来评估大量的选点,而以PolicyNetworks来选择落子,并且开发了一种新式算法来结合蒙特卡洛树算法和以上两个神经网络。在GoogleDeepMind工作的黄世杰,2015年在ICLR发表了一篇关于“深度神经网络”的论文,指出从网上对战平台KGS可以获取人类围棋选手对弈的棋局,并且汇总这些棋局,得到了最初的3000万个样本,也就是棋谱,这奠定了AlphaGo的下棋基础,与人类学习下棋有着异曲同工之妙。这3000万个样本可以用{a,b}统计,其中a是一个19x19xn的二维棋局,输入到一个卷积神经网络分类,分类的目标就是落子向量A,通过不断的训练,尽可能让计算机得到的向量A接近人类高手的落子结果b,这样就形成了一个模拟人类下围棋的神经网络,然后得出一个下棋函数F_go(),当盘面走到任何一种情形的时候,都可以通过调用函数的形式从数据库获取最佳的落子位置。似乎这样的程序只要积累到足够多的棋谱数据库作为支撑,那么就可以打造出一个虚拟的顶级围棋高手,但由于围棋局面数据无限庞大,单纯的棋谱收集并不能支撑起成为一个顶级高手,而黄世杰也介绍,这样打造出来的虚拟围棋高手只能达到业余六段的水准,和专业级的选手还有很大的差距,更何况是专业9段的李世石。早先公布的世界围棋人工智能得分排名于是AlphaGo开始将蒙特卡洛树算法结合在一起,它不再机械的调用函数库,而是一种类似于人类进化的过程,黄世杰的老师Coulum让两个机器人在棋盘上随机下棋,那么下到最后,必然会有一个机器人会赢,那么将赢的那一方法记下来(M0,a0),并将分值提高一些:新分数=初始分+r。于是使用(M0,a0),例如(M0,a0)方法的分值为2,其它方法依然是1,理论上来说再次选择(M0,a0)方法的概率会更高一些,而要和(M0,a0)方法假象中的对手也同样适用了这样的方式更新了自己的分数,例如会以a1作为应对,就这样如法炮制,Coulum就这样不断的和那些不怎么是高手的虚拟对手下棋,这样那些不错的落子方案就会分数越来越高,等到Coulum在想象中完成了10万盘棋后,选择他推演过次数最多的那个方案落子,实际上这个时候Coulum才下了第一步棋。不过Coulum的程序仍然有局限性,因为初始的下棋方法太过简单,需要使用更高效地扔骰子,那如何更搞笑的扔骰子呢?于是黄世杰改进了蒙特卡洛树算法,一开始就不在使用(M0,a0)这种掷骰子的方法,而是先根据F_go()计算的结果来得到b可能的概率分布,以这个概率来挑选下一步的动作,每次棋局下完之后,新分数=调整后的初始分+通过模拟得到的赢棋概率。当然执行过程中会遇到某一步呗随机到很多次,这个时候就应该依据模拟得到的概率而不是F_go(),所以F_go()的初始分会被打个折扣:调整后的初始分=F_go()/(被随机到的次数+1)于是下棋过程中F_go()就可以快速定位到相对优秀的落子方案,又给了其它位置一定的概率,不过这样做了后,就出现了一个问题,F_go()的计算速率太慢,完全无法满足围棋比赛的需求,如果和真正的选手比赛时间根本就不够用。于是新的F_go_Fast()函数被推出,它把网络层数、输入特征都减少,耗时相比之前最初增加并不多,基本可以满足正常下棋的需求,只需要在开始的时候使用F_go()走一些步数,然后在后续执行F_go_Fast(),兼顾准确和效率。除了这些对战,AlphaGo还加入了人类无法实现的左右互搏,意思就是使用F_go(1)和F_go(1)对弈,得到了一定一定量的新棋谱,加入到训练集当中,训练处新的F_go(2),一次类推,这样就可以得到胜率更高的F_go(n)。不过左右互搏并没有带来提升,相反还不如F_go(),于是黄世杰最后使出了评价函数v(s)这一招,在训练v(s)的时候,开局还是使用F_go()走n步,这样可以生成更多的开局,不过黄世杰觉得开局还是不够丰富,于是在n+1步的时候再随机掷骰子,并记下这个状态,然后和F_go(n)对弈,知道比赛结束,获得结果r,通过这种方式获取足够多的样本,再通过神经网络,把最后一层的目标改成回归而非分类,就得出了v(s)函数,输出赢棋的概率。F_go()、v(s)以及蒙特卡洛树算法三者相互配合,使用F_go()作为初始分开局,每局选择分数最高的方案落子,下到n步之后,改用F_go_Fast()下完剩下的棋局,同时调用v(s),评估局面的获胜概率,就实现了布局和快速的双重效果,剩下的就是不断的学习过程了。◆人工智能会犯错误吗?人们总是说机器是不会犯错误的,在AlphaGo与李世石的对弈过程中,一些媒体或者专家经常会说到“AlphaGo不会犯错误”,并担忧李世石会败给AlphaGo,最终结局并不尽如意,最终李世石落败。自诩的人类恐怕要对于后面的四场比赛开始惶恐起来。实际在比赛的过程中AlphaGo有多次机会可以拿下棋局,却一直对弈到近4个小时候才分出胜负,期间AlphaGo由于并没有采取正确的措施,按照人类的理解认知,实际上人工智能已经犯下了错误。毕竟对于非公理性的算法,机器是无法精准获取最优结果的,AlphaGo采用的蒙特卡洛搜索树遍历对于围棋来说很难做到精准下棋,毕竟计算量摆在那儿,实际上对于围棋而言至少现阶段不可能使用完全的遍历方式获取最优结果。实际上所有的人工智能对于未知领域的尝试都是很难穷尽结果的,这也是为什么人工智能一直被人类语言很难完全取代人类的原因,人工智能在某些领域成功是科技进步的表现,但是对于人工智能未能涉足的领域,我们可以认为人工智能会犯错误而无法在这一领域应用,当人工智能超越人类的过程也是不断犯错误的过程,你觉得呢?◆人类被人工智能打败需要畏惧吗?最终回到AlphaGo是否可以战胜围棋世界冠军李世石问题上来,虽然从目前已经对局的情势来看,AlphaGo最终打败世界冠军李世石的概率很大,另外AlphaGo快速的成长速度是任何一个围棋世界冠军无法企及的,随着计算机性能的不断增强,蒙特卡洛搜索树遍历将进一步提高命中概率,这样在人脑提升缓慢的背景下,AlphaGo在围棋对弈上全面战胜人类只是早晚的事情,正如当时“深蓝”历经数年才艰难战胜人类,自此以后将人类甩在了身后。大量的计算机专家,配合大量的世界围棋高手,在算法上不断革新,再配合不断成长的超级计算能力,不断的从失败走向成功,最终打造出围棋人工智能。樊麾、李世石是败给人类智慧的结晶。赛后的李世石并不是太悲观,对接下来的对弈依然充满信心而棋手和围棋从业者们,出于可以理解的感情,总是希望并认为这一天不会来的那么快,但他们绝对不会拒绝甚至仇视这种进步。其实我看到的很多人,都一直期待并赞许着人工智能的进步,甚至很多职业高手还亲身参与和帮助着人工智能围棋项目的研究。我们努力打造着一个“新我”,一个能战胜自己的“新我”。其实并不是人工智能打败了人类,而是人类打败了人类。所以最终的成功,是我们人类自己的成功,而不应该对人工智能感到畏惧。本文仅代表作者观点,不代表百度立场。系作者授权百家号发表,未经许可不得转载。科技夜谭百家号最近更新:简介:热爱数字,热爱生活,关注科学技术的发展。作者最新文章相关文章

我要回帖

更多关于 围棋 alphago 的文章

 

随机推荐