从CTL到CCG
——逻辑语义学的新模式
2017-04-14邹崇理
邹崇理
(四川师范大学逻辑与信息研究所,四川成都610068)
【逻辑学研究】
从CTL到CCG
——逻辑语义学的新模式
邹崇理
(四川师范大学逻辑与信息研究所,四川成都610068)
[栏目主持人]北京大学哲学系陈波教授
[主持人语]本期发表两篇文章。一是邹崇理教授的《从CTL到CCG——逻辑语义学的新模式》,该文介绍和评述了范畴语法CG的两个现代版本——范畴类型逻辑CTL和组合范畴语法CCG,它们各自的基本构想及其内容,以及各自的优势和弱势。鉴于这些理论所处理的自然语言现象非常复杂,由此导致它们在技术上也非常复杂,即使弄懂它们也需要相应的知识基础和学术功力,也是一件很不容易的事情。当然,最理想的状况是在弄懂的基础上再做一些结合汉语的独立研究工作。二是曾祥云教授的《当代中国名辩理论研究的重要开拓者——评李先焜先生的名辩符号学研究及其理论贡献》,该文概述了李先焜先生在名辩符号学研究上的贡献,对其作出高度评价:“作为当代名辩研究的重要开拓者,李先焜先生居功至伟。他不仅开创了当代名辩符号学研究范式,打破了名辩逻辑化研究传统,使我国名辩研究重获生机与活力,而且运用符号学分析工具,对儒家正名理论、名家名学和墨家名辩等先秦诸子思想,给出了精辟独到、令人信服的解读。正是在他的积极倡导与大力推动下,我国名辩符号学研究范式已取代传统的名辩逻辑化研究范式,成为了当代名辩理论研究的主要范式,并呈现出前所未有的蓬勃兴旺发展态势,使我国名辩研究走向了一个新时代。”我们应该对像李先生这样作出扎实研究的学术前辈表示真诚的敬意。我同时主张,在中国逻辑史研究中还是百花齐放比较好,名辩学、数理逻辑、传统形式逻辑、非形式逻辑、论辩学等等工具都可以拿来用,关键在于:最后取得什么样的研究成果,它们是否基于扎实的史料、可靠的诠释和精辟的见解,以及对后来者的启迪如何。
范畴类型逻辑CTL和组合范畴语法CCG,是范畴语法CG的两个现代版本。CTL采用传统的逻辑语义学方式,其特点是强调计算的思想、基于规则的思路和研究逻辑工具本身的性质。就面向自然语言计算机处理的任务而言,CTL的短板是显然的,即对自然语言的丰富多样的具体现象,尤其是对语词的研究非常不充分。CCG则挑战传统,大胆创新,提出新的研究模式,构筑大规模的词库,关注大量的规则例的应用,以此满足了计算机的自然语言系统处理大规模真实文本的需求。而如果全面系统地考虑语义因素,CCG的词库和规则例也可能需要大的调整。CCG的下一步研究任重而道远。
逻辑语义学;范畴类型逻辑;组合范畴语法
范畴类型逻辑CTL和组合范畴语法CCG的根源同是范畴语法CG。CG最早开启了逻辑语义学面向自然语言计算机处理的思路。上个世纪30-40年代,波兰逻辑学家Ajduciewicz提出了CG;50年代计算语言学之父Bar-Hillel和数学家Lambek的工作使CG同自然语言的计算机信息处理关联起来;80年代至今,CG发展出两个现代版本——范畴类型逻辑CTL和组合范畴语法CCG。就面向自然语言计算机处理这样的任务而言,CTL采用的是传统的逻辑语义学方式,而CCG则挑战传统,大胆创新,提出新的研究模式。要从CTL那里比较出CCG的“创新”,有必要先谈谈CTL的特点及其短板。
1 CTL的特点
CTL的特点,即CTL的基本精神可以概括为:计算的思想、基于规则的思路和研究逻辑工具的性质。
自然语言是一个符号系统,由若干或长或短的符号串构成。这个系统是动态的,不断由较小的符号串构造出较大的符号串。从CG和CTL的视角看来,这种构造生成过程就是计算过程(也是逻辑推演过程),这就是CTL的计算思想。怎样把自然语言的生成构造变成计算的过程?
首先,需要给自然语言各类语词贴上显示“计算的标签”,这种标签就是范畴。范畴分为原子范畴和复合范畴,表示句子的范畴s和表示名称的范畴n为原子范畴,复合范畴A/B和BA又叫函子范畴,体现出“计算的涵义”。CTL给自然语言若干词条指派范畴的工作就形成了所谓词库的内容,如[1]157:
其次,对词条指派了范畴后,CTL确立的范畴计算原则是:若表达式α的范畴是A/B并且表达式β的范畴是B,则表达式αβ的范畴是A;若表达式α的范畴是A并且表达式β的范畴是AB,则表达式αβ的范畴是B。上述原则被抽象为CTL系统的逻辑定理T1:(A/B)B→A和T2:A(AB)→B,也叫“函项运算贴合”的规则。
根据上述定理,英语句“John likes fresh milk”在CTL那里合语法的求解计算推导过程就是:
上图表明:由“fresh”和“milk”构成“fresh milk”,变成由范畴“n/n”和“n”依据定理1计算出范畴“n”;由“likes”和“fresh milk”构成“likes fresh milk”,对应由范畴“(ns)/n”和“n”依据定理1计算出范畴“ns”;最后由“John”和“likes fresh milk”构成语句“John likes fresh milk”,对应由范畴“n”和“ns”依据定理2获得范畴“s”,计算于是中止,计算过程获得解s,句子合语法。这就是CTL的计算思想,把自然语言的构造生成变成了范畴的计算推演过程。
美国著名的语言学大师乔姆斯基(N.Chomsky)提出:人脑先天具有构造生成语言的创造能力。人类语言知识的本质就是语言知识如何构成的问题,其核心是德国学者洪堡特(W.Humboldt)指出的“有限手段的无限使用”。Gamut写道:“一个合格的语言使用者能够解释数量无限的句子,这种解释是基于对有穷数量词汇意义的理解和数量有穷的句法规则的运用。”[2]141因此,构造生成自然语言的机制可以概括成两个特征:
a.有穷多的词条作为出发点;
b.依据有穷多规则去构造和理解无穷多的语句。人具有构造自然语言的机制,人就能够构造从来没有看见到的句子,也可以理解从来没有听说过的句子,人能够构造和理解的句子是无穷多的。自然语言中的复杂句子要有多长有多长,是无穷多的。怎样来构造无穷多的复杂长句子?逻辑的递归组合思想恰好派上用场,CTL推出了有关定理来体现逻辑的递归组合精神。这些定理起到构造生成语言所依据的有穷多规则的作用,这就是CTL基于规则的思路。
自然语言中的复杂长句子有:
(1)That that something is wrong is known to the public is usual.
(2)Mary likes a man such that he has a son such that he loves a girl such that she hates a boss. CTL反复使用对应定理1或定理2的“函项运算贴合”的规则,就能够生成构造出(1)这样的主语从句镶嵌的复杂长句子,以下是计算推演的树图:
CTL还通过在系统中假设诸如结合或交换等结构公设,推出一系列函子范畴的组合规则及其置换规则,用于自然语言许多复杂现象的构造分析。
CTL强调计算的思想和基于规则的思路使得它成为分析自然语言句法语义构造生成的有力工具。不仅如此,CTL作为逻辑语义学的重要分支,还是传承和延伸逻辑理性主义精神的产物,这表现为从理论角度去深入探讨逻辑工具本身的性质。
从模态逻辑的角度看,CTL是在自然语言分析领域内产生的模态逻辑,系统的语义解释基于可能世界语义框架,这里的可能世界是自然语言若干长长短短的符号串,可能世界之间的可及关系体现为自然语言符号串之间的毗连关系,这些毗连具有满足自然语言符号串自身特色的各种性质。CTL以公理表述的方式确立了系统的可靠性和完全性证明,以Gentzen表述的方式解决了系统的可判定性问题。
从子结构逻辑角度考察CTL的Lambek演算,导致针对结构规则而言的“结构层级”和针对逻辑系统而言的“子结构逻辑”层级的确立。这是一个强度递减的系统层级,经典命题逻辑是其中最强的系统,Lambek演算是其中最弱的系统。在直觉主义逻辑以下,各系统的区别由结构规则P、C和M的去留决定,概述如下:
从结构角度研究CTL,获得许多细化结果,对自然语言具有更多的表达力。
2 CTL的短板——对待词库的不作为
CTL是逻辑语义学的重要理论,但就服务于自然语言的计算机信息处理而言,CTL作为逻辑语义学的传统模式,其短处是显然的。前文我们谈到的自然语言构造机制的a特征和b特征,CTL基于规则的思路对“依据有穷多规则去构造和理解无穷多的语句”的b特征的刻画是很到位的,但对“有穷多的词条作为出发点”的a特征的揭示则不充分,这集中表现在CTL对自然语言若干词条指派范畴的工作不给力。在CTL那里,重点关注的是系统推出的定理所对应的规则,而自然语言的词库仅仅是服务于规则分析例句所需要的辅助手段,并没有专注研究,其词库完全没有反映出自然语言构造机制a特征的实际情况。
2.1 CTL的公理表述没有词库的内容
作为CTL公理表述(axiomatic presentation)的代表,Lambek演算由一条公理和五条规则所构成:
2.2 CTL的Gentzen表述只有隐性的词库
就刻画自然语言构造机制特征a和描述自然语言词条的实际情况而言,CTL的Gentzen表述对待词库的态度也不积极,其关注焦点仍然是自然语言句法分析所需要的定理规则、Cut规则的消去及系统判定问题的解决。如Lambek演算的Gentzen表述为:
这里,第一条[Ax]是公理,其余7条乃是推演规则。Gentzen表述关注给自然语言的构造提供范畴运算的规则,令规则就是:
与之类似,Gentzen表述中仍然没有词库的地位。关于自然语言语句“Zaphod hates Livia”的构造推演是这样:
上述推演图中见不到词条。为了说明例句的方便,才在推演最后得到的后承“⇒”的前件下方附上范畴“np”对应的词条“Zaphod”,范畴“(nps)/np”对应的词条“hates”和范畴“np”对应的词条“Livia”。可以说,词条是附加上去的额外东西,Gentzen表述中的词库是隐藏不露的东西。
2.3 CTL的ND表述给出了词条的位置
CTL的ND表述(natural deduction presentation)如下:
ND有两大类初始符号:
定义基于原子范畴的集合A和3个范畴算子,所有范畴的集合为:
定义基于结构变项的可数无穷集合V,结构树的集合为:
这里可以把V看作是自然语言词条的集合,S├F意味结构树S属于范畴F。“属于”意味对初始的结构变项(词条)配备范畴,意味把词条抽象成范畴。这就形成词库的内容,如:
由于词库的作用,ND就把具体的自然语言词条同抽象的范畴联系在一起,而ND的[/E]和[E]之类规则更能保持这种联系,就使自然语言的毗连生成和范畴的运算推演始终对应进行。例如:
在上图最后结果的断定符号“├”的左边,词条以结构树的面貌出现了。CTL的ND表述,词条和词库开始显露。但其内容简单,一个词条对应一个范畴,意味一个词条只有一种用法,与自然语言的实际情况相差甚远,远远谈不上是真正的词库。
3 CTL的词库态度根源于MG的PTQ
以上列举的CTL对待自然语言词条词库的种种不作为态度,源于逻辑语义学的开创理论蒙太格语法MG。在MG构建的英语部分语句系统PTQ那里,词库为9类基本语词[3]250:
BIV={run,walk,talk,rise,change}
BT={John,Mary,Bill,ninety,he0,he1,…}
BTV={find,lose,eat,love,date,be,seek,conceive}
BIV/IV={rapidly,slowly,voluntarily,allegedly}
BCN={man,woman,park,fish,pen,unicorn,price,temperature}
Bt/t={necessarily}
B(IV/IV)/T={in,about}
BIV/T={believe that,assert that}
BIV//IV={try to,wish to}
Be=Bt=ø
该词库包含的词类太少,且一个词条只能归入一类,这远远不能覆盖自然语言丰富多样的词条用法。在专有名词集合BT中,还有作为构造量化表达式技术手段的加标代词,这些是自然语言中所没有的表达式。PTQ的主要任务是以逻辑语义学的方式描述自然语言量化表达式和内涵语境等现象,而词库仅仅是服务于这些任务的辅助手段,具有太多人工的痕迹。自然语言词条多种用法的实际情况被PTQ忽视了,这种做法直接导致CTL对待词库的消极态度。
4 CTL对待词库的不作为的后果
首先,从揭示自然语言构造机制两特征的角度看,CTL顾此失彼。CTL顾及到的是语言构造特征b的刻画,即基于有穷多的规则去构造无穷多的句子。CTL失掉的是语言构造特征a的描述,即有穷多的词条作为构造语言的出发点。没有实实在在的词条词库的确立,语句构造的多样性也要打折扣。
其次,从哲学方法论角度看,自然语言词条多种用法的收集统计采用的是经验主义的方法,而通过逻辑系统推出构造自然语言无穷多语句所需要的规则工具则是理性主义的做法。CTL基于规则的思路贯彻的是理性主义的精神,而对待自然语言词条词库的消极态度步入的则是忽视经验主义方法的路径。理性主义方法和经验主义方法各执一端都是不完美的,二者的结合才是值得推崇的。CTL缺乏词库的研究是一种漠视经验主义方法的单一理性主义,是偏执一端的产物。
再次,CTL对待词库的不作为不利于吸取语言学的研究成果。逻辑语义学和语言学同样把自然语言作为研究对象,但二者研究的侧重是不同的。通常语言学大都关注作为构造语言出发点的词条的研究。人类要使用语言,必须掌握构造语言的原子材料——单词或词条,这是我们学习一门语言首先要懂得的知识。一门语言常用的词条有几千条,总数是几万乃至几十万条。语言学的研究对掌握语言构造机制来说是必要且重要的工作,语言学的工作成果之一是编撰的各种各样的词典,CTL应该构建足够大的词库来对应语言学词典中至少是词条多种句法功能的内容。CTL没有词库或只有象征性的词库,就无法吸取或对接语言学的研究成果。
最后,由于当今计算机的储存量超大,关于自然语言的计算机系统可以建立海量的语料数据库,分析的对象是大规模的真实文本。从计算机自然语言处理的角度看,没有正式词库设置的CTL离分析大规模真实文本的需求差之甚远,CTL关于自然语言词条的研究对计算机人工智能领域来说是不能满意的。
5 逻辑语义学新模式——组合范畴语法CCG
5.1 CCG总括
CTL作为自然语言的逻辑语义学理论,沿用传统的模式,忽视词库的构建,导致理论研究和实际需求的脱节。逻辑语义学为顺应信息时代的潮流,必须有所创新。其结果便产生了逻辑语义学的新模式——组合范畴语法CCG。从CTL到CCG,弥补了传统逻辑语义学研究的不足,彻底贯彻了词汇主义的思路,在构建自然语言词库方面下了不少的工夫,极大扩充了词库的容量。与之同时,CCG还传承了逻辑语义学的理性主义精神,大量启用函子范畴的组合规则和置换规则,使得规则的使用进一步具体化。如国外的宾州英文CCG树库[4]84和国内的清华中文CCG树库[5]以及笔者主持的国家重大课题的成果社科中文CCG树库[6]687的情况分别是:
宾州英文CCG库提取了75669个词条和48934个语句,涉及到929552个词例。清华中文CCG库词条和句子的提取来源于包含文学、学术、新闻、应用四大体裁的语料,尽可能多地覆盖了汉语的各种语言现象。
5.2 CCG构建庞大的词库
CCG的词汇主义思想弥补了CTL忽视词库的短板。在掌握大规模真实文本的基础上提取了作为自然语言构造出发点的有穷多词条,确定了这些词条在各种语境下的不同词例用法,每种用法用一个范畴表示,这就是CCG所谓一个词条对应多个范畴的做法,据此构建了庞大的词库。
宾州英文CCG词库:
清华中文CCG词库:
社科中文CCG词库:
上述数据见出,平均一个词条被指派的范畴是十多个。CCG采用从词条到词例的多范畴指派方法,其词库挑战了逻辑语义学“一词对应一范畴”的传统做法。
社科中文CCG词库采用多范畴指派方法,其中的词条(包括辅助符号)被指派范畴数量最多的前10名词条是:
在社科中文CCG词库中,被指派数十个范畴的词条非常普遍,如“在”、“是”和“有”等词条,“的”词条被指派的范畴甚至多达上百个以上。从社科中文CCG的词库看出,常用词被指派的范畴数量较多,汉语词条具有依赖语境的多种用法。以下是该CCG库中具有不同范畴指派的“的”的部分例句:
①春节前的一天下午,一群西装革履的台商来到东莞企石镇人民镇政府。
②虽然四十年的航天投资总额还不及前苏联、美国一年的航天投资。
③而台商对澳门的捐助,坦白说,还不如在珠海投资的港商。
④不同于上一代父母才开始接触ABC,如今英文已经是小学生生活的一部分。
⑤这首歌的词曲作者是意大利著名作曲家巴廖克,在开幕式上巴廖克本人与60岁的男高音歌
唱家雷斯科托共同演唱了这首会歌。
清华CCG词库采用多范畴指派方法,对汉语词条“学”就有7种不同的范畴指派[5]:
(表1)
按照传统做法,词条“学”可分别归入7个不同的基本语词类:
BNP={…,学,…}
BSNP={…,学,…}
B(SNP)/NP={…,学,…}
B(SNP)/(SNP)={…,学,…}
B(S(SNP))/NP={…,学,…}
B((SNP)/NP)/(SNP)={…,学,…}
B((SNP)PP)/NP={…,学,…}
宋彦和黄昌宁等学者认为:在清华中文CCG词库中,一共有10个原子范畴,包括M(量词)、MP(数量短语)、NP(名词及名词短语)、SP(方位词及方位短语)、TP(时间短语)、PP(介词短语)、S(句子)等等,在此基础上,一共可获得763个不同的范畴类型。按照传统标准,清华中文CCG词库中就有763个用范畴标记的基本语词类:B1,B2,……,B762,B763。比较蒙太格语法的PTQ语句系统的9个基本语词类和CTL的Lambek演算的7类语词构成的小小词库,CCG的词库是真够大的!可以覆盖自然语言词条丰富多样的用法。
5.3 CCG基于规则的思路
CCG发扬CTL长处,传承CTL基于规则的思路,延续了CTL的逻辑递归精神。“在自然语言处理的研究中,语言符号的递归性起着很大的作用。机器翻译的实质,就是把源语言中无限数目的句子,通过有限的规则,自动地转换为目标语言无限数目的句子。如果机器翻译的规则系统不充分利用语言符号的递归性,要实现这样的转换是非常困难的,甚至是不可能的”[7]33。
CTL构建的逻辑系统可以推出若干定理规则,这些定理规则中的大多数对自然语言的分析来说是不用或很少使用的。CCG采取够用即可的实用主义态度,集中关注在自然语言分析中需要使用的那些定理规则,从CTL那里推出所需要的规则,这是对逻辑精神的传承。而对语言分析不怎么用的那些规则,以及逻辑系统的理论问题如逻辑工具的性质讨论等内容就暂时舍去。CCG中函子范畴前向组合的规则“X/ Y,Y/Z→X/Z”被推出的过程如下:
更重要的是,CCG从应用实践的角度发展了CTL基于规则的思路。CCG不满足于CTL提供的规则普遍模式,而是把规则放到具体语言环境中去获得大量的规则例,即规则的具体使用。如在清华中文CCG库那里,就下述语句分析树而言[8]14,
就涉及了8个规则例:
CTL关于函项右贴合运算的规则“X/Y,Y→X”在CCG那里就变成了具有较大数量的规则例,如宾州CCG库的这个规则就有如下规则例[4]86:
整个宾州CCG库竟有3262个具体的规则例!CTL没有规则例只有规则的普遍模式,而蒙太格语法PTQ系统中的17条句法规则体现了潜在的规则例概念,但数量极为有限,距离自然语言句法构造的实际情况相差甚远!CCG则极大地扩大了规则例的数量和范围,使得逻辑的普遍规则同语言分析的具体实践结合起来,从而发展了CTL基于规则的思路。
5.4 CCG的创新价值
CCG的创新价值在于:从揭示自然语言构造机制两特征的角度看,CCG是兼容并举的,深入细致去研究语言构造的机制。从庞大的词库中有穷多的词条出发,使用CCG规则去构造分析无穷多的句子;从哲学方法论角度看,语言词条多种用法的收集和统计是经验主义的做法,是CCG的擅长。而逻辑规则的使用在CCG那里赋予了新的“生命力”,CCG并没有放弃理性主义的追求,CCG是经验主义和理性主义相结合的产物;CCG基于自然语言的实际语料,构建了容量足够大的词库,关注词条在各种各样语境下的不同用法,这是对语言学工作的敬畏和尊崇,有利于充分吸取语言学研究词汇的成果;就计算机自然语言处理而言,CCG的词库设置较大程度满足了分析大规模真实文本的需要,CCG关于自然语言词条以及句法语义构造规则的研究给计算机人工智能领域展示出诱人的前景。
由于CCG的创新价值,所以基于CCG设计的计算机自然语言分析器在诸多形式语言学理论自动分析中是速度最快的。“在2009年约翰霍普金斯大学举行的夏季研讨班上,研究人员通过采用优化的句法分析算法,使CCG句法分析在维基百科语料上达到每秒超过100句的分析速度”[5],而基于中心语驱动语法的计算机处理软件几秒钟才能完成一个语句的分析。CCG=语言学实践的词库+逻辑学精神的规则,CCG是满足计算机自然语言自动分析需求的逻辑语义学新模式。
6 CCG进一步研究的设想
即将结束本文之际,我们再次对比逻辑语义学传统模式和CCG新模式:为什么传统模式只有至多9类基本语词的词库,而CCG的词库竟可以分出700多类基本语词?传统模式的规则例只有为数不多的几十条,而CCG却可能有上千条?这种巨大的反差使我们不得不去思考其中的缘由。坦白说,这是传统的逻辑语义学模式需要考虑自然语言的语义而受到限制的结果。大家知道,宾州英文CCG库、清华中文CCG库和社科中文CCG库都是转换之前的形式语言学理论分析模式的结果,这些分析模式大都限于句法而不考虑语义,故CCG基本是句法分析的产物。如果全面系统地考虑语义因素,CCG的词库和规则例可能需要大的调整,语词类和规则例的数量会有所减少,笔者对此产生了一些具体的研究思路,这里由于篇幅所限,留待今后的文章。CCG的下一步研究任重而道远!
[1]Lambek J.The Mathematics of Sentence Structure[M]//W Buszkowski.Categorial Grammar.Amsterdam/Philadelphia:John Benjamins Publishing Company,1988.
[2]Gamut,L.T.F.Logic,Language and Meaning,vol.II:Intensional Logic and Logical Grammar[M].Chicago and London:University of Chicago Press,1991.
[3]Montague,R.The Proper Treatment of Quantification in Ordinary English[M]//R.Thomason.Formal Philosophy.New Haven:Yale University Press,1974.
[4]Hockenmaier,J.,M.Steedman.CCGbank:User’s Manual[R].Department of Computer&Information Science Technical Reports,2005.
[5]宋彦,黄昌宁,等.中文CCG树库的构建[J].中文信息学报,2012,(3).
[6]邹崇理,等.国家社会科学基金重大课题“自然语言信息处理的逻辑语义学研究”结项报告[R].2016.
[7]冯志伟.自然语言的计算机处理[M].上海:上海外语教育出版社,1996.
[8]周强.CCG与汉语分析[R].中国社会科学院哲学研究所学术报告,2012.
[责任编辑:熊显长]
B81
A
1001-4799(2017)02-0042-09
2016-11-28
国家社会科学基金重大资助项目:12&ZD119
邹崇理(1953-),男,四川成都人,四川师范大学逻辑与信息研究所特聘教授,中国社会科学院哲学研究所研究员、博士生导师,主要从事自然语言逻辑研究。