人的智能与人工智能的现在和未来

作者: 戴瑾

来源: 赛先生

发布日期: 2016-03-17 07:26:19

本文探讨了人工智能与人类智能的关系,分析了神经网络的工作原理及其在围棋等领域的应用,指出人工智能在理解和解决问题方面仍有待提高,并讨论了未来人工智能可能带来的影响。

你如果生活在这个地球上,这几天就一定听说过围棋的人机大战。如果你关注,应该也会在各种报道分析文章中看到过“神经网络”、“深度学习”这样的词汇。神经网络是一项重要的计算机技术,要理解人工智能,需要从神经网络谈起。

自从两千多年前欧几里得发表了公理体系,逻辑推理和科学计算就成为一切科技的基础,也就是所谓的“理性”。计算机技术也在遵循这样的原则。

计算机程序基本上都是:如果输入等于A,就进行如下计算,如果结果等于B,就执行指令C,否则执行指令D.....,这样的陈述。如果我们造一个打乒乓球的机器人,它应该这样工作:测量来球的速度和旋转,根据空气动力学计算它未来的轨迹,计算球在桌面弹起后的轨迹和旋转,制定最佳的回球策略,计算机器手的每个关节需要做多少运动和转动才能实现以上策略,给控制每个关节的电动机发指令实现以上转动。

直到大约10年前,大多数计算机行业的人仍然认为人工智能也要遵循理性原则,机器人要按照上面那样的方法去设计。但是,直到今天,也没有人用这样的方法造一个机器人去挑战张继科。这不是机器的过错,逻辑思维和科学计算毕竟不是人脑先天就具备的能力,这样的一个系统,设计起来太复杂了。

人体的工作方式是这样的:在训练过程中产生肌肉记忆,眼睛观察来球,接收到的信号直接唤起肌肉记忆,肌肉记忆调动全身几十条肌肉协同运动,实现手眼配合,挥动球拍。这套跟着感觉走的机制,在现代科技面前显得很高效。随着计算机应用的发展,人们越来越意识到,解决这个复杂世界中的很多问题时,“理性”的解析的方法,或者低效,或者完全不可能。

再举一个例子:怎样判断一张数码图片是不是林志玲?

按理性的思路,要判断就要求有定义,能导出一系列判据的定义才是有用的定义。动手写程序之前,我们就卡在这里了。纯解析的方法也不是完全没有希望,经过很多科技工作者多年的努力,发现可以用人脸上几个关键点,如眼角、嘴角的坐标鉴定人的身份。但这个方法不可靠,人脸的角度、表情都会影响到鉴定结果,带上墨镜就完全不灵了。这又是一个理性完败于感性的例子,她的一颦一笑,我们看一眼就能认出来。

既然理性在很多实际应用中输给了感性,可不可以用理性的方法,去研究、去模仿感性呢?有些人认为人类智慧是精神层面的东西,和机器之间有不可跨越的鸿沟。然而人的智慧是由人脑实现的,人脑是物质的,遵循物质世界的规律。探寻智能的本质,应该从研究人脑开始。

人脑虽然复杂,它的组成单元却是相对简单的。人的智能是由大脑皮层实现的,大脑皮层以及人的整个神经系统,是由神经元细胞组成的。

神经元,是一个积累了足够的输入,就产生一次输出(兴奋)的相对简单的装置。连在细胞膜上的分叉结构叫树突,是输入。那根长长的“尾巴”叫轴突,是输出。神经元输出的有电信号和化学信号。最主要的是沿着轴突细胞膜表面传播的一个电脉冲。树突和轴突都有大量的分支。轴突的末端通常连接到其他细胞的树突上,连接点上是一个叫“突触”的结构。一个神经元的输出通过突触传递给成千上万个下游的神经元。

神经元可以调整突触的结合强度,并且,有的突触是促进下游细胞的兴奋,有的是则是抑制。一个神经元有成千上万个上游神经元,积累它们的输入,产生输出。

人们估计人脑有1000亿个神经元,1000万亿个突触。我们所有记忆、知识和智慧,是储存在这些突触里的,但人脑是怎么编码、存储这些信息的,我们完全“摸不到头脑”。我们对外部信息的处理、以及直觉、回忆、思考等大脑活动,都是由这些神经元完成的。

神经元的运行速度大约是100Hz,现代的CPU芯片要快几千万倍,但现代计算机的连通性、大规模并行计算的能力,要远远弱于人脑。所以,现在的世界是人脑和计算机各有所长的局面。

既然神经元是一个功能相对简单的装置,模拟人脑应该从模拟神经元开始。人们提出用下面这个简单函数来模拟神经元:这个函数可以有很多输入‘X’,模拟树突;对应于每一个输入有一个权重‘W’,模拟突触;输出是每一个输入乘以权重在加起来‘SUM’,模拟神经元积累输入产生输出的机制;输出再按照一条给定的曲线映射到0到1之间的一个数,模拟人脑判断时的在‘是’和‘否’之间的模糊逻辑。

