除了AlphaGo以4∶1战胜了李世石,近年来,类似的例子还有不少。例如,IBM公司的Watson程序在问答比赛中战胜了人类冠军、计算机会写新闻稿和赋诗、自动驾驶、所谓用意念控制无人机等。由此似乎可以得出结论,人工智能的时代真的开始了,世界将面临被机器接管的风险。 我们在接受这些突破之前有必要探究一下隐藏在背后的技术实质。例如,Watson是基于文本匹配的检索,没有多少推理的成分;赋诗程序是效仿标注格式的充填,需要人工筛选结果;自动驾驶所依赖的附加设备价值超过车辆本身好几倍,且对环境敏感;所谓意念只不过是分离出来的脑电信号,对它的分类结果在可靠性、稳定性和可重复性上都很差。 AlphaGo下棋程序在人工智能领域属于计算机博弈这一研究分支,那么,它究竟难不难实现呢?双人博弈下棋游戏开展得非常早,属于人工智能少数几个鼻祖级的研究对象之一。例如,上海科技馆有一个下五子棋的机器;1997年IBM公司开发出了国际象棋程序;2008年的西洋跳棋程序更是达到了人不犯错就只能与它下平手的水平。可见,人工智能学者在这一领域已经深耕了很多年。 所有这些双人博弈游戏都有三个共同特点:第一,游戏规则非常明确;第二,棋局布局很清晰且很规整;第三,棋盘空间很有限。这些看似不重要的特点对计算机程序、对人工智能来说却是极端重要的利好。因为正是这些规则性、规范性和有限性,使得看似复杂的下棋问题在计算机上变得非常可行,如此明确的计算对象恰是计算机编程能够如鱼得水的理想环境。所以,计算机下棋不但不是挑战,反而远比自然语言理解、场景理解、不确定性推理等任务要容易研究得多,否则它就不会在人工智能诞生的一开始(20世纪50年代)就成为我们的研究对象之一。 在技术实现上,人工智能下棋程序通常使用一种被称之为“状态空间搜索”的方法,其核心思想是:第一,把棋局的演化过程看成一个个状态,用某种数学形式进行记录;第二,由下棋法则规定的走步方法可以把这些状态串联起来,形成一张非常庞大的状态演化网络;第三,用搜索的办法在网络中找出对自己有利的走步策略。这种方法由于形式化程度高,因此非常适合在计算机上编程实现。当然,这也带来了存储空间和搜索效率的问题。实际上,我们往往会利用一些有价值的信息来引导搜索的方向,如我们“歧路寻羊”时会利用羊留在路上的蹄印或留在草上的牙印来筛选跟踪路径。这次AlphaGo下围棋同样会面临这样的问题。它利用机器学习技术,从大量现成的对弈中学到了两样至关重要的东西,一是如何由当前的棋局映射出若干应子对策,二是如何对应子后的布局进行利己性打分。前者使它能够快速找到应对走步,后者使它能够快速对不同走步的好坏进行判断。这样就避免了它在庞大到超乎想象的围棋状态空间(理论上总共有3361个状态)中进行穷举搜索,只需进行小范围的有限搜索即可,其中所谓机器学习过程就是从大量以往的对弈棋谱中建立当前布局与下一步走步之间的对应关系。AlphaGo所基于的搜索技术和机器学习技术其实都是现成的,但它在对棋局模式的刻画方式和如何对棋局好坏进行评价方面还是有创新性的。尤其是它对围棋布局的数学化表征方式,这直接影响到机器学习的效率和能否最终找出布局与走步之间的关联关系。 (责任编辑:admin) |