刘志伟,李学宁
系统功能语言学是一个开放而有活力的语言系统,它总是能随着时代的发展稳步地自我完善。早在20世纪50年代,韩礼德就密切关注计算语言学的发展,并对机器翻译、电子词典编纂等多个分支领域进行了深入的研究(Webster,2007)。从此以后,自然语言处理一直在系统功能语言学者的研究视野当中,一系列的研究成果也逐步问世。
从时间上来看,系统功能语言学在自然语言处理领域的应用历程恰巧伴随着计算机的变革。如今许多系统功能语言学的应用已经离不开计算机,比如机器翻译、语料库、自然语言生成和人机对话等,这些都可以在一定程度上检验系统功能语言学的完整性——面对真实的文本(自然语言)时,系统功能语言学能否对文本进行充分的形式化解读。这样一来,计算语言学者们才可以发现问题出在哪个环节,以及该如何提高。韩礼德认为能否将语言理论应用于人工智能是检验其正确性的重要手段,同时也是使之发挥更大作用的大好机会(朱永生,严世清,2001:12)。
本文就系统功能语言学在自然语言处理领域的应用历程进行总结,主要的应用领域包括机器翻译、语言切分、自然语言生成以及人机对话系统等。
早在20世纪50年代,韩礼德已经着手机器翻译方面的研究,此后,陆续发表了多篇重要论文。其中1962年发表的Linguistics and machine translation(Halliday,2007:20-36)具有重要的历史价值和现实意义,在此论文中,他所提出的理论观点对于今天的机器2翻译研究仍有重要的指导和借鉴意义。
首先,韩礼德对于机器翻译的语言学归属问题进行了探讨,他明确了机器翻译归属于应用语言学的范畴,这为机器翻译最终发展成为计算语言学中的一个重要研究领域起到了积极的推动作用。
在上世纪90年代之前,绝大部分的机器翻译系统基于规则的机器翻译系统,它们的设计方案可以归纳为三种基本的类型:直接翻译,中间翻译和转换翻译。而韩礼德的设计方案属于转换翻译,采用的是阶与范畴语法,他用实例演示了机器翻译的基本过程。在第一个阶段,需要对原文的句子进行切分,依次获得其小句、词组/短语、词和词素。第二阶段是逐层往上进行翻译,即先翻译词素,然后翻译词,以此类推。在每一级阶的翻译中,先在目标语中找到概率最大的等值翻译项目,然后在更高阶层的翻译中根据该词出现的上下文语境进行调整。在第三阶段,根据目标语的内在结构对译文在词汇和语法方面作进一步的调整。例如,“多”在词素层、词层可以暂时译为“many”。但是在小句层和句层,则应该基于英语的内部结构规律逐步调整为“there are more than…”(Halliday,2007:31-32)。
90年代之后,机器翻译引入了语料库方法,主要包括基于实例的方法和基于统一的方法。在韩礼德的机器翻译研究中,概率统计是一个重要的思想。他认为如果期待计算机进行机器翻译工作,就必须为之提供既精确、又有效的描写。在词汇定量研究方面,他认为统计词类出现频率和组合规律是不够的,还需要统计词汇的搭配。
韩礼德在1962年已经准确地预测了十年后的主流机器翻译规则系统设计方案——转换翻译,并认为其在语料库的机器翻译系统设计中也有广阔的应用前景,这体现了他在这个研究领域的前瞻性和洞察力。虽然在他的机器翻译研究中还存在着一些局限性,然而这些局限性一方面充分反映了机器翻译的复杂性,另一方面反过来推动了我们进一步从事相关的计算机与定量语言研究,同时这也是为智能计算研究打下了良好的基础。
上文提及60年代机器翻译的中止,语言学者们便将目光转移到语言切分上来。所谓语言切分是指语法中的句法结构的文本分析。
1.Parker-Rhodes和Yorick Wilks
最早对韩礼德的语法进行切分工作始于上世纪60年代初。当时,Parker-Rhodes和韩礼德是NUDE项目组的同事,基于韩礼德的阶与范畴语法,Parker-Rhodes研究出了一个切分程序,其领导的一组成员包括Yorick Wilks,后来研究出了韩礼德语法的句法系统。Wilks将切分方法编写在霍勒内斯(Hollerith,利用凿孔把字母信息在卡片上编码的一种方式)卡片机器上,其程序主要是将输入的句子成分用括号法进行切分,例如:
((His second wife)(was (young and (very beautiful))))
((His eyes)(were blue (like (the morning sky))))
2.Winograd
Terry Winograd最早在切分系统中使用系统功能语言学。来自美国的Winograd受奖学金资助,曾在伦敦做了一年韩礼德的学生,期间,使用系统形式化方法分析音调和谐。返美后,1967年,Winograd建立了一个系统SHRDLU:机器人能够根据人发出的一些简单指令来摆放不同颜色的积木(李学宁,张德禄2012)。此系统的句法分析器完全基于韩礼德的早期系统功能语法,以系统网络为核心。
SHRDLU系统在当时影响力极大,70年代的研究焦点在切分句子,以及如何使句法切分程序更有效率。Winograd则走功能路线,专注于如何使SHRDLU系统运行更加通畅,他建立了一个切分文本的系统,进行语义解释并决定如何采用恰当的处理方式。许多语言学者认为这个系统体现了自然语言处理与人工智能结合的可能性。
Winograd的工作使系统功能语言学在自然语言处理领域名声大震,但是仍然有许多问题需要改进,例如系统网络并不是输入计算机由其自行运行,而是要依靠使用者调用;再比如此系统最初是为摆放积木量身定做的,其应用范围较为有限,当时只有120个特征结构,并不能完成足够多的工作。
3.Martin Kay
Martin Kay和韩礼德在六七十年代有多年交流,也曾在剑桥语言研究中心工作过。基于系统功能语法,他创立了功能合一语法,后来成为应用最广泛的形式语法之一。虽然有此渊源,功能合一语法和系统功能语法还是有很大区别的。最重要的区别在于功能合一语法并没有采用系统网络,而是采用数理逻辑中的合一运算方法。
80年代后,Kay编写了功能合一语法的切分程序。这种程序可以把功能合一语法的功能描述映射为某种适合于分析算法的形式,然后采用句法处理器完成自动分析,这样功能合一语法既可以用于生成,又可以用于分析,成为一种双向性的语法。(冯志伟,2010:207)
4.加的夫语法
90年代后,围绕Fawcett的系统功能语法模型出现了一系列的切分试验。Fawcett早就意识到自动分析文本的重大意义,在Fawcett的卡的夫语法模型中,只有一层意义潜势,一个系统网络,即语义网络,它旨在根据特定的体现规则生成语法结构和语义特征(廖楚燕,2008)。其中包含两种切分方式,一是基于语料库的方法,二是基于语法的方法。限于篇幅,在此不作具体论述。5.O'Donnell
1989年,Mick O'Donnell小范围的尝试了多种切分程序,发现很难将范围扩大以至覆盖系统功能语法。1990年,他在洛杉矶信息科学学院的Kasper手下工作,学习了语法再编辑,用形式逻辑的方法进行切分。在没有附加条件限制的情况下,O'Donnell第一次建立了一个可以完全切分系统功能语法的系统,但是当用此系统去处理Nigel语法时,要花费数小时的时间来编辑语法,这大大限制了系统的使用。后来O'Donnell缩小范围,将切分系统控制在语气层,这极大的提高了切分的速率。
简单说来,自然语言生成是基于某种语法的在计算机上实现自动生成句子的学科。最早将系统语法用于语言自动生成的语言学者是Henrici,1965年,他采用了系统(纵聚合关系)和结构(横组合关系)的概念来进行编程。限于当时的条件,虽然表征程度不高、兼容性较弱、局限性较大,但可以肯定系统语法在自然语言生成的应用是完全可能的。
另一将系统功能语法应用于自然语言生成的代表人物是Robin Fawcett,他认为将系统功能语法应用于自然语言生成非常有必要,在这一方面的持续性工作使得后来建立的COMMUNAL系统成为在自然语言生成方面应用最为广泛的系统之一(O'Donnell&Bateman,2005)。
在这一应用上,Proteus是第一个真正意义上的自然语言生成系统。这是第一次发现运用系统的词汇语法来进行自动文本生成的系统。运用此系统,计算机可以自行玩“三连棋”游戏。Proteus采用了Hudson(1973)的系统语法,明确了语法范畴:系统语法的表示方法是系统网络。在系统网络中需要选择一系列的特征,才能生成相应的句法成分;使用了替代、照应、连接等一系列的衔接手段,以此增强文本的连贯性。
系统功能语言学在自然语言生成的地位因为Penman系统的出现得到了极大的提升。Penman系统由洛杉矶信息科学学院的William Mann设计研发,基于之前的计算机应用经验,Mann确信要使计算机像人一样操作需要非常详尽有效的词汇、语法、语义和话语模型,这样的模型在当时的自然语言生成领域是非常困难而且罕见的,经过反复思考,Mann决定以韩礼德的系统功能语法为基石来建立其系统模型。Mann希望Penman系统可以做成无关上下文、应用范围不限的自然语言生成系统,因此他邀请了韩礼德和当时从UCLA(加州大学洛杉矶分校)刚毕业的Matthiessen一起研究如何将系统功能语法用计算机表征。经过长期的研究,他们建立了一套非常清晰的、用于自然语言生成的计算系统功能语法,即Nigel语法。Nigel语法包括两个组成部分:系统语法、选择与询问界面。前者可以进一步分为系统、实现规则和词库。而后者是系统语法与环境的界面,其作用是向环境提出询问,并根据回答对系统语法进行有目的的选择。Nigel语法应用非常广泛,至今仍然少有生成语法可以与它媲美。
总的说来,基于系统功能语法的生成系统已经在自然语言生成领域占有了一席之地,但是后续的影响和发展还是需要诸多因素支撑。
建立人机对话系统是系统功能语言学在自然语言处理上更深层次的应用。人机对话,顾名思义,即计算机操作员或用户与计算机之间,通过控制台或终端显示屏幕,以对话的方式进行工作。
1991年,澳大利亚电信公司和悉尼大学的研究小组最早将系统功能语法直接应用于这一领域。他们启动了一个研究项目建立电信对话系统,此系统可以使人与计算机“接线员”对话以获得信息。此对话系统采用了O'Donnell、Berry、Martin等语言学者的语言交流模型,由两部分组成:交流状态网络和一系列行为模式选项。行为模式选项由交流状态决定,而每一个行为指令都会引起交流状态的改变。
另一对话系统由KOMET自然语言生成小组和布达佩斯大学合作建立,目标是探索德语语言生成,找到适合语境、恰当交互方式的语调控制方式(Teich,1999)。此系统依靠鼠标和键盘输入,输出的是基于韩礼德韵律性的带有语调控的德语。
虽然现在有许多人机对话系统,也可以完成特定的任务,例如已经有不少省份开始使用英语人机对话系统进行中高考英语听力口语测试,但这些系统都不是系统功能语言学框架内的。不过可以预见,在不久的将来系统功能语言学一定会研究出应用更加广泛的人机对话系统。
归纳系统功能语言学在自然语言处理中的应用具有重要意义,在此过程中,我们不仅梳理了系统功能语言学在各分支领域的应用情况,同时学到了很多新知识,遭遇了许多新挑战。虽然应用广泛,但真正基于系统功能语言学的人机对话系统还未出现,语法的复杂度依然很高,有许多问题暂时还无法解决,比如基于语义的智能计算系统等。
随着人工神经网络技术的兴起,人们有可能采用联结主义的新范式来建立系统功能语言学的计算模型(李学宁,张德禄2012)。系统功能语言学者正在不断努力实现系统功能语言学理论的计算表征,促进系统功能语言学的新发展。
[1]Elke Teich.Systemic Functional Grammar in Natural Language Generation[M].London & New York:CASSEL,1999.
[2]Fawcett R.P.&Tucker G.H.Demonstration of GENESYS:a very large semantically based systemic functional grammar[C].Helsinki,1990.
[3]Hutchins,John.Machine translation:past,present,future[J].Chichester,Ellis Horwood,1986.
[4]Kress,Gunther,Ruqaiya Hasan &James R.Martin.Interview——M.A.K.Halliday May 1986[J].Social Semiotics,1992.
[5]Mann,W.C.and Matthiessen C.M.I.M.Demonstration of the Nigel Text Generation Computer Program[J].Ablex,Norwood,NJ,1985.
[6]O'Donnell,M.and Bateman,J.A.SFL in computational contexts:a contemporary history [M].Equinox:London,2005.
[7]Winograd,T.Understanding Natural Language[M].Academic Press,New York,1972.
[8]李学宁,张德禄.系统功能语言学的形式化进程——兼评《系统功能语法在自然语言生成中的应用》[J].山东外语教学,2012,(1):27~32.
[9]冯志伟.自然语言处理的形式模式[M].合肥:中国科学技术大学出版社,2010.
[10]胡壮麟,朱永生,张德禄,李战子.系统功能语言学概论[M].北京:北京大学出版社,2005.
[11]朱永生,严世清.系统功能语言学多维思考[M].上海:上海外语教育出版社,2001.