alibaba 发表于 2017-2-11 20:43:08

透过深蓝与AlphaGo的区别 看懂人工智能的八大学问

透过深蓝与AlphaGo的区别 看懂人工智能的八大学问


2017-01-27

谈起人工智能(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手之后才变得毫无机会。人机大战第一局胜负概率走势表由此可见,“深蓝”的设计原理本质上就是一台计算器,属于早期人工智能范畴,而“Alpha Go”的运行机制则是基本模拟了人脑基本的功能。什么是人工智能?19世纪末,科学家创立了神经元说,人们认为人脑中约有1000亿个神经元,而这些神经元被上百万亿的突触链接从而形成迷宫般的神经网络(neural network)。思维学认为,人的大脑的思维有三种基本方式,分为逻辑思维,形象思维和灵感思维。逻辑思维是根据逻辑规则进行推理的过程,这一过程已经可以由计算机代替完成。而形象思维是将分布式存储的信息综合起来想出解决问题的方法。这种思维方式有以下两个特点:一是信息在神经元上的分布存储,二是神经元之间的同时相互作用并做出决策的过程。人工智能就是模拟这一种思维方式。简而言之,人工智能就是利用计算机等硬件和程序算法相搭配来模拟人类感知和行为的方式去实现目前必须借助人类智慧才能实现的任务。从应用范围层面来说,人工智能有狭义和广义之分:狭义的人工智能(Narrow AI)是指其主要是通过软件的编译和算法的改进,模拟人类的智能行为和思维方式,在特定领域完成单一任务,比如现阶段的图像识别、语音处理,自动驾驶,“Alpha Go”都属于这一个范畴。而广义的人工智能(General AI)则是指是包括硬件发展在内进一步模拟人脑,可以跨领域解决不同的问题,具有像人一样的推理和思考能力。比如“T-800”, “R2-D2”和“WALL·E”。
Google无人驾驶基于运用的神经网络不同,人工智能又可以分为两类,一类是用计算机的方式去模拟人脑,这就是我们常说的人工神经网络(Artificial Neural Network),另一类是研究生物学上的神经网络,又叫生物神经网络(Biological Neural Networks)。纵观人工智能60年发展历程,受限于对神经元原理依旧浅显的认识,人们把更多的注意力放在了人工神经网络的研究上,即通过计算机算法来模仿、简化和抽象人脑的若干基本特性。从1956年的基本概念提出到“Alpha Go”的举世瞩目,其中经历了两次大起大落。而每一个高潮的时期,都伴随着生物学,电子学,计算机算法和与之相关的交叉学科对于人脑运行机制研究/模仿的突破。而如今,得益于基于神经网络的深度学习(Deep Learning)的研究,海量大数据的支撑,硬件计算能力的提升和可控成本的下降,人工神经网络产业迎来了第三个高速发展时期。
人工智能发展历程何为深度学习(Deep Learning)?对于“深度“的理解,乍一看,可能觉得相对于传统的机器学习算法,它更加复杂与深奥。但是实际上并非如此,从结构上来说,“深度学习”的学名又称“深层神经网络”(deep neural network),是从人工神经网络模型演变而来,其对应的是“浅层(单层或双层)神经网络”。由于这一类模型一般采用计算机科学中的图模型来直观表达,“深度”即是指图模型的层数以及每一层的节点数量。
   由于在传统人工神经网络中,突触模型以及网络的构架和真实大脑相比都是及其粗糙而不准确的。比如在视觉系统中,从视网膜的采集的生物信号起码要经过30多层神经网络的处理最终传输到大脑形成图像。而传统的2-3层的人工神经网络是远远不能够运行如此复杂的功能。而深度学习采用了多层结构,系统由包括输入层、隐层(多层)、输出层组成的多层网络,只有相邻层节点之间有连接,同一层以及跨层节点之间相互无连接,这种分层结构,是比较接近人类大脑的结构的。这是深度学习在结构上对人类大脑模仿的一大核心特征。深度学习的结构模型深度学习的方式
深度神经网络的另一核心特征是卷积计算。在神经网络中采用卷积计算是受到大脑视觉系统终感受野特征的启示。从人眼的角度来说,当我们的视觉聚焦在图片的某个点时,距离较远的地方是虚化的,影响不到我们的视觉。瞳孔摄入像素,接着做初步处理(大脑皮层某些细胞发现边缘和方向),然后抽象(大脑判定,眼前的物体的形状,是圆形的),然后进一步抽象(大脑进一步判定该物体是人脸)。我们可以看到,在最底层特征基本上是类似的,就是各种边缘,越往上,越能提取出此类物体的一些特征(轮子、眼睛、躯干等),到最上层,不同的高级特征最终组合成相应的图像,从而能够让人类准确的区分不同的物体。如此一来,我们要计算的神经连结数量就能够大幅降低。深度学习的过程举例来说,对于传统的神经网络,由于层数较少,常采用完全的链接,有大量的参数。如果我们使用传统神经网络方式,对一张图片进行分类,那么,我们把图片的每个像素都连接到下一层的节点上,那么对于一张1000x1000像素的图片,如果我们有1000000个隐藏层单元,那么总共会出现10的12次方个参数。但是我们利用卷积计算,可以将神经元的数量个连结的数量保持在一个合理的范围内: 10的8次方,而且由于底层特征具有相似性,经过类比之后更能减少其重叠特征的数量,从而大大降低了计算的难度。利用卷积计算深度学习与浅层神经网络的比较深度学习的必要条件
从应用层面来说,光有深度神经网络对于深度学习来说还是远远不够的。深度神经网络就像一个可以运作的简单大脑,让它进行工作,类比从而得出结论,就一定需要参考数据来“训练”它。就像“AlphaGo”在人机大战之前已经通过输入大量的职业棋手的棋谱数据来“训练”预测对手最有可能的落子位置一样。如今,大数据就扮演着这一重要的“训练“角色。大数据的飞速发展,让深度学习拥有了无比广阔的数据资源来完成特定功能的”训练“。除此之外,拜移动互联网所赐,大数据背后的涟漪效应:千千万万的深度学习用户把与之相关的使用习惯传入大数据中,使得深度学习通过涟漪效应不断地进行自身的优化去达到一个更好的结果。深度学习产业化的必要条件深度学习的优点在大数据的前提下,深度学习提出了一种让计算机自动学习模式特征的方法,并将特征学习融入到了建立模型的过程中,从而减少了人为设计特征造成的不完备性。而目前以深度学习为核心的某些机器学习应用,在满足特定条件的应用场景下,已经达到了超越现有算法的识别或分类性能。深度学习的缺点深度学习虽然能够自动的学习模式的特征,并可以达到很好的识别精度,但这也恰恰是深度学习存在的一个缺点:也就是说在只能提供有限数据量的应用场景下,深度学习算法便不能够对数据的规律进行准确的归类和总结,因此在识别效果上可能不如一些已有的简单算法。另外,由于深度学习中,图模型的复杂化导致了这个算法的时间复杂度急剧提升,为了保证算法的实时性,需要更高的并行编程技巧以及更好更多的硬件支持(比如GPU阵列)。所以,目前也只有一些经济实力比较强大的科研机构或企业,才能够用深度学习算法,来做一些比较前沿而又实用的应用。从事深度学习的大公司深度学习的局限
从功能上来说,目前深度学习的应用集中于人工智能中的模式识别,如图像/语音识别等。但是在人脑中,识别功能仅仅是其中一小部分,甚至不是核心部分。人脑的核心功能在于学习和运用。目前而言,深度学习仅仅能对特定条件下的信息进行处理,从而达到特定的目的。导致深度学习在功能上趋近与大脑的原因,很大程度上是由于目前深度学习中的神经元模型和突触模型还没有突破传统模型的限制。已知的局部神经元生物结构人类的外在行为是神经网络接收刺激之后产生的反应,神经元之间的链接有强有弱,而这种强弱是可以通过学习来改变的,这就是神经元的可塑性。比如说著名的“巴普洛夫的狗”:先摇铃铛,之后给一只狗喂食,久而久之,狗听到铃铛就会口水连连。这也就是狗的“听到”铃铛的神经元与“控制”流口水的神经元之间的连接被加强了。而这些动态特性,在目前的深度学习终还没有实质性的体现。
巴普洛夫的狗如何使深度学习具有更加接近于人脑的功能?这就要基于神经网络的另一种实现方式:生物神经网络上去实现。深度学习不仅要从运算结构上去模仿大脑,更要从神经元与突触的生物模型上去模仿大脑。具体来说,现阶段的深度学习还仅仅是依赖于计算机算法的发展,其程序依旧运行在冯诺依曼体系的计算机中。而这一广泛运用的计算机结构是具有处理器和存储器互相分离并且对于数据进行串行处理的特征。而在人脑中,每个神经元都具有处理和存储数据的能力,这种处理器与存储器的结合带来的是数据的并行处理能力。相对于人工神经网络算法的广泛商用化,由于包括晶体管在内的传统电子元器件并不能反映出神经元的电学特征,生物神经网络的研究曾一度处于停滞状态。直到2008年,惠普实验室发现了一种新型电子元器件:忆阻器,无论在结构或者电学特性上都近似于生物神经元突触模型,才使得人们把目光重新投入这一领域的研究。而在2016年中,IBM公司宣布制造成功了第一个基于忆阻器的相变神经元阵列芯片。虽然其仅仅是一个概念化模型,一批底层器件的堆叠,并没有考虑到器件之间的关联,算法等相关因素。但是其也为之后的人工智能发展做出了一个方向性上的良好示范。总体来说,现阶段人工智能的发展还停留在初级阶段,要制造出模拟或者超越人脑的人工智能,首先必须先掌握大脑的运作机制,只有弄清楚了神经网络的运作的方式,才能更好地对其进行模拟。

页: [1]
查看完整版本: 透过深蓝与AlphaGo的区别 看懂人工智能的八大学问