用这样的“神经元”(Neuron)组成的神经网络(Neural networks)可以解决实际问题。上面这个网络是用来识别手写的数字‘0’、‘1’、....‘9’的。手写字识别也是一个用传统方法编程非常困难的问题。这个网络被分成三层,神经网络一般都是多层结构,这也是受到了人脑的启示,大脑皮层有6层神经元细胞,人脑处理视频信息也是分好几个层次由不同的区域去处理。

这个算法把一张图分成28x28=784个点,每一个点对应一个第一层(Input Layer)神经元,输入‘1’和‘0’表示黑和白;中间是个隐藏层(Hidden layer);第三层是输出层有10个神经元,分别对应着10个数字。这个网络是有大量简单函数(神经元)拼接出的复杂函数,输入一张图,产生10个输出。

我们希望输入一个手写的‘9’的图片时,对应于‘9’的输出神经元输出一个‘1’表示肯定,其他的输出‘0’表示否定;对其余9个数字也是一样。我们能做到吗?当然可以,因为这个函数有一万多权重作为参数可以调整。学过高等数学的朋友都知道,我们可以用一组简单函数去逼近一个复杂函数(比如1,x, x², x³, ...),无论它有多复杂,只要我们使用足够多的参数就可以逼近它。

一万多个参数需要大量的数据点才能确定。于是需要提供几万张手写数字的图片,调整这些参数使这些数据点产生最好的吻合,这在数学上是个优化问题,有现成的计算方法。使用大量数据进行网络优化,就是神经网络的“训练”或“学习”过程。经过几万张图片的训练后,这个程序工作得相当不错。

这个算法像人脑,因为它成功地模拟了人脑的一种能力:直觉。直觉就是不经过逻辑推理和计算,凭借经验快速取得结论的能力。

神经网络虽然训练起来费时费事,一旦训练完成,计算起来还是比较快的。有了这样的算法,我们再也不用费工夫给计算机去定义什么是‘0’,什么是‘1’等等。我们只需要像教小孩子一样,拿几张图告诉他这就是‘0’和‘1’,他以后自己就认识了。但这个算法也不像人脑。教一个小孩子识字,只教他两三遍,他以后就可以在不同的背景,不同的书写方式下认识这个字。计算机却需要几万、甚至几百万张图片去训练。

人脑有着非常高效的接收知识的方法,这是科学界至今没能破解的奥秘。相对而言,计算机是使用蛮力在学习。用几万个数据点去优化一万多个的参数,是一个海量的计算。神经网络的算法,上世纪40-60年代就被提出和研究过,当时没有取得成功,很大一个原因是,学习过程中的海量计算,当时的计算机根本无法胜任。

在取得这次划时代的围棋胜利之前,神经网络已经在各行各业得到了很大应用了,从语音、图像识别到信用审查甚至炒股。

它被包装成了“深度学习”,所谓的“深度”,是指网络有很多层,算法的基本原理仍然和上面讲的一样。深度学习的成功,得益于算法本身的改进,克服了一些具体的技术困难,主要的学问在于网络的设计。更重要的,得益于两个外部条件——第一:半导体技术的进步,特别是CPU以外GPU的发明,更快的芯片加大规模平行计算解决了神经网络训练时的海量计算问题。

第二:互联网和大数据时代的来临,使得获得训练神经网络所需要的大量数据的成本急剧降低。倒退20年,要去找几百万个数据点,还不如坐下来用解析算法写一个程序。今天,在很多应用领域,这个成本对比逆转了。

围棋是人工智能的终极检验,因为它太复杂基本无法可靠地去计算。二十年前,IBM的深蓝计算机击败国际象棋世界冠军,用的是传统的理性算法。但直至去年底,没有任何一个围棋软件击败过任何一位职业棋手。

围棋,被认为是只有人的智能才可以应对的。所以,尽管西方没有围棋传统,几个顶级的人工智能公司都投入巨资开发围棋软件。阿尔法狗的算法,有大量文章介绍,不在这里详述。之前有一个用于下棋的“Monte Carlo Tree Search”的搜索算法,基本原理是:既然无法逐一计算所有的可能性,就按统计规律随机挑选走棋方法去计算,保证以比较高的概率提供比较好的走法。

阿尔法狗使用了两张神经网络,给出的直觉判断,使得搜索算法变得有的放矢。

阿尔法狗胜利的意义是什么?我觉得这场胜利证明,人类跟直觉相关的智能,没有什么神秘的。无非是棋手们经过训练,大脑里的突触得到的调整优化。天资高的人,大脑的调整能力强;勤奋的人,积累的数据多。而阿尔法狗的学习方法虽然可以说很笨拙、用蛮力,但学到的东西却是货真价实的。形势感,什么时候求稳什么时候冒险;大局观,取势取地;都跟人类顶尖棋手没有差别;还有让聂卫平表示要脱帽致敬的妙招。

