我们现在已能模拟包含160万个视觉神经元的人脑视觉新皮质,模拟完整人类大脑的目标预计2023年就可实现。“矢量量化”方法既能高效利用计算机资源,又能保留重要的语言识别特征。“隐马尔可夫模型”让语音识别系统能同时完成识别和学习两项任务。
不要相信任何自圆其说的话,除非你知道他的思考模式。
亚瑟·卫斯理,选自《哈利·波特》
我想要的不过是一个平凡而并非超凡的大脑,它只要跟美国电话电报局总经理的一样就行。
阿兰·图灵
只有计算机能像人类那样思考,它才被认为是智能的。
阿兰·图灵
我相信在世纪末,语言的使用和教育水平会有极大的改变,人们在谈到“机器思考”时,会觉得理所当然。
阿兰·图灵
母老鼠天生就会打洞,即使它一生都不曾见过其他的母老鼠怎样打洞。同样,就算其他同类没有示范完成这些复杂任务的具体步骤,蜘蛛还是天生就会织网,毛虫还是天生就会织茧,海狸还是天生就会建造水坝。当然,我们并不是说这些(织网、织茧、建造水坝)不是习得行为,只不过是说一代的学习是无法掌握这些行为的,必须通过数千代学习的积累。毋庸置疑,动物行为的进化的确是一个学习的过程,但是这种进化是整个物种群体的学习而不是个体的学习。进化的成果通过DNA遗传给下一代。
新皮质进化的意义就在于它大大缩短了学习过程(层次化知识)——从数千年缩短到几个月,甚至更短。就算某种哺乳动物遇到无法解决的难题(问题的解决需要一系列步骤),但只要其中的一名成员偶然找到解决方法,该方法就会在种群中迅速扩散传播。
当我们从生物智能转向非生物智能时,我们的学习速度提高了几百万倍。一旦数码新皮质习得一种技能,它就会在短短几分钟甚至几秒之内将这种技能传授给其他皮质。举个例子,在我的第一家公司——我在1973年创立的库茨韦尔计算机产品股份有限公司(Kurzweil Computer Products),我们花了很长时间研究一种叫做全字体(可以是任何字体)光学字符识别(OCR)的技术,以期识别扫描文件中的打印字符。这项技术连续开发了40年,新近产物是Nuance公司的Omnipage。如果你希望你的电脑能识别打印字符,你不必像我们那样花费数十年的时间训练电脑,你只要下载以软件形式存储的最新模式即可。20世纪90年代,我们开始研究语音识别,这项技术作为Siri系统的一部分,已经持续开发了数十年。同样,你也可以在数秒之内就下载这种研究电脑很多年才能习得的最新模式。
我们最终的梦想是研究出一种人造新皮质,它在功能和灵活性方面皆可与人类大脑新皮质相媲美。想想这种发明问世的益处吧。电子线路运行的速度会比生物线路快成千上万倍。虽然一开始,我们要牺牲速度来弥补电脑平行演化的缺乏,但是最终,数码新皮质层还是要比生物多样性变化更快,还是会提高速度。
假如我们放大新皮质,我们无需担心附加新皮质与我们的身体、大脑的匹配度是多少,因为就像如今的计算技术一样,新皮质大多数会储存在云端。我曾经估计我们的生物大脑新皮质可以承载3亿个模式识别器。借助人类不断进化的宽前额和占据脑容量80%空间的大脑新皮质,这个数字对我们的大脑来说不成问题。但一旦我们的大脑开始云思维,我们就不再受自然条件的限制,就能无限使用数十亿甚至数百亿个模式识别器,基本不需要再考虑我们的需求,以及库兹韦尔定律在每个时间点可以提供什么。
生物新皮质要经过不断地重复才能掌握一种新的技能,数码新皮质也不例外。但是一旦数码新皮质在某一时间学会了某种新知识,它就能在第一时间与其他数码新皮质交换信息。就像如今我们每个人都拥有自己的数据库一样,我们也可拥有储存在云端的新皮质扩展器。
最后,通过数码新皮质,我们可以备份智力中的数码部分。这不仅暗示了新皮质可以储存信息,更令人震惊的是,这样的信息至今还没有备份——当然,我们确实可以记下大脑中的信息用以备份。将思维的一部分传输给能长存于我们生物体中的媒介的能力无疑是个巨大的进步,然而大脑中的很多数据依然是易损的。
脑模拟
准确模拟人脑是构建数码大脑的方法之一。例如,哈佛大学脑科学博士生大卫·达伦布尔(David Dalrymple)就计划模拟一种线虫(蛔虫)的大脑,因为线虫的神经系统构造相对来说比较简单,大约只有300个神经元,他打算细致深入到分子层次。同时,他还给这个大脑加了个虚拟身体,并模拟了线虫真实的生存环境,如此一来,这个虚拟线虫就可以像真实的线虫那样猎食、做其他同类擅长的事情。达伦布尔说,这似乎是人类第一次完全模拟生物大脑,并且让其生活在虚拟环境中。尽管线虫在竞争食物、消化食物、躲避猎食者和繁衍后代这些方面的确拥有某些技巧经验,但我们依然无从知晓线虫是否真的有意识,更不用说模拟线虫了。
亨利·马克拉姆的蓝脑计划(Blue Brain Project)却致力于模仿人脑,包括整个新皮质和旧脑区域。其中,旧脑区域的模拟包括大脑海马体、杏仁核以及小脑等。各个部分的模拟程度有所不同,最高可达到分子层次的完全模拟。如同我在第4章提到的那样,马克拉姆已经发现了新皮质中反复出现神经元的关键分子,这说明学习是由这些分子而不是那些单个的神经元完成的。
马克拉姆不断取得新成果。2005年,这个项目刚刚启动,他就成功模拟出第一个神经元。2008年,他的团队已经模拟出包含10000个神经元的老鼠大脑新皮质。截至2011年,神经元的数量翻了100倍,达到了1000000个,马克拉姆将它称为“中回路”(Mesocircuit)。马克拉姆的反对者却提出了质疑,他们认为马克拉姆虽已成功模拟出神经元,但却无法证明这些模拟神经元就是真实神经元的再现。要证明这一点,这些模拟神经元必须演示我将在下面讨论的学习。
马克拉姆计划到2014年,完成对老鼠整个大脑100个中回路的完全模拟,总共包含1亿个神经元和大约1万亿个突触。在2009年召开的牛津TED研讨会上,马克拉姆说道:“模拟人类大脑并非不可能,我们可以在10年内完成这项任务。”他最近的目标是在2023年模拟出一个完整的大脑(见图7—1)。
图7—1 计算机速度(软磁盘)
通过对真实神经元详细的解剖及电化学分析,马克拉姆和其团队试图以真实神经元为模板建构模型。借助名为“膜片钳机器人”的自动装备,他们能够测定特定的粒子通道、神经传递素以及负责每个神经元内电化学活动的生化酶。马克拉姆说,这种自动系统能将30年的分析时间缩短为6个月。而且他们还从这些分析中发现了新皮质基本功能单元——“乐高记忆”模块。
麻省理工学院的神经科学家艾德·鲍登(Ed Boyden)、佐治亚大学机械工程技术系的克莱格·福利斯特(Craig Forest)教授及其研究生撒哈拉·利丹达拉玛哈(Suhasa Kodandaramaiah)均对膜片钳机器化技术作出了突出贡献(见图7—2)。他们宣称,在不损害神经元精细薄膜组织的情况下,这种精确到1微米的自动系统可以近距离扫描神经组织。鲍登说:“这是人类不能而机器人却能做的事情。”
图7—2 由麻省理工大学和佐治亚大学共同开发的膜片钳尖端正在扫描神经组织
回到马克拉姆的模拟大脑,在成功模拟出新皮质列后,马克拉姆说过:“现在我们要做的就是扩大模拟数量。”数量的确很重要,但仍有其他重要问题需要解决,即学习。如果蓝脑计划所模拟的大脑要会“讲话、思考、像人类那样活动”——马卡拉姆在2009年接受BBC采访时提到的目标,那么要完成上述任务,大脑的模拟新皮质就必须拥有足够的信息。任何试图跟新生儿交流的人都会明白,想达到上述目标还要解决很多问题。
有两种方法可以让模拟大脑——如蓝脑,具备学习能力。第一种:让模拟大脑像人脑那样学习。模拟大脑应像新生儿那样——自身就具有学习分层知识以及在感觉预处理区预编某些转化的能力。我们还需将新生婴儿和具备交流能力的成人之间的学习模式放到非生物学习模式中。但是这种方法仍存在问题,按照蓝脑模拟的大脑要正常运行的话,至少要等到21世纪20年代早期。除非研究人员愿意等个10年或20年,让蓝脑达到成人的智力水平,否则,即使计算机性价比越来越高,运行速度持续加快,蓝脑的现实运行速度依然会很缓慢。
另外一种方法就是以人脑为模型,因为人脑已经拥有充足的知识进行有意义语言交谈以及表现成熟的行为方式,然后将人脑的新皮质模式复制到模拟大脑中。这种方法的问题在于,它要求我们掌握能够处理这个任务、具备足够的时空分辨率的无损伤扫描技术。我认为这项“移植”技术在21世纪40年代之前不会问世。(准确模拟大脑的计算要求——大约每秒1019,可能会于21世纪20年代在超级计算机上得以实现,但是实现大脑无损扫描则需要更长的时间。)
还有第三种方法,我认为像蓝脑这样的模拟大脑计划就应该采用这种方法。通过构建不同精细程度的功能等同体,我们可以简化分子模型,包括本书中描述的功能算法以及接近全分子模拟的模型。学习速度也会因简化而提升,提升的速度则取决于简化的程度。我们还可以将教育软件植入模拟大脑(利用功能模型),模拟大脑学习的速度也会相对提高。这样,全分子的模拟大脑就可以被较为简单的模型取代,而后者仍然保留了前者循序渐进的学习方式。之后我们就可以循序渐进地模仿人类的学习。
美国计算机科学家达曼德拉·莫哈(Dharmendra Modha)及其IBM的同事成功模拟了人类视觉新皮质,其中包含16亿个视觉神经元和9万亿个突触,相当于一只猫的新皮质神经元和突触总和。即使将其装入拥有147456个处理器的IBM蓝色基因超级计算机,其运行速度还是比人类的处理速度慢100倍。他们凭借这项工作获得了美国计算机协会(Association for Computing Machinery)颁发的贝尔·戈登奖(Gordon Bell Prize)。
无论是蓝脑计划,还是莫哈的新皮质模拟计划,这些仿真大脑计划的最终目的都可归为一点,即完善和确定一个功能模型。与人脑水平相当的人工智能主要采用本书中讨论的模型——功能算法模型。但是精细到分子程度的模拟可以帮助我们完善此模型,并让我们明白到底哪些细节才是最重要的。20世纪八九十年代的语音识别技术发展过程中,只要能够了解听觉神经及早期听觉皮质负责的实际信号传递,我们就能精简算法。不论功能模型多么完美,弄清楚它在大脑中的运行轨迹也是有益的——因为这会加深我们对人类功能机制和机能失调的认识。
只要拥有真实大脑的详细数据,我们就能模拟出生物学意义上的大脑。马克拉姆团队正在收集自己的数据。还有其他规模较大的项目也在收集此类数据,并将所收集的数据转化成科学家可以利用的数据。例如,纽约的科尔德斯普林实验室(Cold Spring Harbor Laboratory in New York)在对某种哺乳动物(老鼠)的大脑进行扫描后,于2012年6月公布了500兆兆字节的数据。在他们公布的扫描图上,用户可以像在谷歌地图上查看位置那样查看大脑的各个组成部分。用户可以在整个大脑区域内任意移动,也可以放大任意区域,以清楚地观看某个神经元及其与其他神经元的连接。用户还可以点亮任意连接并跟踪它在脑内的运行轨迹。
美国国立卫生研究院(National Institutes of Health)的16个部门共同承接了名为“人类连接组计划”(Human Connectome Projeot)的新项目,并获得3850万美元的资助。该项目由圣路易斯华盛顿大学领衔,明尼苏达大学、哈佛大学、马萨诸塞州总医院(Massachusetts General Hospital)和加州大学洛杉矶分校也参与其中。该项目致力于使用一些非侵入性扫描技术,包括新型核磁共振(MRI)、脑磁图描记(记录大脑电流活动产生的磁场)、弥散跟踪技术(跟踪大脑纤维束轨迹的方法),绘制人类大脑三维连接图。
就像我将在第10章讲到的,非侵入性扫描技术的空间分辨率正在飞速提高。瓦·韦登及其马萨诸塞州总医院的同事发现:新皮质的电路呈现出一种高度规则的网格结构,这个结构我已经在第4章中讲到过。
牛津大学计算机神经科学家安德斯·桑德伯格(Anders Sandberg)和瑞典哲学家尼克·博斯特罗姆(Nick Bostrom)联合发表了著作《全脑模拟路线图》(Whole Brain Emulation:A Roadmap)。该著作详细论述了不同级别的人脑模拟(也包括其他类型的大脑)——从高级功能模型到分子级别(见图7—3和图7—4)。
著作虽未提供统一标准,却对模拟不同类型大脑的精确性提出了要求,如:大脑扫描、建模、储存和计算方面。著作中提到的领域的研究正在飞速发展,精细的人脑模拟即将问世。
图7—3 全脑模拟所需的技术能力略图
注:来自安德斯·桑德伯格和尼克·博斯特罗姆合著的《全脑模拟:一份蓝图》。
图7—4 技术能力略图
注:来自安德斯·桑德伯格和尼克·博斯特罗姆合著的《全脑模拟:一份蓝图》。
神经网络
1964年,16岁的我给康奈尔大学的弗兰克·罗森布拉特(Frank Rosenblatt)教授写信询问关于马克一代(Mark 1 Perceptron)感知器的问题。弗兰克教授于1960年研制出这台与大脑相似的机器。我有幸受邀去参观并试用这台机器。
弗兰克教授在神经元电子模型的基础上发明了感知器。输入信息的价值取决于两个维度。对语音来讲,这两个维度就是重复度和时间。因此,每个价值都代表了特定时间点的频率强度。对图像而言,每个点都是一个像素,而每个像素都拥有一个二维图像。系统会随机将输入信息的某个点连接到仿真神经元第一层的输入点。每个连接点的突触强度——揭示了每个连接点的重要性,都是随机分配的。某个神经元接收到信号的总和如果超出了它的最大承载量,它不仅会短路,还会向输出连接点发出信号;如果总和没有超出最大值,神经元就不会短路,输出信号也为零。每一层神经元的输出信息都会随机地与下一层神经元输入网络连接。马克一代感知器拥有3层结构,因而它就拥有了多种布局(见图7—5)。例如,下一层的输出信息可以返回到上一层。在最高层,随意挑选的神经元输出提供答案。
图7—5 马克一代感知器的布局
神经网络线路和突触强度都是随机设定的,所以未加训练的神经网络给出的答案也是随机的。因此,在建构某个神经网络时,我们首先要了解这个神经网络要解决的问题,就像最初建构的哺乳动物大脑那样。神经网络最初处于无知状态,它的老师可能是生物人、计算机程序或者其他,总之是经过学习后更加成熟的神经网络。当学生给出正确答案时,老师就会奖励它;给出错误答案时,老师就会惩罚它。仍处于学习阶段的神经网络也会以得到的反馈为依据,进而调整不同神经元的连接强度。那些与正确答案一致的连接强度不断增强,而给出错误答案的连接强度则会减弱。
一段时间后,即使没有老师指导,神经网络也能自行运算出正确答案。实验证明,即使老师不可靠,神经网络依然可以完成相应的学习。只要这个老师在60%的时间里是可靠的,作为学生的神经网络就可以完全掌握规定的知识。
但是感知器对其能够快速掌握的资料类别是有限制的。1964年拜访弗兰克教授时,我对输入信息做了些简单调整。系统识别打印字符的速度和准确率令人满意,自由联想能力也很棒(即使我遮挡了部分文字,系统仍然能输出正确的信件内容),但对非常规文字的识别能力较差,字体和字号的改变会影响它的准确率。
20世纪60年代后期,神经网络已为人们熟知,“连接主义”占据了人工智能领域的半壁江山。那些直接为解决某个问题而设计的程序,例如怎样识别打印字符中的不变特征,已沦为较为传统的人工智能方法。
1964年我还拜访了马文·明斯基(Marvin Minsky)——人工智能领域创始人之一。虽然他是20世纪50年代神经网络发展的先驱,但是他仍然对这项技术持怀疑态度。神经网络之所以火热,部分是由于人们在解决问题时不需要自己编写程序,依靠神经网络就可以找到解决方法。1965年我进入麻省理工学院学习,师从明斯基教授,我十分赞同明斯基教授对神经网络持有的怀疑态度。
1969年,麻省理工学院人工智能实验室的两位开创者明斯基和西蒙·派珀特(Seymour Papert)发表了著作《感知器》(Percepiron)。该著作论证了一个简单的定理:感知器自身并不能判断一幅图像到底有没有被成功连接。这立刻在业界引起轩然大波。人脑可以轻易判断出一幅图像到底有没有被成功连接,而配有合适程序的计算机也可以轻易地做到这一点,感知器并不能做到这一点这个事实被很多人认为是一个致命的软肋(见图7—6)。
图7—6 两张图像来自《感知器》一书的封面
注:上面的那幅图像并不是一个整体(黑色部分是由两个分开的部分合成的)。下面的图像则是一个完整的整体。像弗兰克·罗森帕尔特研究的马克一代这样的前馈感知器无法识别出两幅图像的差别。
然而,《感知器》论证的定理的适用范围却被人为地扩大了。书中提到的定理只适用于前馈神经网络(包含罗森布拉特的感知器)这种特殊的神经网络;其他类型的神经网络并没有此限制。这本著作的问世使得20世纪70年代对神经网络的投资大大减少。直到20世纪80年代,这个领域才得以复苏,因为更为实际可行的生物神经元模型诞生了,避免明斯基和派珀特感知器定理的模型也出现了。然而,至今仍无人问津新皮质解决恒定性的能力,即增强新皮质性能的关键。
矢量量化
20世纪90年代初期,我开始探索另一个经典模式识别难题:人类语音识别。最初,我们采用传统人工智能方法,利用专业知识直接对语言基本构成单位——音素,以及音素形成单词和词组的方法进行编程。每个音素都有自己独特的频率模式。例如,我们知道“e”和“ah”这两个元音在某些情况下会产生共振频率,即共振,而且每个音素都拥有自己的共振峰值,“z”和“s”这样的咝音则拥有特定频率的连续音响。
我们用声波来记录语言。通过一系列过滤器,语言最终可以转化为不同频段(即我们平时所感知的音高)。光谱图则体现了这种转化(见图7—7和图7—8)。
过滤器就相当于我们的耳蜗,是生物处理声音的前期步骤。根据音素的不同频率模式,软件先识别音素,然后根据得到的音素串识别不同的单词。
测试取得了部分成功。我们的机器可以识别某个拥有中等词汇量,即几千个单词的说话者的说话内容。而当我们试图识别数以千计的单词、不同的讲话者以及流利无间断的话语(词与词之间没有停顿)时,就会遇到不变特征这一难题。针对同一音素,不同的人会有不同的发音,例如某些人发的“e”音听起来很像其他人发的“ah”音。而且就算是同一个人,同一个音素的发音特征也会有所变化。音素的发音通常受到临近音素的影响。很多音素也会出现完全消音的现象。许多单词出现的情境不同,发音(音素串组成单词)也会不同。我们的编程基础——语言学规则被推翻了,而且它也远远无法满足口语的多变性。
我突然明白,层级知识结构决定了人类语言模式和概念能否被正确识别。拥有复杂层级结构的人类语言就证明了上述观点。但是,我们仍无从知晓这些结构的基本成分。因此在研究机器人识别正常人类语言时,这也是我思考的第一个问题。
图7—8 一个人说出“hide”这个单词时的声谱图
注:水平部分显示了说话者声音的共振峰。共振峰不仅频繁出现,而且峰值较高。
空气振动后,声音就进入人耳。随后,耳蜗内的3000多个内部毛细胞将这种振动转换为不同频率段。每个毛细胞都拥有特定的频率段(也就是我们所说的声调),而且每个毛细胞都是一个频率过滤器,当它们收到符合频率段的声音或者相近的频率段时,毛细胞就会发出信号。当声音离开人的耳蜗时,3000多个不同的信号就是声音的体现,每个信号代表了窄频率带(频率带之间会有很多重合)的时间变化强度。
虽然大脑不会歧视任何信号,但是在我看来,大脑也无法公正地对这3000多个听觉信号进行模式匹配。我曾怀疑进化就是如此缺乏效率。现在我们已经了解:在声音信号到达新皮质之前,听觉神经内的数据会急剧减少
在我们设计的语音识别软件中,我们同样也植入了过滤器软件,确切地说,一共有16个,后来增加到32个,但我们发现数量的增加并不影响最终结果。所以,在我们的系统中,每个点由16个数字表示。我们不仅要保留重要的语言识别特征,还得把16个数据带整合为1个数据带。
为了整合数据,我们采用了数学最优化法,即矢量量化(vector quantification)。无论情况怎样变化,声音(至少是一只耳朵听到的声音)都由16个不同的数字表示:即16个声频过滤器过滤后的信息。(对人类的听觉系统而言,需要3000组这样的数字才能够实现全模拟,每组数字代表了人类耳蜗的一个毛细胞。)在数学领域,这样的一组数字(不管是生物学意义上的3000组数字还是软件设置上的16组数字)被称为向量。
简而言之,我们可以用二维矢量坐标来表示矢量量化过程(见图7—9)。每一个矢量都可以视为一个二维空间的交汇点。
图7—9 矢量量化过程
如果将很多这样的矢量放到图中,你就会发现它们呈现一种集群状态(见图7—10)。
图7—10 矢量的群集状态
为了清晰地辨别这些集群数字,我们需要限制观察的数目。我们将项目中的数字限定为1024个,这样我们就可以为它们编号,并且匹配一个10比特(因为210=1024)的标签。正如预期,我们的矢量样本数据满足了数据多样性的要求。我们首先假设最初的1024个矢量为单点集群。然后加入新的矢量,即第1025个矢量,随后找到跟它最接近的那个点。如果这两个点之间的距离比这1024个点中最近的两个点之间的距离还要小,我们就认为这个点就是一个新集群的开始。然后我们就将距离最近的两个集群合并为一个单独的集群。这样我们仍然有1024个集群。因此,在这1024个集群中,每个集群就不止拥有一个点。随后我们按照这种方式处理数据,但集群的数量始终保持不变。处理完所有点之后,我们就用这个集群中的中心点来表示这个多点集群(见图7—11)。
图7—11 多点集群
矢量样本中所有的矢量都会采用同样的方法。通常情况下,我们会将数百万个点加入到1024(210)个集群中;根据不同情况,我们也会将集群数目增加到2048(211)或者4096(212)个。每个集群都用位于该集群几何中心的那个矢量来表示。这样,该集群中所有点到该集群中心点的距离总和就能尽可能达到最小。
与最初数百万个点(或者数量更多的可能点)相比,采用这种方法后,我们就可以将庞大的数量减少到1024个,使得空间最优化。那些用不到的空间也就被遗弃了。
然后,我们为每个集群分配一个数字(0~1023)。这些被简化、量化的数字就是其所指集群的代号,这也是这项技术得名为矢量量化的原因。当新的输入矢量出现后,我们就用离这个矢量最近的那个集群数字表示。
根据每个集群中心点到其他集群中心点的距离,我们可以预先绘制一张表格。当新的矢量(我们用量化点来表示这个矢量,换句话说,就是这个新点到离它最近的那个集群的数字)进入系统时,我们就可以立即计算出这个新矢量与其他集群之间的距离。因为我们是用离这个点最近的集群的数字表示这个点的,所以我们就能知道这个点与以后加入这个集群的点之间的距离。
在描述这项技术时,我只用了两个数字来表示一个矢量,而在软件中每个点都由16个基本矢量来表示,虽然数量不同,但方法是一样的。因为我们采用了16个数字来表示16个不同的频率段,所以我们系统中的每个点都占据了一个16维的空间。人类很难想象三维(如果把时间这个维度加进去就是四维)以上的空间到底是什么样子,但是机器却没有这样的困难。
运用这项技术,我们已经取得了4项成果。第一,我们大大降低了数据的复杂性。第二,我们将16维空间数据缩小为一维空间数据(每个矢量都是一个数字)。第三,在研究传递尽可能多信息的可能声音的空间比例时,我们提高了寻找不变特征的能力。大多频率段的组合在物理上是无法实现的,至少是很难实现的,因此我们不需要给予不可能输入连接与可能输入连接同样的空间,这项技术使得减少数据成为可能。第四,即使原始数据包含多个维度,我们仍然可以使用一维模式识别器。这一方法可以高效使用可用的计算机资源。
用隐马尔可夫模型解读你的思维
利用矢量量化法简化数据的同时,我们还突出了信息的关键特征,但这还不够,我们还需要其他的方法来找出不变特征的层级结构,因为后者才是决定新信息是否有意义的关键。从20世纪80年代早期开始,我就从事模式识别研究,到现在已经有20年的知识积累,因此我非常了解一维数据在处理信息不变特征时的强大力量,及其高效性和便捷性。虽然在20世纪80年代初期,人们对大脑新皮质的认识并不多,但是从处理模式识别问题的经验出发,我推想人脑在处理数据时也是将多维数据(不管是来自眼睛、耳朵,还是皮肤)减少为一维数据,尤其是在处理新皮质层级结构传出的信息时。
至于语音识别这个难题,语音信号信息结构似乎呈现出一种层级结构,该结构的每一层又由一连串正向元素组成。一种模式的元素可能是另一种低层次模式,也可能是输入信息(在语音识别中,输入信息是我们的量化矢量)的基本组成部分。
你会发现我前面提到的模式与我之前提到的大脑新皮质模式很相似。因此,我们可以说:人类语言就是大脑类线性模式层级结构的产物。如果我们能够捕捉到说话人大脑中的这些模式,当他发表新言论时,我们只需将捕捉到的这些模式与我们储存的模式相比较,就能明白他在讲什么。但不幸的是,我们尚不能直接观察说话者的大脑,我们只知道他说话的内容。当然,他的话语成功地传达了他的目的,因为说话者就是通过语言表达思想。
所以我就在思考:有没有一种数学方法可以使我们依据说话者的话语推断出其大脑中的模式呢?当然了,只有一句话肯定是不够的,但是就算我们有庞大的语料库,我们能否利用这个语料库来推断出说话者新皮质内的模式呢?或者至少找到一种数学意义上的等值结构,我们可以利用这种等值结构识别新的话语?
图7—12 在隐马尔可夫模型中,从S1层到S4层
注:该图向我们展示了在隐马尔可夫模型中,S1层是跨越“隐形”内部状态到达到S4层的。Pi,j代表了由Si层跨越到SJ层的可能性。传播的可能性则由经过测试数据(其中也包括在实际使用过程中产生的数据)调整后的系统决定。通过将新序列(譬如一条新的语句)与原有序列相比对,我们就可以得到该模型识别出这个新序列的可能性。
人们往往不太重视数学的强大力量,要知道,我们在几分之一秒之内检索所需的知识利用的就是数学方法。至于我在20世纪80年代初研究语音识别时遇到的问题,隐马尔可夫模型给出了很好的解决方法。俄国数学家安德烈·安德烈耶维奇·马尔可夫(Andrei Andreyvich Markov)创建了“等级序列状态”的数学理论。该模型建立的基础是同一链条中状态跨越的可能性,如果上述条件成立,我们就能在下一个更高层级上激活一种状态。这句话听起来是不是很耳熟?
马尔可夫模型包含了所有可能发生的状态。马尔可夫进一步假设了一种情况:系统呈现出一种层级性的线性序列状态,但是我们无法直接观察到上面提到的状态,这就是隐马尔可夫模型中“隐”字的由来。在这个层级结构中,位于最底层的线性序列状态发出信号,这种信号可以被人类识别。马尔可夫提出一种数学方法,主要依据可见的输出信号计算状态改变发生的概率。1923年,诺伯特·维纳(Norbert Wiener)完善了这种方法。改善后的方法同时也为确定马尔可夫模型中的连接提供了解决方案,而且系统会直接忽略那些出现概率极小的连接。这很像人类新皮质处理连接的方法——如果某些连接很少或者从未被使用过,这些连接就会被视为不可能连接并被遗弃。在我们的情况中,可见输出就是说话者的语言信号,状态可能性和马尔可夫模型中的连接就构成了产生可见输出的新皮质层级结构。
我预设了一个系统,在这个系统中,我们不仅可以提取人类语言的样本,还可以借助连接和可能性以及利用隐马尔可夫模型技术推断出某个层级状态(本质上说是产生语言的模拟新皮质),然后再利用推断出的层级网络状态结构识别新话语。为了使这个系统与语言本身无关联,我们会使用很多不同个体的话语样本来培养隐马尔可夫模型。我们在层级结构中加入了构成语言信息的基本元素,所以模型也可称为隐马尔可夫层级模型(HHMMs)。
我在库兹韦尔应用智能公司(Kurzweil Applied Intelligence)的同事们却对这项技术表示怀疑,他们认为隐马尔可夫模型只不过是一种智能方法,会让人想起神经网络,但这种方法已经不再适用,使用这种方法收获甚微。需要指出的是,神经网络系统中的网络是固定的,不会因输入而改变:生物量会有所改变,而连接却不会。在马尔可夫模型系统中,如果系统设置正确,为了适应拓扑结构,系统会删去那些从未用过的连接。
我启动了名叫“臭鼬工厂”(名字源自一种管理原则,意为抛开惯例,不走寻常路)的项目,项目组成员包括:我自己,一名业余程序员和一名电气工程师(负责制作频率滤波器)。令人惊奇的是,我们的项目进展得很顺利,我们的产品可以准确地识别长句子。
试验成功后,我们后续的语音识别试验均以隐马尔可夫模型为基础。其他的语音识别公司好像也发现了这个模型的重要性,因此从20世纪80年代中期开始,自动语音识别研究绝大部分都是以此模型为基础的。隐马尔可夫模型同样也被应用到语言整合领域,因为我们的生物层级皮质结构不只要识别输入,也会产生输出,例如语言和身体运动。
隐马尔可夫层级模型也被应用到能理解自然语言句子的系统中,这些句子上升到了概念层级结构。
图7—13 隐马尔可夫模型中,产生自然语言时中层级状态和可能性连接示意图
为了弄清楚隐马尔可夫结构的工作机制,我们先来了解一种网络,它包含了所有可能的状态改变。上述矢量量化方法在这里非常有用,如果没有它,我们还要考虑更多的可能状态改变。图7—14是一张简化的初始拓扑图。
图7—14 隐马尔可夫模型识别两个单词的简单拓扑图
计算机逐一处理样本中的话语信息。为了更好地利用我们的语料库,我们反复修改每个话语状态改变的可能性。我们运用语音识别中的马尔可夫模型对每个音素中能发现声音特定模型的可能性、不同音素之间的影响以及音素的可能组合进行编码。这个系统也包括语言结构更高层次的可能性网络,例如:单词的序列、词组,甚至是语言层级结构。
尽管我们以前的语音识别系统都包含音素结构的特定规律,以及人类语言学家外部编码的序列,但以隐马尔可夫层级模型为基础的新系统中却没有明确地表明英语中有44个音素,音素矢量的序列,或者是哪些音素组合更为常见。相反,我们让系统在长时间处理人类语言信息的过程中自己发现这样的规律。相对于原来的人工编码而言,新系统会发现那些被人类专家忽视的概率性定则。我们发现系统自动从数据中习得的很多规则虽与人类专家定下的规则差别不大,但却更重要。
一旦网络构建完毕,假如知道输入矢量的实际序列,利用网络考虑可选择的路径,继而选择可能的路径,我们便开始尝试识别语音。换句话说,如果我们发现了有可能产生那个话语的状态序列,我们就可以断定那就是产生此话语的皮质序列。因为模拟隐马尔可夫层级模型包含单词规则,所以系统可以提供它听到的语音标音。
系统在使用过程中不断被完善,语音识别的准确率也越来越高。就像我之前介绍的那样,此系统可以跟人类新皮质结构一样,同时完成识别和学习这两项工作。
进化(遗传)算法
还有一个很重要的问题亟待解决:我们怎样设置控制模式识别系统工作的诸多参数?这些参数可能包括:矢量量化阶段的矢量数、层级状态的初始拓扑(在隐马尔可夫模型删去未用过的层级结构状态前的训练阶段)、层级结构中每层的阈值、控制参数数量的参数等。我们可以凭直觉设置这些参数,但结果却不会太理想。
我们称这些参数为“上帝参数”,因为这些参数早在决定隐马尔可夫模型拓扑结构的智能方法出现之前就存在了(生物学上是指早在他学习之前,他的新皮质层级结构中就有了相似的连接)。这也许会造成某种意义上的误读,因为这些基于DNA的初始设计细节是由生物进化过程决定的,尽管在进化过程中我们可能会发现上帝之手(虽然我真的认为进化是一种精神过程,对此第9章会进行讨论)。
在模拟分层学习机识别系统中设定这些“上帝参数”时,我们又从大自然中得到了启发,即在模仿大自然进化的基础上对之进行完善。这就是所谓的进化或者遗传算法,它包含了模拟的有性繁殖和突变。
下面是对这一算法的简单描述。首先,为了给出问题的解决方法,我们需要确定一种代码。如果问题是电路设计参数的优化,我们就列出决定这条电路特点的所有参数(每个参数都有特定的比特值)的目录。这个目录就是遗传算法中的遗传代码。然后,我们随机生成数以千计或更多的遗传代码。每个这类代码(体现了一套给定参数)都被视为“解决问题”的模拟机制。
通过使用评估每组参数的给定方法,我们可以在模拟环境中评估每种模拟机制。这种评估是遗传算法能否取得成功的关键。举个例子,我们会运行参数产生的每个程序,并用合适的标准(是否完成了任务,完成任务所耗费的时间等)对其加以评估。最好的问题解决方案(最好的设计)会被选择出来,其他的则会被淘汰。
接下来就是优胜者的自我繁衍,繁衍的个数与模拟生物数量相同时,这个过程才会停止。这个过程的完成仿照了生物的有性繁殖,换句话说,后代的诞生通常是从母亲和父亲那里分别遗传一部分基因,然后形成自己的基因。通常情况下,雄性机制和雌性机制没有明显的差别,任何一对父母都可以孕育新生命,所以我们这里讨论的是同性婚姻。这可能不像自然界中的有性繁殖那样有趣,但是这种繁殖仍有双亲。在模拟机制繁殖的过程中,我们允许染色体发生突变(随机变化)。
现在,我们仅仅完成了一代模拟进化,接下来要做的就是重复上述步骤生成更多代新机制。每代机制完成后,我们会评估其改善程度(利用评价函数计算所有优胜机制的平均改善度)。如果两代机制之间的改善程度非常小,我们就停止这种繁衍进程,并使用上一代的最优机制。
遗传算法的关键是:人类并不直接将解决方法编程,而是让其在模拟竞争和改善的重复过程中自行找到解决方法。生物进化力量虽强大但是过程却太过缓慢,所以为了提高其智能,我们要大大加快其进化速度。计算机能在几个小时或者几天之内完成数代的进化,但有时我们会故意让其花费数周时间完成模拟成百上千代的进化。但是我们只能重复这种过程一次。一旦这种模拟进化开始,我们就可以用这种高度进化、高度完善的机制快速解决实际问题。对于语音识别系统,我们就可以用这种机制完善网络的初始拓扑结构以及其他重要参数。在这一过程中我们采用两种智能方法:利用遗传算法,我们可以模拟生物进化,得出最优机制;利用隐马尔可夫模型,我们可以模拟人类学习过程中起重要作用的皮质结构。
遗传算法要想成功还需要一种能有效评价每种可能性解决方案的方法。考虑到每一代模拟进化过程中的数千种可能方案,评价方法必须简单易行。在解决那些变量很多又需要计算出精准分析方案的难题时,遗传算法非常有效。例如,我们在设计发动机时就得处理超过一百个变量,而且还需满足众多的限制条件。与传统算法相比,美国通用电气公司利用遗传算法设计出了能够更好地满足限制条件的喷气发动机。
在使用遗传算法时,你必须很清楚地知道你的需求。遗传算法虽能完美地解决货物储存划区问题,但步骤却很繁杂,因为程序员忘了在评价函数中加入减少步骤这一条件。
斯科特·德拉维斯(Scott Drave)的电波项目(Electric Sheep Project),则是遗传算法的艺术杰作。此项目的评价函数使用人类评估程序,这种程序融合了数千人的开源合作。电波会随着时间的变化而变化,你可以进入网站(electricsheep.org)观看。
要解决语言识别中的难题,遗传算法和隐马尔可夫模型的结合极其有效。运用遗传算法模拟进化可以大大地提高隐马尔可夫层级结构网络的性能。生物进化模拟的机制远远优于基于直觉的原始设计。
在此基础上,我们又尝试对整个系统作了一点微小的调整。例如,我们会对输入信息做出微小扰动(幅度很小的随机变化)。再者,我们还尝试让马尔可夫模型算出的结果影响其临近模型的运算,从而使某个模型“混进”其相邻的模型中。虽然当初我们不曾想到这些调整和新皮质结构之间的关系,但后来事实证明两者极为相似。
试验开始时,这类改变会影响系统的性能(以识别准确率为标准)。但当我们开动进化程序(即遗传算法)后,这些被放在适当位置的改变调整项就会对应地适应系统,系统也因为这些引入的调整项得到优化。总体来看,这些改变优化了系统的性能。如果我们剔除这些调整项,系统的运行效能也会随之下降。因为系统已经进化升级,新的系统也因此更能适应新变化。
对输入信息作出微小、随机的调整也可以提高系统的性能(重启遗传算法),因为这种做法解决了自主系统中著名的“过度契合”难题。否则,这样的系统就会过分局限于试验样品中的特殊例子。通过对输入信息进行随机调整,数据中更稳定的不变特征就会凸显出来,系统也能够提炼出更深层次的语言模式。只有在运行遗传算法,并以随机特征为变量时,这种方法才有效。
如此一来,在理解生物皮质回路时,困难就来了。例如,我们注意到,一个皮质连接产生的信息可能会溜到另外一个皮质连接中,这就形成了人类大脑皮质连接的工作方式:电化学的轴突和树突显然受到其临近连接电磁效应的影响。假设我们在试验中把这种影响从人类大脑中剔除——虽然实际操作很难但并非不能实现,假设我们成功地完成了该项实验,并发现去掉神经泄露的皮质电路工作性能有所下降,我们便可据此得出结论:这种现象是大脑进化的结果,也对皮质电路的高性能起着至关重要的作用。必须指出的是,由于连接之间复杂的互相影响,这种结果表明:实际上,概念层级结构模式的有序模型以及层级之下的预测更为复杂。
但这种结论也并不准确。回想一下我们基于隐马尔可夫层级模型建构的模拟皮质,我们也做了类似神经元间交叉谈话的调整。如果我们适当地运行进化程序,系统的性能就会随之恢复(因为进化程序已经适应了);如果我们剔除这种交叉谈话,系统的性能又会随之下降。从生物学意义上来说,进化(生物进化)确实会造成这种现象。要适应新因素,生物进化会重新设定详细的系统参数,除非重新进化,否则参数的改变就会降低系统性能。这项试验在模拟环境中可以实行,因为在模拟环境中,进化只需要几天或几周,但是在生物环境中却很难做到,因为这需要数万年的时间。
那么,我们该如何分辨以下几个方面呢?究竟人脑新皮质的特定设计特征是不是生物进化引起的关键创新,或者说对智力水平有很大影响,又或者说仅仅是系统设计所需的,但却不一定形成了?只需加入或删除设计细节的特定变量(如有无连接交叉谈话),我们就能回答这些问题。如果选取微生物作为试验对象,我们也可以观察生物进化是如何进行的,因为微生物代际进化只需要几小时,但同样的实验以人类这种复杂的生物为研究对象却无法实行。这也是生物学的缺点之一。
回到语音识别上来,我们发现,如果分别让(1)负责建构音素内部结构的隐马尔可夫层级模型和(2)负责建构单词和词组的隐马尔可夫层级模型分开运行进化程序(遗传算法),语音识别的效果更加理想。系统的两层都使用了层次隐马尔可夫模型,但是遗传算法可以在不同的层级形成不同的设计变量。该方法中,两层级之间的现象建构是可以共存的,如:连读时,音素的某些音就会模糊化,“How are you all doing”可能会转变为“How're y'all doing”。
不同的大脑皮质区域也有可能出现类似的现象,因为基于处理过的模式类型,它们已经形成了细微的差别。尽管所有区域都使用相同的新皮质算法,生物进化还是有充足的时间调整每部分的设计,使得模式之间的配合达到最优化。然而,就像之前讨论过的,神经系统学专家和神经病学专家已经注意到了这些区域中的巨大可塑性,而这种可塑性为一般神经算法提供了依据。如果每个区域的基本方法不同,皮质区域之间是不会互相交流的。
通过结合不同的自主算法,我们构建的系统获得了成功。在语音识别的过程中,它们能够首次识别流畅的句子和相对来说比较清晰的词语发音。就算说话者、语调和口音有所差异,系统也能保持相当高的识别率。当下这个领域的代表产品是Nuance公司针对计算机开发的产品Dragon Naturally Speaking(版本11.5)。假如对语音识别率有高要求的话,我建议可以尝试一下这款产品,因为该产品的识别率通常可以达到99%,而且通过句子和无限词汇识别的训练适应你的声音后,产品的识别率可能会更高。对苹果公司而言,Dragon Dictation是简单而免费的应用,苹果用户都可以使用该应用。苹果手机上的Siri程序也采用了相同的语音识别技术来识别说话者的话语。
这些系统的表现证明了数学的威力。借助数学方法,就算无法直接进入说话者的大脑,我们也能够了解说话者新皮质内的活动,后者在Siri这样的系统中,对识别说话者语言和确定说话者话语意义的起着至关重要的作用。我们也会好奇:如果我们真的能够观测到说话者新皮质内部的活动,能否发现软件计算出的隐马尔可夫层级模型的连接和权重?我们基本上无法找到精确的匹配,因为与电脑中的模型相比,神经元结构细节差异更大。但我坚信:实际生物和模拟出的模型之间的高精确性肯定存在着某种数学对等体,否则,那些模拟出来的系统为什么会像它们那样运行呢?
列表处理语言LISP
LISP(全名List Processor)是一种计算机语言,由人工智能领域的开拓者约翰·麦卡锡(John McCarthy)于1958年创造出来。如名字所示,LISP跟列表相关。每个LISP表达式就是一个元素列表,其中的每个元素要么是另外一个列表,要么是一个“原子”,后者可能是最简形式的数值或符号。列表的子列表仍可以是该列表本身,所以LISP可以循环递归。LISP语句还有另一种递归形式:第一个列表包含第二个列表,第二个列表包含第三个列表……循环递归直到回到第一个列表,循环就结束了。正因为列表具有这种包含性,所以LISP语言也能够处理层级结构。列表也可以作为系统的限制条件,且只有在满足列表的限制条件时,程序才可以正常运行。如此一来,这个由限制条件组成的层级结构就可以被用来识别模式越来越抽象的特征。
20世纪70年代和80年代初期,LISP语言曾在人工智能领域风靡一时。早期对LISP持乐观态度的人认为LISP语言再现了人脑的工作方式,而且LISP语言可以简化,使得任一种智能程序高效运行。所以当时,LISP程序员和LISP的相关产品在“人工智能”领域备受追捧。但到了80年代后期,当人们发现LISP算法并不能为人工智能领域的发展提供捷径时,对它的投资也就随即减少了。
事实证明,对LISP持乐观态度的人的观点并非无可取之处。我们可以将新皮质的某个模式识别器视为一个LISP语句——每个语句由一个成分列表组成,每个语句成分又可能是另外一个列表。按照这种方法,新皮质处理信息的方法在性质上与列表处理非常相似。而且,新皮质可以同时处理3亿个类似LISP的语句。
但是,LISP语言缺少两种重要特征。一个是缺少学习的能力。LISP程序语句完全由程序员设定。虽然人们曾经尝试了很多方法,以期让LISP程序自我编码,但那些方法并不完全由LISP语言自行产生。与此相反,大脑新皮质则具备这种能力,它可以从自身的经验和系统的反馈中不断选取有意义且可以被执行的信息来填充语句(即列表),然后自行编程。这是新皮质工作的重要原则:每个模式识别器(即每一个类似LISP的语句)可自行编程,且能与它的上、下级列表相连接。另一个就是参数的数量。虽然人们可以人为地生成一系列包含这些参数的列表(生成方式为LISP),但这并不是语言自身所固有的特性。
LISP语言迎合了人工智能领域的原创理念,即找到一种智能方法自行解决问题,而且这种方法可以通过计算机编程实现。这种智能方法的首次尝试是应用于神经网络,但试验不是很成功,因为它不能提供学习修改系统拓扑结构的方法。而通过自身的机制修建,隐马尔可夫层级模型却成功地解决了这个问题。如今隐马尔可夫层级模型及其数学“堂弟”——遗传算法充当了人工智能领域的主力军。对比了LISP语言中的列表和大脑新皮质列表之后,有些人给出了这样的结论:大脑太过复杂,人类难以完全理解大脑。这些批评家指出:大脑有数万亿个连接,而且每个连接都有自身的特点,这就需要数万亿条语句与之相对应。据我估计,大脑新皮质大约拥有3亿个模式处理器——或者说3亿个列表,列表中的每个元素又指向另一个列表(或者从最低概念层次来说,指向新皮质以外的不可简化的模式)。3亿这个数字对LISP语句来说确实太大,目前人类还没有写出过能包含如此多语句的程序。
但是我们也应该知道,这些列表并非在神经系统的最初设计中就被定型了。大脑自行生成了这些列表,并根据自身的经验建立了各个级别之间的连接。这就是大脑新皮质的秘密。自行完成这项任务的程序要比形成新皮质能力的3亿个语句简单得多。那些程序由染色体设定。正如我将在第11章介绍的,染色体组中负责处理大脑信息的信息量(经过无损压缩后的数量)大约有2500万个字节,相当于100万个语句。实际算法甚至还要简单,因为这2500万的基因信息只是神经元的生理需要,并不具备基因组处理信息的能力。2500万个字节我们还是可以处理的。
分层储存系统
在第3章中我已经提到,杰夫·霍金斯和迪利普·乔治分别于2003年和2004年发明了一种结合了层级列表的新皮质模型。我们从霍金斯和布莱克斯利2004年的著作《人工智能的未来》(On Intelligence)中查询到此层级列表的相关信息。在迪利普2008年的博士论文中,我们还可以找到对层级短期记忆法的更加紧跟时代步伐、更加有力的论述。在名为NuPIC(Power Analytics Corporation)的系统中,Numenta公司运用了这个方法,并且为福布斯公司和动力分析有限公司这样的客户研发了模式识别和智能数据挖掘系统。离开Numenta公司后,乔治开了一家名为代理系统(Vicarious Systems)的新公司。该公司得到了Founder Fund公司(由Facebook背后的风险投资家彼得·泰尔和Facebook的第一位总裁肖恩·帕克共同管理)和达斯汀·莫斯科维茨(Dustin Moskovitz,Facebook的创始人之一)领导的Good Ventures公司的资助。
在智能建模、学习和识别含有多层次结构的信息方面,乔治取得了巨大的进步。他称其系统为“递归皮质网络”,并打算将之应用到诸如医学成像和机器人技术等领域。从数学上来看,隐马尔可夫层级模型和层级储存系统非常类似,尤其是当我们允许隐马尔可夫层级模型自行组织不同模式识别模块之间的连接时,两者更为相像。隐马尔可夫层级模型还有另一个重要的作用,即通过计算当前模式存活的可能性,隐马尔可夫层级模型可以对输入信息的重要性进行等级建模。
最近我新开了一家名叫模式(Patterns)的有限责任公司,通过利用隐马尔可夫层级模型和其他一些相关技术开发智能的新皮质层级结构模型,从而理解识别自然语言。其中一个重要的出发点是设计出的模型可以像生物新皮质那样自行组建层级结构。我们设想的系统不仅可以顺利阅读各类资料,诸如维基百科和其他一些信息,还可以听懂你的每句话,识别你的每个字(如果你愿意写的话)。我们的目标就是让它成为你的一位良友,甚至不用问,它就能猜出你内心的疑问并作出回答,还可以随时为你的生活提供有用的信息和建议。
人工智能的前沿:登上能力层级顶端
1.一个徒有其表、胸无点墨的演讲者冗长无趣的发言。
2.为欣赏歌剧特意给孩子穿上的晚礼服。
3.12年来胡鲁斯加国王的士兵不断被杀,官员贝奥武夫被派来解决这一难题。
4.它可能是随着思维的发展而形成,也可能早在怀孕期就已形成。
5.国际教师节和肯塔基德比赛马日(Kentucky Derby)。
6.华兹华斯(Wordsworth)曾说它们不会漫步闲逛,一定会直飞云霄。
7.固定在马蹄上的铁制品或赌场里发牌的盒子上印着的4个字母的单词。
8.意大利歌剧作曲家威尔弟1846年创作作品中的第三场,情人奥黛贝拉受到了上帝的惩罚。
这些是节目《危险边缘》中的提问,沃森全部给出了正确的答案。答案是:甜酥饼式的长篇大论、围裙、格伦德尔、孕育、五月、云雀和鞋子。对于第8题,沃森先回答:“阿蒂拉是谁?”主持人回他:“能更具体吗?”沃森便明确答道:“匈奴王阿蒂拉是谁?”这就是正确答案。
计算机寻求《危险边缘》游戏提问线索的技术与我的颇为相似。计算机会先找到线索中的关键词,然后在自身的记忆中(在沃森的例子中,该记忆是指拥有15兆兆位的人类知识的数据库)寻找与关键词相匹配的话语。计算机会严密排查能从上下文信息中得知的那些排名靠前的搜索结果:类别名称、答案类型、时间、地点,以及提示信息中暗示的性别等。当计算机认为信息量足够确定答案时,便会给出答案。这一过程对《危险边缘》的参与者而言,既迅速又自然,而且我认为在回答问题时,大脑差不多也是如此运作的。
肯·詹尼斯,(《危险边缘》的冠军,后输给沃森)
我是欢迎机器人当霸主的人之一。
肯·詹尼斯(输给沃森后借用《辛普森一家》的台词)
天啊!(沃森)回答《危险边缘》的问题比一般参加者更聪明。这真让人惊讶!
塞巴斯蒂安·特龙(人工智能标准实验室前任负责人)
沃森什么都不懂。他只是一个大型蒸汽压路机。
诺姆·乔姆斯基
人工智能无处不在,发展形势也势不可当。通过短信、电子邮件或者电话与人联系这一简单行为就是用智能算法发送信息的。几乎每一款产品都是先由人脑和人工智能合力设计出来,再在工厂自动生产的。假设明天所有的人工智能系统都罢工了,社会便会瘫痪:我们不能正常从银行取款,存款自然也就化为乌有;通信、交通和生产也会全部中断。不过还好,我们的智能机器还没有聪明到能够策划这样的阴谋。
人工智能呈现出一种新特点,即该技术已经彻底改变了普通大众的生活。例如谷歌的无人驾驶汽车(截至本文写作时,该车已跑过20多万英里),这项技术可以提供明显减少撞车事故、提高道路流通率、降低开车时操作的复杂性等一系列好处。尽管无人驾驶汽车可能到本世纪末才会在世界范围内广泛使用,但只要这种汽车能遵循某些规定,它就可以在内华达的公共街道上合法行驶。汽车已配备了自动注意道路情况,以及提醒司机危险迫近的功能。该项技术有一部分基于大脑视觉处理模型,该模型由麻省理工学院托马索·波焦(Tamason Poggio)教授成功研发。波焦的博士后学生安农·沙思娃(Amnon Shashua)进一步开发了这一模型,研究出移动眼球(MobilEye)技术。这项技术能警告司机将会发生的碰撞或者有小孩在车前奔跑等危险状况。最近,沃尔沃和宝马等厂家生产的汽车已经安装了这种设备。
有几个原因使得我要在这部分集中讨论一下语言技术。毋庸置疑,语言分层的本质反映出我们思维分层的本质。口语是我们将要讨论的第一个术语,书面语是第二个。如本章所述,我在人工智能领域的工作便是以语言为中心的。掌握语言是靠大量积累而成的一种能力。沃森已经阅读过数亿网页,并且掌握了文档中所包含的知识。最终,机器能够掌握网上的所有知识——也就是人-机文明的全部知识。
鉴于计算机能够以文字信息进行正常的语言交流,英国数学家阿兰·图灵(Alan Turing)进行了以他名字命名的测试。图灵认为语言包含、体现了所有的人工智能,只借助简单的语言技巧,机器是无法通过图灵测试的。尽管图灵测试是一项涉及书面语的游戏,图灵却坚信计算机通过测试的唯一方法就是真正拥有与人类水平相当的智能。评论家提出,完整的人类水平智能测试应当包括掌握视、听信息能力的测试。因为我的很多人工智能项目包含了教计算机掌握如人类语言、字母形态以及音乐声音之类的感觉信息,因此我也十分支持在真正的智能测试中加入这些信息形式。但同时,我也赞同图灵最初的看法:图灵测试只进行文本信息的测试就足够了,因为在测试中增加视觉或听觉信息并不会增加该测试的难度。
即使不是人工智能专家,人们也会被沃森在《危险边缘》中的表现所震撼。虽然我明白沃森关键子系统中使用的方法,但这根本不会降低我观看他表现的好奇心。即使完全了解系统每一部分的工作原理——实际上无人做到这一点,也不能帮你预测沃森在某种情境下的实际反应。因为它包含了数百个互相影响的子系统,每个子系统又要同时处理数百万个相互矛盾的假设,所以我们不可能预测沃森的实际表现。如果要全面研究沃森的思考过程,一个3秒钟的问题就会让我们花掉数百年的时间。
继续讲我的故事。20世纪80年代末和90年代,我们开始研究某些领域对自然语言的理解。我们提供一种叫作“库兹韦尔声音”(Kurzweil Voice)的产品,你可以对着它讲任何你想讲的话,只要与编辑文档相关即可,例如“将前一页的第三段移动至此”。在这一有限却实用的领域中,库兹韦尔声音表现良好。我们还将这一产品延伸到医疗知识领域,医生可以借助它记录病人的报告。上述产品对放射学和病理学相关领域的知识也有足够的了解,如果报告有不清楚的地方,该产品就会向医生提出疑问,并在报告过程中引导医生。这些医疗报告系统已经发展为Nuance公司价值百万美元的企业项目。
鉴于自然语言理解在自动语音识别中的应用,自然语言理解已成为当下研究的主流。截至写作本书时,苹果4S上自动个人助手Siri在移动计算机界造成了巨大影响。你可以吩咐Siri做任何智能电话可以做到的事情,比如“附近哪里可以吃到印度食品”,或者“给妻子发条短信说我正在路上”,或者“大家对布拉德·皮特的新电影有什么看法”。而且,大多数时候Siri都会回答。Siri还会发出少量没有实际意义的闲聊用来娱乐。如果你问它生活的意义何在,它会回答“42”,因为《银河便车指南》(The Hitchhiker's Guide to the Galaxy)的粉丝把它作为“生命、宇宙和一切终极问题的答案”。沃尔弗拉姆·阿尔法会回答那些知识性问题(包括生活的意义),对此的描述详见后文。“聊天机器人”很多,它们什么事都不做只是闲聊。如果你想跟我们名叫拉蒙娜的聊天机器人聊天,请访问我们的网站KurzweilAI.net,并点击“与拉蒙娜聊天”。
有人向我抱怨Siri不能满足某些要求,但我发现这些人也总是不断抱怨人工服务。有时我建议他们跟我一起试用Siri,之后他们觉得Siri的表现超出了预期。这些抱怨让我想起了那条会下国际象棋的狗的故事。它的主人如此回答满腹疑惑的人:“是真的,它的确会下棋,只是结局比较惨。”Siri现在也开始遇到强劲的对手,比如谷歌语音搜索。
普通公众与掌上电脑进行自然对话是新时代的标志。人们往往会因为某物存在缺陷就对其予以否定,第一代技术也没有逃脱这种命运。即使多年后,此项技术成熟了,人们还是没有重视它,因为它早已过时。但事实上,Siri作为第一代技术的产物运行优良,而且这款产品会越来越受欢迎。
Siri使用的是Nuance基于马尔可夫层级模型的语音识别技术。自然语言的外延最先是由美国国防部高级研究计划署赞助的CALO项目开发的。Nuance的自然语言技术优化了Siri的功能,还提供了一项与Siri非常类似的技术——“游龙”(Dragon Go)!
理解自然语言使用的方法与理解隐马尔可夫层级模型有很多相似之处,实际上,隐马尔可夫层级模型本身的使用就很广泛。有些系统并没有明确标明使用的是马尔可夫层级模型还是隐马尔可夫层级模型,不过这两种模型工作的数学原理是完全一样的。它们都包含线性序列层级,其中的每个元素都有自己的权重、能够自我调试的连接,以及基于学习数据建构的全套智能系统。通常,在实际运用这些系统的过程中,学习得以延续。这一方法与自然语言的层级结构相适应——从词性到单词,到短语,再到语意结构,只不过是抽象概念的自然延伸。在参数上运行遗传算法也是有意义的,因为这些参数控制这种分层学习系统的精确学习算法,并选择最优化算法细节。
在过去10年中,创造这些分层结构的方法有了新的变化。1984年,道格拉斯·莱拉特(Douglas Lenat)踌躇满志地启动了循环(Cyc,代表enCYClopedic)项目,该项目着眼于创造能够整理日常“常识性”知识的规则。这些规则组成了庞大的层级结构,每条规则自身又包含一个线性状态链。比如,一条循环规则可能表示狗有一张脸。然后,循环便联系与脸型结构相关的一般规则:有两只眼睛、一只鼻子、一张嘴,等等。我们虽然希望创建额外的规则以区别狗的脸与猫的脸,但不需要为狗的脸创建一套规则,再为猫的脸创建另一套。这一系统还包括推导引擎:如果有规则规定猎犬是一种狗,狗是一种动物,动物要吃食物,那么我们问推导引擎猎犬吃不吃东西,它会给出肯定回答:猎犬要吃食物。在未来20多年中,集千人之力,将有十多亿条这类规则被编写、测试。有趣的是,编写循环规则的语言,即Cycl,几乎与LISP语言完全一样。
与此同时,对立学派认为理解自然语言,或者是创建一般意义上的智能系统最好的办法就是通过自动学习,也就是让系统处理与系统设计目的相符的巨量信息。证明这一观点最有力的例子就是谷歌翻译,它可以在50种语言间互译。尽管谷歌翻译包含了2500种不同的翻译方向,但大多数语言并不能直接互译,翻译仍然需要以英语为中介语言。因此,谷歌需要的译员就减少到98位(外加少量与英语不匹配、可以直接互译的译员)。谷歌译员并不使用语法规则,而是为每一对语言的普通互译创造大型数据库,其基础是“罗塞塔石”语言库中两种语言间的翻译文档。对于6种联合国官方语言,谷歌使用的是联合国的文件资料,因为这6种语言的资料都会出版;对于不那么常用的语言,谷歌就使用其他资源。
结果往往让人惊讶。美国国防部高级研究计划署每年都会举行不同语言间最佳自动语言翻译系统竞赛,谷歌翻译经常在某些语言翻译竞赛中胜出,因为它打败了那些以语言学家发现的语言规则为基础的系统。
过去10年右两大观点对理解自然语言产生了重大影响。第一个观点与层级结构有关。尽管谷歌的方法从对应语言间词语的序列开始,但其运行必然受到语言内部层级本质的影响。那些在方法上使用了层级学习(如隐马尔可夫层级模型)的系统明显表现得更好,但这样的系统不是自动建立的。人类一次只能学习一个抽象层级,电脑系统也一样,因此我们要仔细控制学习进程。
第二个观点是手动建立的规则较为适合普通基本知识的核心部分。这种方法翻译的短文常常更精确。比如,在短文翻译方面,美国国防部高级研究计划署将基于规则的中译英译员排在谷歌翻译前面。对于语言的尾巴,即那数百万个不常用的短语和概念,基于规则的系统翻译的精确度低得让人难以接受。如果我们以训练数据量为参数绘制自然语言理解精确度的图表,基于规则的系统最初性能很高,但随后精确度就降低到70%。与此相对,基于语料库的翻译系统的准确度高达90%,但需要庞大的数据库作为支撑(见图7—15)。
图7—15 自然语言识别系统的准确率是训练数据容量
注:自然语言识别系统的准确率是训练数据容量的一个函数。提高该系统准确率的最好方法就是将两者结合:对语言的核心部分,我们用人工规则对其加以规定;对语言的其他“分散”规则,我们则需通过数据统计的方法对其加以规定。
我们常常需要将基于少量训练材料的中度性能与获得数量更多、更精确的翻译的机会相结合。迅速获得中度性能使得我们能在某一领域嵌入系统,然后自动收集人们使用该系统后留下的数据。这样,人们使用系统时系统也能大量学习,精确度就会有所提高。要反映语言的本性,这种数据学习就得充分分层,而语言本质也反映了人脑的工作机制。
这也是Siri和游龙的运行机制——对最常见的和特定的语言现象使用规则翻译法,然后学习语言“尾巴”在实际生活中的用法。循环团队在以人工编码为基础改进系统遇到性能瓶颈时,也采用这一方法。人工编码的规则有两个必备的功能。首先,它们一开始就能提供足够的原始精确度,这样试运行系统就能广泛应用,并在使用过程中自动优化升级。其次,它们能为级别较低的抽象层级提供坚实的基础,这样智能学习就能习得更高概念层的知识。
如上所述,沃森是人工编码规则与分层数据学习结合的典型例子。IBM将许多自然语言节目结合起来创造了一个可以玩《危险边缘》游戏的系统。2011年2月14日至16日,沃森与两位名列前茅的参与者竞赛——布兰德·拉特尔在竞猜节目中赢得的奖金无人能及;肯·詹尼斯曾赢得《危险边缘》的冠军,这一纪录保持了75天。
20世纪80年代中期,我完成了第一部著作《智能机器时代》。在书中,我曾预测电脑会于1998年成为国际象棋冠军。我还预测到那时我们要么降低对人类智力的看法,提升对机器智能的看法;要么降低国际象棋的地位。如果历史是一位向导,我们会将象棋最小化。这些事在1997年都应验发生了。当IBM的超级国际象棋计算机“深蓝”战胜了人类国际象棋冠军加里·卡斯帕罗夫时,我们立即面对这样的争辩:电脑会赢也是情理之中的事,因为电脑是有逻辑的机器,而国际象棋又是具有逻辑性的游戏。这样,深蓝的胜利显得既不让人惊讶,也不再那么重要了。许多评论家继续争辩,提出电脑永远不能掌握人类语言的细微差别,包括暗喻、明喻、双关修辞、语意双关和幽默。
这也是沃森的胜利具有里程碑意义的原因:《危险边缘》是一个相当复杂、极具挑战性的语言游戏。《危险边缘》中的提问包括了许多人类语言的奇怪变体。许多人可能不会相信,沃森不仅正确回答了那些千奇百怪、复杂难解的问题,而且它利用的大部分知识都不是手工编码的。沃森之所以成功,是因为它阅读过两亿页自然语言材料,其中包括维基百科的所有网页和其他百科全书,足足有4兆字节。正如本书读者所了解的那样,维基百科不是用LISP或者Cycl写成的,而是包含歧义和复杂逻辑的自然语句。在对问题作出回应时,沃森会参考这4兆字节资料,然后回答问题(我发现《危险游戏》寻找答案的过程其实是在寻找问题,但这只是一个技术性问题——答案其实也是问题)。如果沃森能够在3秒内,在两亿页知识的基础上理解并对问题作出反应,那类似的系统也能在网上读取其他上亿个网页资料。实际上,人们正在为此而努力。
20世纪70年代到90年代,我们在研发字符和语言识别系统以及早期的自然语言理解系统时,“专家经理”这个方法占据了主导地位。我们研发不同的系统、运用不同的方法,但解决的是同一个问题。系统之间的差别有时很小,譬如只是控制学习算法的参数不同而已;但有些差别确实很大,例如用以规则为基础的系统代替以分层统计学习为基础的系统。“专家经理”本身也是一个软件,通过实时测试性能,总结出这些不同程序处理问题的优缺点。它认为这些系统的优点呈现正交分布:即一个系统在这方面是强者,在其他方面就是弱者。实际上,在调整后的“专家经理”的管理下,这些系统整体的表现远远好于单个系统的表现。
沃森的工作方式也是如此。借助非结构化信息管理框架(UIMA),沃森设计了几百个不同的系统。沃森系统中很多的个体语言组成与大众使用的自然语言理解系统是一样的,这些系统要么直接对《危险边缘》的提问给予回答,要么至少简化某些提问。UIMA就像一个“专家经理”,需要智能整合不同系统的运算结果。但它远远超越了那些早期系统,如Nuance的前身研发出的系统,因为就算它的个体系统没有提供最终答案,这些系统还是能为最终结果献出自己的一份力量——只要能缩小解决方案的范围就足够了。UIMA能计算出得出最终答案的概率。人脑也能这样——在问到母亲的姓氏时,我们对自己的答案会很自信,但是要说出很多年前偶然遇到的那个人的姓氏时,我们就没那么自信了。
因此,为了找到一个能够理解《危险边缘》中固有的语言问题的优雅方法,IBM的科学家将他们能得到的所有艺术语言理解状态模型结合在一起。有些人利用隐马尔可夫层级模型;有些人采用隐马尔可夫层级模型的数学变体;另外一些人则运用规则方法直接编码一套可靠规则。UIMA根据每个系统在实际使用过程中的表现,以最优的方式对不同系统进行整合。但是公众对沃森系统有一些误解,他们认为IBM创造沃森系统的专家们太过关注UIMA,即他们所创造的专家经理。有些评论家认为沃森系统并没有真正理解语言,因为很难知道理解位于哪个部分。尽管UIMA也会借鉴自己以前的经验,但沃森对语言的理解并不仅仅位于UIMA,而是分散在很多组成部分中,包括使用与隐马尔可夫层级模型同样方法的智能语言模块。
在决定应在《危险边缘》游戏中下多大的赌注时,沃森技术的某个特定部分会使用UIMA的信心指数评定系统。虽然沃森已特意为这种游戏升级了系统,但核心语言—知识—搜索技术却能执行更多的任务。有人肯定会认为掌握不常用的专业知识,如医学知识,要比掌握那些玩《危险边缘》游戏所需的大众化知识更难。然而事实却恰恰相反:专业知识的脉络更加清晰,结构更加完整,而且相对来说,信息歧义程度较低,所以沃森可以非常容易地理解这些精准的自然语言。IBM公司目前也正与Nuance公司联手打造面向医学用途的沃森系统。
沃森在玩《危险边缘》这个游戏时的系统对话非常简单:出现一个问题,沃森寻找相应的答案,从技术上来讲,就是提出问题并给出答案。在一个对话中,沃森并不需要回顾所有对话者之前的谈话内容(Siri系统则需要回顾部分内容:如果你要求它给你的妻子发条短信,第一次,它需要你指认你的妻子,但以后就不需要你重复指认了)。虽然回顾对话中的所有消息——这显然是一个需要通过图灵测试的任务,是一个额外却很重要的任务,但是任务难度并不比沃森的提问回答任务高。毕竟,沃森已经阅读了数百万页的读物,其中自然包含了很多故事,所以它能够追踪复杂的序列事件。沃森也应该可以追溯自己以往的对话,并在下次回答问题时将其列入知识库。
《危险边缘》的另外一个缺点是问题的答案都比较简单。例如,它不会要求竞猜者归纳《双城记》(A Tale of Two Cities)的5个主题。针对这个问题,沃森会找到讨论小说主题的相关文件,并整理出自己的答案。通过自己读书找到答案,而不是抄袭其他思考者的观点(即使没有书面文字),这又是另外一个问题。如果要让沃森自己读小说找到答案,目前来说,对沃森而言显然是一个更高水平的任务,而前者就是我所谓的图灵水平测试任务(需要指出的是,大部分人对此也没有自己的原创观点,而是吸收借鉴了同辈或者专业人士的观点)。现在是2012年,不是2029年,所以我不会期待沃森可以回答图灵智力水平测试这一难度的问题。而且我还要指出:概括小说主题这种级别的问题并不是简单的任务。对于谁签署了《独立宣言》这样的问题,我们可以对其给出的答案作出正确或者错误的判断。但是对概括小说主题这样高难度的问题,我们无法轻易判断其答案的正确性。
值得注意的是,虽然沃森的语言能力低于受教育者的语言能力,但是它却可以成功打败在《危险边缘》中表现最好的两个选手。成功的秘诀在于:借助其拥有的完美回忆功能和准确记忆能力,沃森可以将它的语言技能和知识理解能力完美结合。这就是我们要将个人的、社会的或者历史的信息储存在沃森系统内的原因。
我并不打算论述我的推测——到2029年计算机能够通过图灵测试,但是从目前诸如沃森系统取得的进步来看,图灵等级的人工智能应该能够实现。如果有人可以研制出为图灵测试优化的沃森系统,那便离我们目标的实现又近了一步。
美国哲学家约翰·塞尔(John Searle)最近提出了一个论点:沃森不具备思考的能力。他援引了自己名为“中文屋”(Chinese room)的思想实验(将在第11章详细阐述),说明沃森只是能够熟练地运用那些符号,却不能真正理解那些符号背后的意思。实际上,塞尔并未正确地描述沃森这个系统,因为沃森对语言的理解不是基于对符号的理解,而是基于分层数据过程。假如我们认为沃森系统的智能过程只是熟练地运用符号的话,塞尔的评价就是正确的。但如果真的是这样的话,人脑也就不能思考了。
在我看来,那些批评沃森只会对语言进行数据分析,而不能像人类那样真正理解语言的批评家是非常可笑和滑稽的。人脑在处理各种各样的假设时,也是基于数据信息(新皮质层级结构的每一层都是如此),并通过分层数据分析的方法处理信息的。沃森和人脑都是借助分层理解来学习和作出反应。在很多方面,沃森的知识要比单个人的知识丰富得多,没有哪个人敢说自己掌握了维基百科内的所有知识,而维基百科内的知识只是沃森知识库的一部分。与此相反,每个人掌握的概念层次要比沃森多,但是这种差距是可以跨越的。
Wolfram Alpha是衡量处理组织化信息计算能力的重要系统,这个知识引擎(与搜索引擎相对),是由英国数学家、科学家沃尔夫勒姆博士与他的沃尔夫勒姆研究中心(Wolfram Research)的同事一起开发的。例如,如果你问Wolfram Alpha(在Wolfram Alpha.com这个网站上)“0~1000000范围内有多少个质数”,它会回答:“78498。”它并不是从系统中搜寻答案,而是自行算出答案,并在答案的下方列出计算所用的公式。如果你在一般的搜索引擎页面上输入同样的问题,它只会给出你所需算法的链接,并不会直接给出答案。之后你还需要将那些公式输入Mathematica这样的软件中进行运算,虽然后者也是沃尔夫勒姆博士开发的,但是与直接询问Alpha相比,后者要做的工作(需要理解的东西)明显要多得多。
实际上,Alpha包含了1500万条Mathematica语句。Alpha从将近10万亿字节的数据中计算出答案,沃尔夫勒姆研究中心的员工们仔细整理过这些数据。你可以向Alpha询问很多实际的问题,例如:“哪个国家的人均GDP值最高?”它会回答:“摩纳哥,人均212000美元。”再如:“史蒂芬·沃尔弗拉姆多大了?”它会回答:“在我写下答案的当天,52岁9个月零两天。”Alpha也是苹果Siri系统的一部分。如果你向Siri提一个实际的问题,它就会启动Alpha来处理你的问题。Alpha也负责处理微软公司必应搜索引擎接收的一些提问。
沃尔夫勒姆博士在自己最近的一篇博文中写道:Alpha现在处理问题的准确率可以达到90%。他同时写到,以大约18个月为半衰期,Alpha的错误率也大大降低了。Alpha是一个令人印象深刻的系统,它不仅采用人工编程的方法,还采用了人工搜索数据的方法。这就解释了我们发明计算机的原因。随着科学、数学方法的发现和汇编,计算机在处理此类问题时要远远强于单纯的人类智力。Alpha系统已经收纳了大部分科学方法,而且还在不断更新着从经济学到物理学各种各样知识的最新发展状况。在我和沃尔夫勒姆的一次个人谈话中,他估计如果沃森使用的那些智能方法正常工作时正确率大约为80%,Alpha则可以达到90%。当然,这些数字都具有一定的自我选择倾向,因为使用者(例如我自己)已经知道Alpha系统擅长哪类问题,同样的因素也影响智能系统的评价。沃森在《危险边缘》这个游戏中回答问题的准确率可能是80%,但即使只有80%,也足以打败该游戏最强的人类竞争者。
就像我在思维的模式认知理论中提到的那样,这些智能的方法需要理解我们在实际生活中遇到的那些非常复杂但又很模糊的层级信息,人类的语言当然也包含在内。智能系统的完美结合则需要在准确的科学知识和数据的前提之下,运用思维的模式识别理论(据我看来,思维模式识别是人脑的工作机制)对不同层级的智能进行综合。这样我们就可以用计算机阐释人类,智能在日后也能继续发展。对生物智能而言,虽然我们的大脑新皮质具有很强的可塑性,但是新皮质自身的物理特性限制了其潜力的发展。将更多的新皮质植入我们的前额无疑是一个非常重要的进化创新,但是目前我们还不能轻易增加额叶的容量,即使只增加10%也很困难,更别说扩大1000倍了。从生物意义上说,我们不能完成这项创新,但是从技术层面来讲,这项创新是可行的。
创造思维的策略
我们的大脑拥有数十亿个神经元,但什么是神经元呢?简单地说就是细胞。如果神经元之间没有建立连接机制,大脑就没有知识。神经元之间的连接决定了我们可以知道什么,我们到底是谁。
蒂姆·伯纳斯·李
现在让我们用上面讨论过的知识来构建人工大脑。首先,我们需要构建一个符合某些必要条件的模式识别器。接下来,我们会复制识别器,因为我们拥有记忆以及计算源。每个识别器计算出模式被识别出的概率。这样,每个识别器考虑了观察到的每个输入的数值(某种连续变量),然后将这些数据跟与每个输入对应的习得数据和数值变化程度参数进行比较。如果计算出的概率超过了临界值,识别器就会激活模拟轴突。我们用遗传算法优化的参数就包括这个临界值以及控制计算模式概率的参数。识别模式并不需要每个输入都有效,因此,自联想识别就有了空间(某个模式只要展现出一部分,我们就可以识别整个模式)。我们同样也允许存在抑制信号,即暗示模式根本不可能的信号。
模式识别向该模式识别器的模拟轴突发送有效信号。此模拟轴突反过来又会与下一个更高层次的概念级别的一个或多个模式识别器建立连接。下一个更高层次的概念级别连接的所有模式识别器就会将这种模式当成输入。如果大部分模式被识别,每个模式识别器还会向低层概念级别传递信号——这表明剩余的模式都是“预计”的。每个模式识别器都有一条或多条预设的信号输入通道。当预计信号以这种方式被接收时,模式识别器的识别临界值就降低了,也就更容易识别。
模式识别器负责将自己与位于概念层级结构上、下层级的模式识别器“连接”起来。需要注意的是,所有软件实现的“连接”都是通过虚拟连接而并非实际线路实现的(类似于网络连接,本质上是记忆指针)。实际上,这类系统比生物大脑系统更为灵活。人脑中出现新模式时,就需要对应生物模式识别器,还需要实际的轴突枝晶链接与别的模式识别器建立连接。通常人类的大脑会选取一个跟所需连接十分类似的连接,并在此基础上增加所需的轴突和树突,最后形成完整的连接。
哺乳动物的大脑还掌握另一种技术,即先建立很多的可能性连接,然后再剔除那些无用的神经连接。如果一个皮质模式识别器已经承载了某种旧模式,而生物新皮质又为这个模式识别器重新分配了最新信息,那么这个皮质模式识别器就需要重新构造自身的连接。这些步骤在软件中很容易实现。我们只需要为这个新的模式识别器分配新的记忆存储单元,并基于新的记忆存储单元构造新的连接。如果数字新皮质想要将皮质记忆资源从一个模式系列转到另外一个模式系列,它只需将旧模式识别器纳入记忆,再重新分配记忆资源即可。这种“垃圾回收”和记忆再分配是很多软件系统构建的显著特征。在数码大脑中,在我们从活跃的新皮质剔除旧记忆之前,数码电脑首先会对旧的记忆进行复制,而这是生物大脑无法做到的。
很多数学技术可用于构建这种自组织层级模式识别。基于多种考虑因素,我最终选择了隐马尔可夫层级模型。从我将其应用在最初的语音识别和20世纪80年代的自然语言系统中开始,我对这一模型已有数十年的研究。从整个领域来看,隐马尔可夫模型在处理模式识别问题时比其他方法的应用范围更加广泛,而且它还被用到理解自然语言的研究当中。许多NLU系统用到的技术在数学意义上与隐马尔可夫层级模型非常类似。
需要指出的是,所有的隐马尔可夫模型都是层级性的,其中一些包含的层级较少,例如只包含3层,从发音到音素再到词汇。为了模拟大脑,我们则需要根据要求建立许多新的层级结构。而且,大部分隐马尔可夫模型并不是完全智能的。尽管有一些连接的重要性为零,这些系统却有效地减少了初始连接的数量,不过,系统仍有一些固定的连接。20世纪80年代到90年代开发的系统已经能够自动剔除某个固定等级之下的连接,它们也可以建立新的连接,从而更好地对数据样本进行建模,学习新知识。很关键的一点就是允许系统根据自己学到的模式灵活地调整自身的拓扑。我们也可以利用数学上的线性规划为新的模式识别器指定最优连接。
我们的数码大脑还允许一种模式反复出现,尤其是那些经常出现的模式,这就为我们识别常用模式,或是表现形式不同的同一种模式提供了坚实的基础。但我们还需要设定冗余界限,以保证系统对常用低级别模式的储存不会占用太多空间。
冗余规则、识别临界值和对“这一模式是预计的”临界值设定的影响,是影响自组织系统性能的重要参数的几个例子。最开始的时候我是凭直觉设定这些参数,之后再用遗传算法对其进行优化的。无论是生物大脑还是软件模拟的大脑,大脑的学习能力都是一个值得重视的问题。在前面我已经提到,一个层级模式识别系统(不管是数字的还是生物的)可以同时学习两个优选的同一级别的层级结构。为了使系统完全智能化,我首先会采用之前已经测试过的层级网络,该网络在识别人类语言、机打信件和自然语言结构任务时,学习能力已经得到了训练。不过,虽然这个系统可以识别自然语言写成的文件,但一次只能掌握一个层级上的信息。系统学到的上级知识会为下级知识的学习奠定基础。系统可以反复学习同一个文件,每次阅读都会学习到新知识,这跟人们的学习过程有些类似——人们也是在对同一资料的反复阅读中加深对它的理解。网络上有数十亿页的信息,仅英文版的维基百科就有400万篇文章。
我还会提供一个批判性思维模块,这个模块可以对现存所有的模式进行连续不断的后台扫描,从而审核该模式与该软件新皮质内其他模式(思想)的兼容性。生物大脑没有这样的模块,所以人们能够平等地对待所有的片段性信息。在识别松散的信息时,数字模块会试图在它自己的皮质结构和所有可用的信息中寻找解决方法。在这里,解决的办法可能仅指判断这松散信息中的某一部分不正确(如果与该信息相对立的信息在数量上占优势)。不仅如此,该模块会在更高概念层次上,为解决这种信息的矛盾性提供方法。系统会将解决方法视为一个新的模式,并与引发这个搜索的问题建立连接。该批判性思维模块会一直在后台运行。如果人类大脑也有这样的模块,那该多好。
同样,我也会提供一个识别不同领域内开放性问题的模块。作为另外一个连续运行的后台程序,它会在不同的知识领域内寻求问题的解决方案。我前面已经指出,新皮质内的知识由深层次嵌套网状模式组成,因此具有隐喻性特征。我们可以用一种模式为另外一个毫不相关领域的问题提供解决方法。
我们回顾一下第4章提到的隐喻的例子,用某种气体分子杂乱无章的运动来隐喻某种进化过程中杂乱无章的变化。虽然气体分子的运动没有明显的方向,但是聚集在高脚杯内的分子如果有了足够的时间,最终会跑出高脚杯。这也解决了智力进化过程中的一个重要问题。就像气体分子一样,具有进化意义的变化并没有明确的目的。但是我们能看到这种变化正朝着更复杂和更高级的智力方向发展,最终达到进化的最高端,即新皮质具备层级思考的能力。因此我们能够弄清楚某个领域内(生物进化)没有目的和努力方向的进程是怎样完成一个精确目标的。以此为基础,我们也就可以了解其他领域内相似的进程,例如热力学领域。
我之前已经提到过查尔斯·赖尔的论断——经过长时间的流水侵蚀,岩石会被侵蚀为山谷,这促使查尔斯·达尔文作出了自己的论断,即经过不断的变化,物种的生物特征也许会发生天翻地覆的变化。这种隐喻性的搜索又是另一种持续运转的后台程序。
为了提供结构思维的对等体,我们需要提供能同时处理很多歌曲列表的方法。列表可能就是对问题解决方法必须满足的限制条件的说明。
解决问题的每一步都可能会对现有的思维层级结构进行反复搜索,或者说对现有文献进行反复搜索。人脑一次只能同时处理4个列表(在没有计算机辅助时),但人造新皮质却没有这样的限制。
我们还要借助计算机擅长的智能来完善我们的人造大脑,例如计算机可以准确掌握大量知识,快速、高效地运用已知算法。Wolfran Alpha整合了许多已知的科学算法,并将它们应用于处理已经仔细整理过的数据。如果沃尔夫勒姆博士能够找到降低该系统错误率的方法,这个系统仍然有巨大的发展应用空间。
最后,我们的新大脑还需要拥有一个包含很多小目标的大目标。对生物大脑而言,我们继承了由旧脑快乐和恐怖中心设立的目标。为了促进物种的繁衍生息,这些早期目标在生物进化过程中早已被设定,但是大脑新皮质的出现使得我们可以超越早期目标。沃森就是为《危险边缘》这个游戏而生的。另外一个目标就是通过图灵测试。为了达到目标,数码大脑需要像人类那样,阐述自己的故事,从而成功地假扮成生物人。数码大脑有时还要装聋作哑,因为任何移植沃森知识的系统很快就会露出马脚,让人发现其不是生物人。
更为有趣的是,我们可以赋予新大脑更具野心的目标,即美化世界。当然,这个目标会引发一系列的思考:为谁美化?在哪一方面美化?为人类?还是所有有意识的生物?评价有意识的标准又是什么?
仿真大脑在改变世界进程中的地位越来越重要。毫无疑问,与未进化的生物大脑相比,仿真大脑在改变世界的进程中发挥了更大的作用。不过,我们还需要思考仿真大脑的道德意义。我们可以从宗教传统中的黄金法则开始讨论这个问题。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。