荔枝时评:从五盘番战看阿法狗的特征和人工智能的未来

2016年03月15日 15:51:17 | 来源:荔枝网

字号变大| 字号变小

  文/秤砣

  (作者秤砣,IT从业人员,围棋业余爱好者,“荔枝新闻”特约评论员;本文系作者为“荔枝网”及旗下“荔枝新闻”手机客户端独家供稿,转载请注明出处。)

  今天下午,李世石和阿法狗的围棋战争终于以1:4落下帷幕。

  在五场比赛当中,我们看到AlphaGo明显区别于人类棋手的惊艳表现,例如借多次果断脱先展现出的全局分析能力和重势而轻地的布局思路,也看到它在应对罕见招法时候出现的失误和偏差。借此机会,围棋界和人工智能都从对方身上获得了相当多的可贵经验,这些经验的意义或许要远胜于最后的输赢。

  围棋与其他棋类游戏最直接的区别在于它的问题空间巨大,状态空间达到3^361次方,而合法的棋局数更是约为2*10^171,这意味着围棋的所有解法是根本不能穷尽。如果仍然采用暴力搜索算法,可能一个人一生也等不到电脑落下一子,所以计算机必须要舍弃宽度和深度中的一点。

  最早的办法是舍弃深度,这也是最传统的围棋软件的做法。假设我们的搜索深度为0,也就是评估当前盘面状况,那么计算机可以做的事情主要有两件,一是数子和点目,分析目前总体优劣,二是划分整个棋盘,分析每一块具体存活的可能性。如果搜索深度为1,那么就可以遍历棋盘上的所有点,分析评估出每步棋的收益,从而选择收益最大的一步,这对于计算机来说非常简单,但在应对“扑吃”等下法时会出现问题。

  另一种方法是舍弃宽度,在选择少数的几个点后再让电脑做选择。在AlphaGo之前,CrazyStone和Zenith等围棋AI就已经在这方面做得很不错了,他们用到了蒙特卡洛搜索树的算法。具体到围棋上,就是评估一步落子的优劣,需要从这个状态开始随机生成几个盘面来分析它能赢多少的加权期望,分析对手可能的很多种应手,然后将这种算法多来几层。在这种情况下,如何赋予不同棋局不同的权重,尽早让采样空间内的局部最优解接近全局最优解,就是重中之重,这需要向人的思维过程学习。

  当一个棋手看到一个盘面时,眼睛里可能立马只剩下屈指可数的几手棋供其选择,这是由于人的认知方法能够使用“直觉”和“常识”,迅速过滤掉绝大多数不需要的情况。如果机器也能完成类似的过滤,再结合它强大的计算能力,战胜人类就不是问题了。

  然而,恰恰这种“常识”和“直觉”的建立是非常难的,这也是AlphaGo和其他围棋AI最大的区别。包括CrazyStone和Zenith在内的诸多围棋AI都采用预知的专业知识和对已有棋局(尤其是职业高手)的模仿来进行筛选(注:现在Zenith也引入了深度卷积神经网络),而AlphaGo则引入深度学习来配合蒙特卡洛搜索树算法,并分别给出了两个模型,也就是媒体上反复提到的策略网络和价值网络。

  简单的说,策略网络就是一个概率分布,最初来源于机器摄入人类高手的棋谱后对每一种盘面特征下每一个点落子概率的分析(监督学习),之后则由AlphaGo之间的自我游戏(增强学习)来获取更多的的棋谱,建立类似直觉的系统来缩减宽度。价值网络则在AlphaGo进行增强学习后,对盘面可能的胜率做出评估,以有效缩减深度。在这次的比赛中,我们曾多次看到过这两者的完美配合,使得AlphaGo在更少依赖观念的情况下下出一些超出传统围棋理解的接近“绝对好棋”的招法,并在棋坛引发一片惊叹之声。

  当然,AlphaGo在对战中也暴露出其明显的弱点,例如不喜欢保留,有棋必走,这一点多次被专业棋手诟病为“没有味道”。我个人的理解,这是由于搜索深度的限定。有时候20步之内的最优解也许在保留到中盘甚至收官阶段才能有更高的收益,但电脑判定永远是固定深度之内收益最大的招法,并不会考虑这步最优解能否在20步之后取得更大的收益。目前来看,这是限制AI更进一步的主要瓶颈之一。

  此外,非常有必要将第四盘78手之后的一系列废棋拿出来分析一下。

  这一原因众说纷纭,目前没有官方解答。站在一个程序员直观的角度来看,可能调参出了较大的问题,这种问题在劣势局很容易体现。经过这几盘棋大家都意识到AlphaGo在优势时会下保守棋,他的目标期望主要是胜率的期望,而不是目数的期望。只要平均期望过了一条线,多赢一点少赢一点没有太大关系。

  这种风格在优势局面下会形成极强的压迫感,在第一局第二局都体现得很明显,一旦AlphaGo取得优势,对手就再无翻身机会,但在劣势局下面,这种方法会产生什么状况呢?我们打个比方,如果AlphaGo落后10目,此时有两手棋,一手可以100%扳回5目,另一种可以1%扳回10目,但是99%再损5目,第一种期望明显高于第二种,但在系统判定这种招法无论如何无法赢的时候他会选择第二种,期待职业棋手犯下1%的错误,毕竟就输赢而论,这0和1%的区别也是质变吧。

  (以上两个段落纯属自己猜测,希望google能尽快开源)

  在AlphaGo引发的人工智能讨论狂欢当中,很多人抱着相当悲观的态度,认为人工智能已经发展到不得不防,十分危险的地步。实际上恰恰相反,目前的人工智能还处于十分初级的阶段,距离所谓的强人工智能甚至超人工智能相去甚远。更何况任何具有巨大能量的技术都具有巨大的潜在破坏力,但它们的危险并不来源于机器的自主思维。

  对机器学习稍有了解的朋友都明白,机器进行的任何认知、规划和操作都有限定域,对没有定义的问题和行为绝对没有能力进行处理。而机器做的所有事情都是决定性的,因为目前的计算机都是基于二进制布尔逻辑,是绝对的逻辑,没有什么人们无法预测或者无法认知的问题(只是可能复杂性让让人们很难观测和理解)。所谓的超智能带来的种种威胁起码在现有的技术框架下基本上还是没有眉目的事情,当然未来计算机的基本架构如果发生了变化一切都还难说,但目前来看还属于杞人忧天。

  与核武器相似,虽然人工智能可能带来破坏,但最终的按钮仍在人类手中。我们更应当关心人工智能被正直的人用于正直的目的,为人类创造财富和幸福,而非过分担心机器的自我意识觉醒,在反智主义思潮下不经思考就对其抵制。

  在更深层面上,AlphaGo其实也引发了人与机器关系的哲学反思。例如人究竟是什么?是否有了自我意识就应当被定义为人?若果真如此,如何定义自我意识?几场对弈看下来,我越来越觉得AlphaGo应当被看做一个棋手,而非冷冰冰的机器。与此相对,人其实也是一个生化系统组成的机器,接受特定的输入,在一定的状态之前按照一定的逻辑进行状态转移。从这个角度来说,我们与机器的区别也许没有想象的那么大,这意味着人机融合或将迎来启蒙,感知技术和虚拟现实的发展正在为它的出现铺路。

  至于不少人对这种“伤风败俗”的行为嗤之以鼻,我们也只好摊摊手。毕竟人类历史告诉我们,科技永远拖着观念发展,观念永远拖着法律发展,走的慢的永远无法阻止走的快的。

下载荔枝新闻APP客户端,随时随地看新闻!

我要说两句

layer
快乐分享