对神经网络算法的改进也正在被研究。比如说有人指出,这个神经元不像人脑的神经元,人脑的神经元是积累了足够多的输入后才向外输出一个脉冲。这样,一个事件的输入可能只引起千分之一的神经元的活动,绝大部分不需要关注的细胞不会浪费营养。而神经网络算法把神经元模拟成一个函数,任何一个微小的输入都会让整个网络进行计算,可能99.9%的计算都是浪费时间浪费电。

于是就有了更认真地模仿人脑的脉冲神经网络(Spiking Neural Networks)。IBM设计了这种神经网络的专用芯片TrueNorth,在演示中证明了巨大的省电优势。国内几个单位也在设计这种类脑芯片。

看到西方人用现代科技在我们东方人的传统游戏上取得了胜利,中国人不免紧张。是不是谷歌的科技把中国甩开了?这一点,我不担心。读者可以看到,人工智能的黑科技,说明白了其实很简单。

谷歌阿尔法狗的胜利,本身不是核心技术的创新,而是一项卓越的工程实践。深度学习的专家,现在可以拿到天文数字的高薪,是由于人才紧缺。诚然,任何一门手艺学好学精都不容易,但这绝不是只有少数人才能掌握的手艺。我敢保证,次数此刻,一定有500个旅美的中国留学生,5000个中国的博士和硕士,在钻研深度学习。像阿尔法狗这样的程序,中国人可能一年就可以山寨出来。当然,谷歌很清楚这一点,他们刚刚把阿尔法狗开源了。

中国在这个领域追赶,反而比造一台好的航空发动机容易。

现在,计算机已经在围棋领域打败了人类,还有什么事情是只有人能做,而计算机不能做的?我认为,正如人类对自身智能的认识还很肤浅,人工智能也还在一个初级阶段。人工智能要全面超过人类智能,还需要闯过两道关口:理解和解决问题。理解一段信息,是指把这段信息,和已有的相关信息关联起来,并在未来接收新的相关信息时,把它和这段信息关联起来的能力。

建立的关联越多,就表示理解得越好。如果计算机能够在我们输入几行唐诗后,在网上搜到一些符合该诗意境的图片,我们就可以认为它懂诗了。至于我们读诗会愉悦、会流泪,那是人类生理层面的事情,不涉及智慧。

解决问题,甚至在这个过程中自主创新,是最高级的智能。目前的技术离这一目标相差很远。但也许,这最高级的智能,并没有想象得那么神秘。人类解决问题时使用的思维方式,似乎只有两种:类比和想象。

逻辑推理是一种类比的思维方式,把一条定律或定理,搬到一个应用场景。归纳法、演绎法都是类比思维。创新,也常常是受到某些类似事物的启发。也许人脑有一种搬运复制机制,比如把万有引力定律记忆区的那一部分突触,复制到一道物理题的空间里,嫁接上去。想象力在解决问题的过程中也非常重要,我们需要把可能的方案,在大脑中仿真成具体的场景,与问题的需求进行比较。

当然,以上只是我个人的看法。

正如人工智能的成功帮助我们认识了自己的智能(直觉),对人的智能的认识一定会帮助人工智能的发展。人工智能可怕吗?一个重要的问题是:计算机将来是否会有自由意志?在这一点上,我们有很好的理由,推测机器和人之间有不可跨越的鸿沟。自由意志是自我设定目标的能力,机器都是由人来设定目标的。人之所以有自由意志,是因为人是一个有机体,食色性等外部刺激都会勾起我们的欲望。这样的感觉,基于电信号的计算机肯定不会有。

计算机见到林志玲的照片不会有想法,计算机不会去占领地球上的资源。想到这里,人类或许可以放心些。虽然没有绝对的把握,但科幻小说中计算机消灭人类的事情大概不会发生。但人工智能对人类社会的影响将是巨大的。深度学习在围棋上的成功,让我们可以预见不远的将来,在所有具备大数据积累的领域里,机器将会取代人做决策。只有在不具备大数据的领域,人类的学习能力才会占上风。

如果计算机能懂得人类的语言和文章,能独立解决问题和创新,那就毫无疑问是“奇点”的来临。你都想象不到人类的道德伦理和社会制度会受到怎样的颠覆。人类有理由感到恐惧,但无论你喜欢与否,这一天终将会来到。并且,很可能比想象得要早。

UUID: 91e7f58e-9fc9-45b3-bfb0-f7a7e51de308

原始文件名: /home/andie/dev/tudou/annot/AI语料库-20240917-V2/AI语料库/赛先生公众号-pdf2txt/2016/赛先生_2016-03-17_人的智能与人工智能的现在和未来.txt

是否为广告: 否

处理费用: 0.0242 元