逻辑的引擎:人工智能的动力
2020-01-16陈晓华杜国平
陈晓华,杜国平
(1.湘潭大学 哲学系,湖南 湘潭 411105;2.中国社会科学院 哲学研究所,北京 100732)
2016年3月15日,围棋世界冠军韩国棋手李世石与谷歌人工智能阿尔法围棋AlphaGo 进行较量,这场人机大战的总比分最终定格在4∶1。AlphaGo赢了,人工智能借此迎来了新的春天。2017 年7 月8日,国务院印发《新一代人工智能发展规划》(以下简称《规划》)的通知,重点对我国人工智能发展的总体思路、战略目标、主要任务和保障措施进行系统的规划和部署,为推动我国人工智能的长期发展指明了方向。《规划》指出,人工智能目前的任务之一就是建立新一代人工智能关键共性技术体系,共包括八项共性技术,其中一项就是自然语言处理技术:重点突破自然语言的语法逻辑、字符概念表征和深度语义分析的核心技术,推进人类与机器的有效沟通和自由交互,实现多风格、多语言、多领域的自然语言智能理解和自动生成。为了进一步细化和落实《规划》的相关任务,2017年12月14日,中华人民共和国工业和信息化部印发了《促进新一代人工智能产业发展三年行动计划(2018—2020 年)》,其中特别写道:培育智能理解产品,加快模式识别、智能语义理解、智能分析决策等核心技术研发和产业化。笔者将回顾逻辑学与人工智能的悲欢离合,分析人工智能的困境,探寻摆脱困境的逻辑学路径和方法。
一、人工智能70年:梦想与现实的交互
(一)人工智能的逻辑学渊源
“人工智能”一词正式出现于1956 年麦卡锡召集的“人工智能夏季研讨会”。而对于该名称的使用,与会者当时并未形成共识,纽厄尔和西蒙更赞同“复杂信息处理”的概念。1958年,英国国家物理实验室召开“思维过程机器化”会议,会上有人再次提出“人工思维”。人工智能作为一门学科其起源应该有一段较长的路径。“人工”一词在日常使用中意思比较确定,就是人造的、人为的,如人工湖、人工降雨等。但是“智能”(intelligence)一词,人们对于它就有不同的理解。斯滕伯格就人类意识这个主题给出了以下定义:智能是个人从经验中学习、理性思考、记忆重要信息以及应付日常生活需要的认知能力[1]。
对认知能力或思维的形式化、机械化研究至少可以追溯到亚里士多德的形式逻辑。形式逻辑把思维内容和思维形式区分开来,这是推理活动的出发点。逻辑的形式化是人工智能最强大最根本的基础。西班牙的卢尔(Raymond Llull)可能是第一个尝试机械化人类思维过程的人,他建立了一套基于逻辑的系统,用几何图形和原始逻辑来实现思维机械化。莱布尼茨又把这个想法往前推进一步,他认为所有的推理只是字符的结合或替代,可以建立一种“逻辑演算”,解决所有的逻辑论证问题,即思维是可计算的。这个思想为逻辑的数学形式化奠定了基础,也为图灵机及其物理实现奠定了强有力的思想基础。英国数学家布尔在《思维规律研究》一书中给出了符号推理的一般方法,他使用三个逻辑运算符号“或、与和非”,变元基于真或假建立关系,其代数语言和逻辑运算规则的组合能够计算思维。19世纪末,德国数学家和逻辑学家弗雷格建立了第一个逻辑公理化系统,即给定几个初始公理和推理规则,就可以推出所有的真命题。同时,他提出算术逻辑形式化,用逻辑形式来表达算术,开创了数学证明论中的逻辑主义学派。这一切都朝着思维是可计算的方向发展,所有的推理都是可以证明或计算的。但是这一伟大目标并非能够在所有系统中实现,1931年哥德尔证明了一致的初等算术系统,存在无法证明的真语句。这就表明思维形式化和机械化存在一些局限。1936 年,图灵在其《论可计算数及其在判定性问题上的应用》一文中提出一种理想的计算数学模型,后人称之为图灵机。所有可计算函数都可以用图灵机计算,图灵机为电子计算机的出现奠定了理论基础。1946年,第一台电子数字计算机ENIAC(世界上第一台电子计算机是1942 年的阿塔纳索夫- 贝瑞计算机,Atanasoff-Berry Computer,通常简称ABC计算机)的诞生也是多代人坚持不懈努力的结果。电子计算机的诞生为人工智能提供了物理实现的基础。
至此,形式计算理论、依据形式计算理论而设计的电子计算机以及生物学上神经元的发现奠定了整个人工智能的基础。1943年,麦卡洛可和皮茨合作发表了一篇开创性的文章——《神经活动内在概念的逻辑演算》,建立了第一个神经网络的数学模型,神经元的状态和神经元之间的关系采用兴奋-抑制(0-1)方式,这个模型可以执行高级神经活动功能。神经网络模型具有计算能力,而这一切以前只能由人脑来完成。该文开创了逻辑符号主义学派人工智能和联结主义人工智能研究的范式。
(二)困境与突破
1956 年达特茅斯会议的一个成果就是纽厄尔和西蒙公布了一个程序“逻辑理论家”,它可以证明《数学原理》中的命题逻辑部分。1958年夏天,王浩在一台INM-704机上只用了九分钟就证明了《数学原理》中的一阶逻辑的全部定理,他被认为是定理证明的开山鼻祖。定理证明是极端的符号主义学派。所有符号主义学派的人工智能技术的基础都是定理证明,如专家系统、知识表示和知识库。在20世纪70年代初,人工智能发展遭遇瓶颈。莫拉维克这样总结20世纪70年代人工智能领域遇到的障碍:首先,最难进行自动化,且计算机难以完成那些在人们看来最自然不过的事情,比如看、听和利用常识进行推理。这表明当时的困境首先来自计算机本身的局限性,由于计算能力不足,无法解决指数型爆炸的复杂计算问题。其次,常识推理,需要大量对世界的认识信息,而计算机没有相关的知识储备。
众所周知,计算机技术的发展日新月异,因而硬件的局限性只是暂时的。而对于世界的信息获取问题,也因专家系统的发展而得以解决。专家系统的知识表示、自然语言理解都可以用符号结构来表示,常见的数理逻辑不够用,需要新的逻辑系统,如知识图谱中的描述逻辑。显然这是逻辑符号主义学派的做法,他们坚信利用数学逻辑方式可以模拟人类大脑思维的运行方式。而联结主义学派则认为通过对大脑结构的仿真设计来模拟大脑的工作原理,即智能是源自大脑神经元之间的链接,而非单个的神经元。1982年,霍普菲尔德提出一种新的神经网络,可以解决一大类模式识别问题,并给出了一类组合优化问题的近似解。
1987年,由于美国苹果公司和IBM公司生产的台式机性能不断提升,个人电脑的理念不断蔓延,AI硬件的市场需求突然下跌。并且,由于互联网的出现,人类专家可以随时随地在网上解答问题,专家系统从而失去了存在的意义。
挑战与机遇并存,神经网络在20 世纪80 年代由于互联网的到来而被遮掩。随后,互联网产生的巨大的信息数据为神经网络的发展提供了更好的契机。深度学习之父辛顿站在神经网络大神霍普菲尔德的肩膀上,于1983 年发明了玻儿兹曼机;到2006 年,他又开发出深度信念网络,一种用于受限玻儿兹曼机的快速学习算法,深度学习技术开始腾飞。神经网络由一层层神经元构成,深度学习就是利用具有多层神经元的神经网络来进行机器学习。从形式理论来看,一层网络就是一个函数,多层网络就是多个函数的嵌套。层数越多,网络越深,表达能力越强,当然伴随而来的复杂度就呈指数级增长。深度学习技术,催生了“智能就是大数据加深度学习”的观念。神经网络是我们的终极算法吗?深度学习是通向通用人工智能的正确路径吗?让我们拭目以待。
二、人工智能的困境
机器能够思考吗?图灵在1950年的《计算机与智能》一文中试图回答这个问题。他提出了图灵测试,详细定义并解释了人工智能及其研究目的、发展方向,并驳斥了当时科学界及社会上普遍存在的反对观点。这在今天看来依然具有深刻意义。图灵测试表明,如果测试者无法区分人与机器在语言行为方面的差别,那么我们就可以认为机器具有“智能”。图灵在文末指明了两条研究范式:符号派和联结派。通过这两种范式,计算机程序可以实现我们今天所说的通用人工智能或强人工智能。他这样写道:“我们或许期待着,有一天,机器能够在所有纯智能的领域中同人类竞争。但是从哪里起步最好呢?甚至这也是一个困难的抉择。许多人认为,非常抽象的活动,比如下棋,可能是最好的。也有人认为,最好是给机器配备能买得到的最好的感觉器官,然后教它懂英语,并讲英语。这个过程可以像通常教孩子那样,指着东西,说出它们的名字,等等。我还是不知道正确答案是什么,但是我认为两种方法都应该试一试。”[2]90
《计算机与智能》一文引发了机器智能的技术探索,同时也引发了机器智能技术背后的哲学反思。德雷福斯是对机器智能进行哲学反思最有影响力的哲学家之一,他认为机器智能是不可能的。美国兰德公司1965 年12 月出版了德雷福斯的P-2344 报告,题为《炼金术与人工智能》,尖锐唱衰人工智能,对人工智能早期发展提出了重大的挑战。德雷福斯在该报告的基础上进行扩充,于1972年出版了《计算机不能做什么:人工智能的极限》。该书专门对明斯基1968 年出版的人工智能论文集《语义信息加工》进行了研究,并且把联想主义心理学假设扩充为生物学、心理学、认识论和本体论四个方面的假设,从而涵盖了当时人工智能研究方法的全部基础。德雷福斯对人工智能在四个层面的理论一一进行了驳斥。在生物学层面,麦克洛克-皮茨的神经元是二元的;德雷福斯认为人脑是模拟的。在心理学层面,人工智能学家表征为信息处理和规则;德雷福斯认为信息和常识是无法用规则表示的。在认识论层面,麦卡锡认为所有的知识都是可以形式化的;德雷福斯认为人的知识不是形式化的,人们可以用微分来描述物体运动,但并不是物体在求微分。在本体层面,人工智能学者认为世界由事实构成,是可以还原的;德雷福斯认为人和物是有区分的,物可以还原,但人需要现象学。正如德雷福斯所指出的,由于智能必须处在某一局势之中,因此它不能同人类生活的其他方面分隔开来[3]。而人工智能学者认为,日常生活中智能所需的一切都可以客体化并表达为一种信念系统,智能的理解力可以形式化为事实和规则的复杂系统,这在德雷福斯看来是毫无道理的。
德雷福斯并不孤独,批评人工智能的哲学家还有一位——塞尔,他在1980 年的《心灵、大脑和程序》一文中提出一个思想实验“中文屋”,这个思想实验就是要反驳即使是机器通过了图灵测试,该机器依然不具有智能。塞尔认为,计算程序至多是理解语法,但并没有理解语义,信息必须内化才是理解,即知识成为人身的一部分。也就是说,单纯的形式化符号操控是没有理解能力的,计算机硬件也不同于神经蛋白,不具有意向性,缺乏生成心理过程所需的恰当的因果能力。塞尔认为,只有一种机器能够思维,实际上只有一些类型非常特殊的机器,即大脑和那些与大脑具有相同因果能力的机器才能够思维[2]118。
机器智能技术的探索一直在发展,从当初的逻辑符号学派到现如今如日中天的深度学习,总是不断地向机器智能方向逼近。2018年的图灵奖获得者深度学习三巨头之一的Yann LeCun指出,深度学习存在一些局限性,具体表现在以下几点:缺乏理论支持、推理能力欠缺、短时记忆能力需要加强以及无监督学习能力弱[4]。首先,神经网络依然由经验来搭建。网络参数有可能只是一个局部最优,而不是全局最优,因而算法还有很大的优化空间。深度学习目前不是一个发展完善的理论,还有很多地方需要加强研究。其次,深度学习最受诟病的是缺乏逻辑推理能力,在面对需要复杂推理的任务时受到一定限制。图灵奖得主、贝叶斯网络之父珀尔在ArXiv上发布了他的论文《机器学习理论障碍与因果革命七大火花》,其中指出,当前的机器学习系统几乎都是以概率统计的方式运行,不能作为通用智能的基础。他认为,突破口在于“因果革命”,借鉴结构性的因果推理模型,能对自动化推理做出独特贡献。
一句话,以目前的技术,机器智能还需要走很长一段路。
三、自然语言理解和逻辑语义学
人工智能领域最经典的两个思想实验——图灵测试和“中文屋”(塞尔),说的是机器的自然语言理解问题。图灵说,检验机器智能的高低最好的办法就是让机器会自然语言并且理解自然语言;而塞尔说,机器会把英文翻译成中文,还不是真正的理解,只有真正理解,机器才有智能。自然语言显然是指人类日常使用的语言。机器理解人类的日常语言,就是用计算机科学中的算法和数据结构的概念来建立一个语言的计算理论。相对于“自然语言”来说,这个计算理论就是“机器语言”。这两者之间的差异是显而易见的。机器语言是一套规则系统,系统中的表达式都是递归生成的,语形和语义之间存在一一对应关系,每一个语形符号的含义都是确定的。而自然语言并不完全是递归生成的,语形和语义之间并不存在一一对应的关系,其相关性是在社会实践活动中逐步固定下来或逐步发生改变。也就是说,自然语言是灵活多样的。两者的形成机制并不一样,因而自然语言带来了一些有趣的计算性挑战,包括分词、标注、分类、信息提取、建立句法和语义表示等。但是从技术层面来看,语言计算模型和人类处理自然语言的方式的不一样并不重要,重要的是计算机是否真的理解人类语言。
语言的计算模型就是自然语言的形式化。1956 年乔姆斯基在《句法结构》一书中创建了转换生成语法。他写道:“这篇论文是从广义(跟语义学相对)和狭义(跟音位学及词法相对)两个方面来讨论句法结构的。我们打算建立一种公式化的一般语言结构理论,并且打算探讨这种理论的基础。”[5]乔姆斯基的句法分析和自动机有着密切的关联。乔姆斯基把句法分成四种类型,即0型、1型、2型、3型。0 型文法等价于图灵机,1 型文法(上下文有关文法)等价于线性有界非确定图灵机,2 型文法(上下文无关文法)等价于下推自动机,3 型文法(正则表达式)等价于有限自动机。显然,形式语言理论成为一种可以计算的理论,可以直接应用到自然语言的机器处理中,成为自然语言理解的有力工具。
形式语言理论的发展和人工智能的抱负分不开,自然在技术路线上也和人工智能的两条路径相吻合。以生成语言学为基础的研究路径,称为理性主义,和逻辑符号主义学派相对应;以大规模语料库分析为基础的研究路径,称为经验主义,和联结主义相对应。大规模语料库的出现其实就是对基于规则分析方法的一个重要补充,也是研究目标的转向,机器通过自动学习来获取语言知识。
理解自然语言的核心是理解语言的意义。而在形式语言理论中对于语义的表示方法采用语言学的直观表征还是数学或逻辑的形式表征,学界一直没有取得共识。显然语言学的直观表征在语料库中居多,通过对语言运用实例的大量搜集、整理和分析,归纳出自然语言的典型特征,并用形式的方法表述出来。而数学或逻辑的形式表征更方便计算机的操控。逻辑的形式表征是将自然语言表达式的成分转换成高阶逻辑的表达式,数学的形式表征通过类型化特征结构图中的属性—值来表示语法和语义信息。数学或逻辑的形式表征有一个潜在的原则——组合原则,即一个复杂表达式的语义由它的各个成分的语义及其组合模式得到。这一原则保证语句语义的递归生成,即一个复杂的表达式的语义可以递归计算。
生成语法理论之后衍生出众多的语法理论,其中组合范畴语法在生成力和解释力方面更加贴近自然语言。组合范畴语法CCG 是在古典范畴语法基础上发展起来的,其优点在于:它的句法和语义之间有一个透明的接口,每个词条的语义表达式和句法范畴都被存放在词库的词项上,句法范畴和语义类型、语义最后的表达式都可以基于词库中的范畴指派生成[6]。组合范畴语法CCG不仅满足了自然语言处理所需要的句法分析,而且满足了词与词之间的语义关系。现阶段的自然语言处理仅仅利用CCG的句法范畴进行标注和推演,忽视语义类型的标注和推演,这使得CCG的句法分析器难以达到完美的效果。尤其对于意合型的汉语,这类语言句法上缺少严格的形态标记,语序灵活,上下文依赖程度高。CCG 处理的效果更是不尽如人意。对于该问题的处理,邹崇理的研究团队做了一系列的工作,特别是构建了汉语CCG语料库。该语料库把基于短语结构语法的宾州汉语树库转换成基于组合范畴语法的汉语CCG 树库。汉语CCG 树库目前的一些句法分析在语义上是不合适的,还需要额外的手工标注来获得正确的分析。同时CCG 树库用相同的方式给相同类型的所有范畴提供共指标记,显然不够严谨,无法在语义上反映相应的共指关系。造成这种现象的原因是范畴的标注只是句法的,不含有语义信息。这表明CCG 汉语树库尚需进一步完善,这就需要逻辑语义学研究的介入。
四、因果形式学习
朱松纯认为,人工智能是小数据、大任务,而不是相反[7]。环境中的智能体通过观察操控环境中的有限信息(小数据),建立信息或行为之间的因果关联,从而做出复杂的行为(大任务),即具有因果推断能力就可以在小数据的基础上完成大任务。小数据、大任务的典范就是“乌鸦范式”:乌鸦进城觅食,找到一枚坚果,现在的任务是把坚果砸碎。乌鸦发现路过的车辆会把坚果轧碎,但是车流密集,自己也有可能被轧死。那么,觅食的任务就分解成两个任务:车轧碎坚果,避免车辆轧到自己。它发现有红绿灯的十字路口可以达成这个任务。它发现了车辆、人行道和红绿灯之间的因果关系。也就是说,在这个过程中乌鸦并不需要大量的数据,只需要少量的数据,但是最重要的是在这少量的数据中有效地获得因果关系,并根据这个因果关系制定相应的行动方案。也就是说,只有给机器配备了因果推理模型,机器才可以说是具有了智能。而因果推理模型则是结合了演绎推理和归纳推理等推理模式。早期的人工智能理论主流是基于逻辑符号的演绎推理,而现在如日中天的深度学习却是基于大数据的概率统计推理,均不可能发明出真正的人工智能。
问题是怎么从数据中提炼出因果关系。这就需要一个因果模型。如果找到了这样一个好的因果模型,那么我们就可以做实验,从大数据中找到真正的因果关系。对于因果发现的方法,我们最熟悉的莫过于密尔五法,但是该方法存在很多的问题,可操控性弱。研究因果模型推理的杰出学者珀尔把因果分为三个层面,并称之为“因果关系之梯”:关联、干预和反事实推理。这三个层面其实对应于三个不同层次的认知能力:观察力(发现环境中的规律的能力)、行动力和想象力。因果关系之梯的第一层级要求我们基于被动观察做出预测。其典型问题是:“如果我观测到……会怎样?”这个可用条件概率来表征:P(y | x)= p。就是说,假设我们观察到事件x 时,事件y 出现的概率等于p,即把x 和y 关联起来。处于第二层级的“干预”则是主动行动起来,即怎么做。可以用形如P[y | do(x)]的句子来表征,表述的是假设我们干预x,然后观察事件y 的概率。第三层级的反事实就是思想实验,如果我做出了不同的行动结果会怎样?这一层级需要用到回溯推理。可以用形如P(yx | x′,y′)的表达式来刻画,意思是:我们观察到x 时事件y 的概率是基于我们实际上观察到x′时y′的概率。珀尔指出:“因果关系之梯的每一层级都有一种代表性生物。大多数动物和当前的学习机器都处于第一层级,它们通过关联进行学习。像早期人类这样的工具使用者则处于第二层级,前提是他们是有计划地采取行动而非仅靠模仿行事。我们也可以通过实验来习得干预的效果,这大概也是婴儿获取大多数因果知识的方式。反事实的学习者处于阶梯的顶级,他们可以想象并不存在的世界,并推测观察到的现象的原因为何。”[8]珀尔从因果关系之梯及其形式表达出发,得出目前的深度学习还处于第一层面。仅仅停留在第一层面达不到真正的因果关系,还需要额外的条件,才能进行因果推理。
珀尔指出,因果关系之梯用因果图就可以很好地说明。用因果图来构建因果模型不仅仅是画箭头,箭头背后还隐藏着概率。当我们绘制一个从X指向Y的箭头时,其实是在说,某些概率规则或函数具体说明了“如果X 发生改变,Y 将如何变化”。通常情况下,因果图自身的结构就足够让我们推测出各种因果关系和反事实关系:简单的或复杂的、确定的或概率的、线性的或非线性的。正是在这个基础上,珀尔称之为“结构因果模型”[9],该模型由三个部分构成:图模型、结构化方程以及反事实和干预逻辑。其中,图模型作为表征知识的语言,反事实逻辑表达问题,结构化方程以清晰的语义将前两者关联起来。由此建立的因果关系演算系统能够执行一些当前机器学习系统无法实现的任务,并且是使用因果建模工具完成的。
五、展望
爱因斯坦认为,西方科学的发展是以两个伟大的成就为基础的,那就是希腊哲学家发明的形式逻辑体系,以及通过系统的实验发现有可能找出因果关系。我们现在依然在做这两件事,用形式系统来刻画智能,用形式系统找出数据或信息之间的因果关联。什么是智能?从图灵测试到“中文屋”,从大数据到因果推断,到小数据、大任务,其背后隐藏着理性主义和经验主义、符号主义学派和联结主义学派的哲学和方法之争。
邹崇理认为,在自然语言理解中,理性主义走向极致,规则模式只能解析实际运用的少量表达式;经验主义走向极致,个案个例的罗列无章可循,不便从中识别不合法的表达式。怎样进行理性主义和经验主义关于语义的深度融合?目前的研究重心是结合多种逻辑工具作为自然语言的语义表征,采用统一的机器算法和人工标注相结合的方式,给汉语CCG句法分析树库匹配语义表征。
为了解决深度学习中的关系推理问题,深智团队(DeepMind)联合谷歌大脑、MIT等机构27位作者发表了一篇探究性的文章《关系归纳偏置、深度学习和图网络》,将图的一阶逻辑和概率推理结合到一起,试图解决深度学习中的因果推理问题。深智团队也提供另外一种方案:传统的贝叶斯因果网络、知识图谱与深度强化学习融合。这种方案也是困难重重。同时值得一提的是,马尔科夫逻辑网是将马尔科夫网络与一阶谓词逻辑相结合的统计关系学习模型,具有强大的描述能力、逻辑推理能力和处理不确定性的能力。这些方案,暂时无法分出优劣,也许是条条道路通罗马,只有等到达人工智能的奇点之后才知道哪条路是可行的。
未来已来,正如图灵所说:初见前路近可至,细思百事竞待忙。(We can only see a short distance ahead,but we can see plenty there that needs to be done.)[10]