透过深蓝与AlphaGo的区别 看懂人工智能的八大学问
谈起人工智能(AI:Artificial Intelligence),我们首先想到的应该就是科幻电影中那些无所不能的“它”:《终结者》中的T-800,《星球大战》里的R2-D2抑或孤独星球上的《WALL· E》。
回归现实世界,在一年多以前,人们对于它的印象应该还大致定格在19年前轰动一时的IBM“深蓝”战胜国际象棋世界冠军卡斯帕罗夫那个时刻。在之后的十多年中,任凭计算机与信息技术的迅猛发展,人工智能领域的发展却逐渐沉寂下去,鲜有传出与“深蓝”相媲美的高光时刻。
1997年深蓝VS卡斯帕罗夫( 图片 来源网络)
而在已经过去的2016年里, “Alpha Go”在三月的人机大战中横空出世,相较于“深蓝”对卡斯帕罗夫3.5:2.5的险胜,4:1的比分宣告了人工智能在围棋上对于人类顶尖棋手彻彻底底的胜利。
Alpha Go与李世石的人机大战( 图片 来源网络)
不仅如此,在旧年已末,新年未至之际,它又化名“Master”在线上围棋比赛中连克中日韩三国好手,取得60胜1平的骄人战绩。至此,基于神经网络的超级计算机“AlphaGo”不仅在公众中引起巨大反响,也宣告着一个新的人工智能时代来到了我们身边。
Master对阵古力九段时承认自己是AlphaGo(图片来源网络)
“深蓝”与“AlphaGo”的区别在哪里?
“Alpha Go”与“深蓝”的区别在哪里?为什么这次它会引来全世界的关注?
回答这些问题,我们首先从它们所面对的项目难度上进行分析:众所周知,无论是围棋还是国际象棋,都代表着人类最高智商之间的博弈。按规则难度来说,国际象棋的复杂度约为10的46次方;而拥有更大棋盘(19X19)的围棋的复杂度约为10的172次方。相比较而言“AlphaGo”在围棋上所面临难度远远大于“深蓝”在国际象棋上的挑战。
棋类复杂度的比较【1】
再从硬件角度来说:在当时,拥有32颗CPU的“深蓝”可以称得上是超级计算机。根据IBM公布的性能数据,它每秒可进行约113亿次(11.3GFlops)的浮点运算。这种运算能力相当于可以预估落子后的12步棋。而如今,随着半导体技术在摩尔定律下飞速发展,一颗手机处理器的运算能力已远远超过这一数值:以高通骁龙820为例,其浮点运算已达到554GFlops(型号:MSM8996).而对于人工智能“AlphaGo”,搜狗CEO王小川表示表示,其计算能力是“深蓝”的约3万倍。在这一项的比较上,“AlphaGo”毫无疑问的胜出。
“深蓝”VS骁龙820 (图片来源网络)
最后也是最重要的计算原理上研究:“深蓝”在国际象棋合理的步骤范围内,把棋局的10的46次方的可能性优化到一个可计算的范围,并给出所有的可能性。可以理解为暴力穷举。相比较来说,尽管如今CPU的性能远超当年,但是对于围棋庞大的复杂度依旧心有余而力不足。 因此,“AlphaGo”采用了深度神经网络(deep neural network)进行应对。根据所披露的消息,“AlphaGo”把蒙特卡洛树搜索(Monte Carlo tree search)和两种深度神经网络:评价网络(value network)与策略网络(policy network)这结合在一起。基于大数据分析,“策略网络”负责判断对手最可能的落子位置,“评价网络”是在目前的局势下判断最后的胜率(如下图)。最后运用蒙特卡洛搜索树来计算最佳落子点。这与人类下棋的策略有着异曲同工之妙。由下图不难看出,人机大战的第一盘,李世石在150手之后才变得毫无机会。
人机大战第一局胜负概率走势表(数据来源:facebook 田渊栋)
由此可见,“深蓝”的设计原理本质上就是一台计算器,属于早期人工智能范畴,而“Alpha Go”的运行机制则是基本模拟了人脑基本的功能。
什么是人工智能?
19世纪末,科学家创立了神经元说,人们认为人脑中约有1000亿个神经元,而这些神经元被上百万亿的突触链接从而形成迷宫般的神经网络(neural network)。思维学认为,人的大脑的思维有三种基本方式,分为逻辑思维,形象思维和灵感思维。逻辑思维是根据逻辑规则进行推理的过程,这一过程已经可以由计算机代替完成。而形象思维是将分布式存储的信息综合起来想出解决问题的方法。这种思维方式有以下两个特点:一是信息在神经元上的分布存储,二是神经元之间的同时相互作用并做出决策的过程。人工智能就是模拟这一种思维方式。