本发明一般涉及以计算机为基础的文件创作与翻译系统,说得更具体些,是涉及一套用约束语言写作文本将其翻译成外语而无须作译前或译后编辑的系统。 凡在日常运作中需要以各种文件形式制作大量信息的组织机构,都必须设法保证这些文件清晰易懂。在理想的情况下,这类文件应当用具备一切必要表达特性的、简明而直接的语言书写,以取得最佳的交流效果。这种语言应该始终一致,以便通过其独特而稳定的语言风格就能识别出该机构。这种语言应当没有歧义性。
为了追求这种书写上的优点,人们运用了各种各样的规范,试图控制文本写作过程。然而作者的能力与背景千差万别,要他们自如地去适应一个统一的技术标准是不可能做到的。而且书写指南、规则和书写标准等也都不尽明确-难以确定与执行。为了使书写标准化和提高书写质量所作的努力,往往产生利弊参半的结果。无论采取什么手段,结果多么成功,终究还是增加了文件写作工作的费用。
近来试图让作者利用计算机软件环境来提高写作产量和质量的种种尝试,唯一成功地只是提供了检查拼写的程序。其他用于写作的软件,至今仍不能产生令人满意的功效。
当传达信息的需要必须跨越语言上的疆界才能满足时,难题就更多了。凡需要使自己的信息流通渠道畅通无阻的各类机构,都要在很大程度上-即使不是完全-依赖于翻译。
将文本从一种语言翻译到另一种语言的工作已经做了好几百年。在计算机问世之前,这种翻译工作是由一些被称作翻译者的专家完全用人工完成的。翻译者需要通晓原文(源文本)的语言和译文(目标文本)的语言。在典型的情况下,目标语言最好是翻译者本来就精通的母语,而源语言则可以是后来学会的。据认为这样产生的翻译最准确,工作效率也最高。
即使是最内行的翻译者,翻译一页文本也要花费相当多的时间。譬如说,据估计,一位内行的翻译者将技术性文本从英语翻译成日语,每小时只能翻译约300个字(约一页)。由此可见,翻译一份文件,尤其是技术性资料,是需要花费大量时间与精力的。
最近一百年来,工商企业界和国际贸易对翻译的需求持续增长。这是由几个因素促成的。一个因素是涉及国际商业活动的文本迅速增多。另一个因素是,一家公司要开展国际贸易就必须将此类文本翻译成很多种语言。第三个因素是商业的发展步伐迅速,导致各种文件需要经常修改,因而也需要翻译修改后的新版本。
许多机构都负有以多种语言制作和发行信息资料的职责。在国际市场,制造商要将产品销往其他国家,就必须保证广泛提供以这些国家的主要语言发行的产品说明书等。用人工将文件翻译成外语,费钱费时,效率也不高。由于翻译者不一定都十分精通文件中所用的专用语言,不同翻译者对原文的翻译也就因人而异,往往造成译文的不一致,鉴于这些问题,实际翻译的说明书并未达到理想的数量。
在研究与开发的领域,本世纪出现的知识爆炸也极大地增加了对文件翻译的需求。在任何一个特定的研究与开发领域中,只以一种主导语言写作文件的现象已不复存在。在典型的情况下,此类研究与开发活动主要是在几个发达的工业国家开展,例如美、英、法、德、日等国。但是不少其他语言中也经常含有涉及特定研究与开发领域的重要文件。技术的进步,特别是电子技术与计算机的发展,进一步加速了以各种语言制作的文本的产生。
制作文本的能力是与所用技术的效能成正比的。譬如说,在文件不得不用手写的时代,作者在每一单位的时间里只能写出一定的字数。然而,随着打字机、油印机和机动印刷机等机械装置的问世,写作速度就大大提高了。而电子技术、计算机技术及光学技术的诞生,则更进一步提高了作者的能力。今天,一般的作者在某一单位时间里所能制作的文本,要远远多于过去任何作者使用手写方法所能制作的文本。
这种文本数量的迅速增多,加上技术的迅猛发展,促使从源语言到一种或多种目标语言的文本翻译问题得到了高度的重视。一些大学以及私人与政府机构的实验室都对此进行了大量的研究,以探索不需要人类翻译者的介入就能完成翻译工作的方法。
他们研制出了一些以计算机为基础的试图进行机器翻译(MT)的系统。此类计算机系统的程序设计目的,就是要将作为输入的源文本自动翻译成作为输出的目标文本。然而研究人员发现,运用现有的技术一理论知识,还不可能应用这种计算机系统来进行自动的机器翻译。至今问世的所有系统,都必须有内行的编辑/翻译人员进行某种编辑加工,才可以完成从一种自然源语言到一种自然目标语言的机器翻译。下面讨论其中的一种方法。
在一个被称作译前编辑的过程中,首先由一名源编辑者对源文本进行加工。该源编辑者的任务是修改源文本,使之符合所谓用机器翻译系统进行翻译的最佳状态。至于符合最佳状态的标准,则是源编辑者通过试错法来确定的。
上述译前编辑过程可能还要由其他一些源编辑者反复进行,每一道编辑工序都由一名水平更高的源编辑者来完成。经过这样编辑加工的源文本才交由机器翻译系统处理。系统输出的是目标语言文本,这个文本是否需要作译后编辑,则视译文的用途或用户对译文质量的要求而定。
如果要求译文的质量必须与出自翻译行家之手的译文质量相当,那么机器翻译的产品很可能需要由一名胜任的翻译者进行译后编辑。这是因为人类语言的复杂性,以及利用现有技术(同时也受到时间与人力物力的自然局限,并需要满足成本效益方面的合理要求)所能研制的机器翻译系统的能力比较平凡。事实上,现在研制的这种能力平凡的系统多数都需要进行译后编辑,以便通过任何可能的途径使译文接近纯粹人工翻译的译文质量水平。
卡内基梅隆大学(Carnegie Mellon University)机器翻译中心设计的KBMT-89就是这样的一套系统,专门进行英日与日英翻译。该系统运用一种基于知识的域模型来辅助对话式单义化处理(也就是对文件进行编辑处理,使之没有歧义)。但是,这个对话式单义化过程不是典型地与作者交互完成的。每当系统遇到一个它无法进行单义化处理的有歧义的句子时,它必须停止这一过程,通过向作者/翻译者提出一系列多重选择问题的方式来解决歧义性。此外,由于KBMT-89系统未使用定义明确的受控制的输入语言,因此这种所谓的翻译者辅助的对话式单义化作用所产生的文本需要作译后编辑。
综上所述,要发挥机器翻译的优势,必须研制一种无须作译前和译后编辑的翻译系统。
本发明概述
本发明是一个以计算机为基础的用于编制单一语言文件和翻译成多语言的综合处理系统。由计算机化的对话式文本编辑程序,对作者创作文件时使用的自然语言子集施行词汇约束和语法约束,并支持作者对文本进行单义化处理,以保证其可译性。由此产生的可译的源文本经机器翻译为一组目标语言中的任何一种语言,译成的文本无须作任何译后编辑。
附图简要说明
图1(a)和1(b)是本发明系统构造的高级方框图。
图2是本发明的高级作业流程图。
图3是MT120信息流(information flow)与构造的高级方框图。
图4显示一个信息元(information element)的例子。
图5是域模型(domain model)的方框图。
图6是语言编辑程序(language editor)130的高级作业流程图。
图7是词汇检查程序(vocabulary checker)610的作业流程图。
图8是单义化程序块(disambiguation block)630的高级流程图。
图9MT120的信息流与构造方框图。
本发明的以计算机为基础的系统提供以下功能合成:
1)一个用于编制文件的写作环境,以及
2)一个无须作译前或译后编辑准确翻译成多种语言的机器翻译模块。在多种语言的文件制作中运用这一技术,用户不论是要进行少量还是大量的翻译,都可确保翻译的准确一致,节省时间,以较低的成本取得较高的效益,而且可以做到实际上同时以源语言和需要译成各种目标语言一起释放信息。
我们决定将源语言写作功能与翻译功能连接起来,是基于以下两个原则:
1)在一个多民族、多语言的商业环境中,如果不能以用户的各种不同语言发送信息资料,该信息资料则不能算是完全制作成功。
2)将文件写作与翻译过程结合于一个统一的构架,可达到以其他方式不可能达到的效率。
图1(a)显示的是文件写作与翻译综合系统(Integrated Author-ing and Translation System-IATS)105的高极方框图。IATS105系统提供一个特殊的计算环境,专门用于支持各机构团体用一种语言写作文件并将文件翻译成各种其他语言。这两个截然不同的功能是由一组综合的程序支持,方法如下:
1)写作-一组程序子群提供一个计算机化的对话式文本编辑程序(TE)140,使作者可以在受到词汇约束与语法约束的自然语言子集的有限域内创作单一语言文本,该自然语言子集被命名为约束源语言(Constrained Source Language-CSL)。此外,TE140还能帮助作者对文本作进一步的翻译准备处理,即引导作者通过文本单义化处理过程,使文本无须作译前编辑即达到可译程度。
2)翻译-另一组程序子群提供机器翻译(MT)120功能,能够将CSL翻译成多种目标语言-在生成程序模块中编好程序能生成多少种语言,就能翻译成多少种语言。所生成的译文无须作译后编辑。
作为一套以翻译为中心组成部分的系统,本发明将写作与翻译功能结合于一个统一构架的方法,是迄今研制成功的无须作译前和译后编辑的唯一方法。
本文编辑程序(TE)140是一套支持作者和编辑者用CSL创作文件的工具。这套工具可以帮助作者用适当的CSL词汇和语法来编写文件。TE140直接与作者160通信(反之亦然)。
参见图1(b),IATS105被分成四个主要部分来完成写作与翻译的功能:(1)约束源语言(CSL)133,(2)文本编辑程序(TE)140,(3)机器翻译程序(MT)120,(4)域模型(DM)137。文本编辑程序140包括语言编辑程序(LE)130和图形编辑程序(GE)150。此外还有一个用以控制处有处理过程的文件管理系统(FMS)110。
CSL133是一个源语言子集,子集中的语法与词汇覆盖了需要翻译的作者文件的领域。CSL133以所允许的词汇和语法结构的规格定义,以便达到翻译过程不必借助于译前和译后编辑的目的。
TE140是一套支持作者和编辑者用CSL创作文件的工具。这套工具可以帮助作者用适当的CSL词汇和语法来编写文件。语言编辑程序(LE)130通过文本编辑程序140与作者160通信(反之亦然)。作者通过连线162与文本编辑程序140进行双向通信。LE130告诉作者160所用的词和词组是否属于CSL。如果所用的词与该文件所属的信息域有关,但不属于CSL,LE130能够建议作者用CSL中的同义词替代。此外,LE130也会告诉作者160某一文本是否符合CSL的语法约束,并且协助作者对某些可能句法正确,但是在语义上有歧义的句子进行单义化处理。
MT120分成两部分:MT分析程序127和MT生成程序123。MT分析程序127有两个作用:分析文件以保证文件单义地符合CSL,和产生中间语(Interlingua)文本。然后,分析过的经CSL认可的文本就被翻译成所选定的外国(目标)语言180。MT120采用以中间语为基础的翻译方法,不是直接将文件翻译成另一种外语,而是由MT生成程序123将文件转换成一种独立于任何语言的、计算机可读的形式,称作中间语(Interlingua),然后从中间语文本生成译文。这样完成的翻译文件无须作译后编辑。每种不同的语言都需要制作不同的MT120版本,其主要内容是一套为引导从中间语文本到外语文本的翻译过程而设计的知识源。尤其是必须为每一种新的目标语言单独开发一个新的MT生成程序123。
在完全发挥功能的情况下,如果遇到符合CSL的语法约束,但是意思并不清楚的句子,LE130有时会要求作者160从对这些句子的几种可能的解释中作出选择。这个过程称作单义化处理(disam-biguation)。当LE130确定了文本的某一部分只使用CSL词汇,并且符合所有的CSL语法约束之后,该文本就被标为经CSL认可(CSL-approved),接下去便进行前面所说的单义化处理。由以下说明可以看到,单义化处理不会要求对文本中作者明显可见的内容作任何改动。文本经单义化处理之后,使可以翻译成目标语言180了。
实际上,LE130设置成文本编辑程序140的延伸。文本编辑程序140提供作者与编辑者制作文本与表格所需要的基本文字处理功能。图形编辑程序150用于制作图形。图形编辑程序150还提供通过文本编辑程序140存取图形上的文本标记的途径,从而使这些文本标记也可以得到CSL认可。
LE130(经由文本编辑程序140)与MT分析程序127通信,并且通过MT分析程序127在单义化处理过程中经由插座到插座(socket-socket)的双向连线与域模型(DM)137连接。在本发明的较佳实施例中,DM是馈给MT分析程序127的知识库之一。DM137的作用是关于MT分析程序127和LE130所用的CSL词汇的说明性知识的符号表示。
图2显示的是IATS105的高级作业流程图。MT120、LE130、文本编辑程序140和图形编辑程序150都受到FMS110的控制。控制线111-113为IATS105的正常操作提供必要的控制信息。
首先由作者160用FMS110选择一个需要编辑的文件,FMS110便启动文本编辑程序140,显示该文件的档案。如方框160和220所示,作者使用文本编辑程序140把可能是未经约束的、有歧义的文本输入到IATS105。作者160用标准的编辑命令创作与修改文件,直至文件达到可以接受是否符合CSL的检查阶段。要注意的是,我们预期多数作者在输入文本时会在相当程度上考虑到文件需要接受CSL的约束。然后该文本由作者依据系统显示是否违反预定的词汇和语法约束的反馈而加以修改,以便符合CSL。这样的方法当然要比一开始输入完全不受约束的文本效率高得多。不过,即使一开始输入的是完全不受约束的文本,系统也会正常运转。
作者与LE130的通信是以按动鼠标器或打键盘命令进行的。然而,应注意其他的输入形式也可以使用,诸如(但不限于)使用记录笔、声音等等,而无须改变本发明的范围或功能。一个输入的例子是发出命令要求作CSL检查,或要求寻找某个词或词组的定义及用法举例。
如方框230所示,要分析可能含有残余歧义或文体问题的CSL文本,是否与CSL相符,并检查是否遵守知识库中所含有的语法规则。作者通过反馈线215得到反馈信息,由此改正文本中的任何错误。具体说来,是由LE130向作者160提供关于非CSL的词、词组和句子的信息。最后,要检查文本中是否有歧义的句子。LE提示作者选择对句子意思的合适解释。这个过程要反复进行,直至文本完全消除歧义。
当作者对文本作了所有必要的修正,并完成了分析阶段230之后,经过单义化处理的/受约束的文本240便到达MT分析程序和翻译程序250。翻译程序与分析程序的句法部分一起常驻于MT分析程序127,并将经过单义化处理的/受约束的文本240翻译成中间语260,再由生成程序块270将中间语260翻译成目标文本280。如图3所示,中间语260的形式足以能被翻译成多种语言(306-310)。
通过要求并允许作者创作符合特定词汇和语法约束的文件,才有可能将约束语言文本准确地翻译成外语,而无须作译后编辑。之所以无须作译后编辑,是因为LE词汇检查程序块217和分析程序块230在翻译之前已经让作者对文件中所有可能有歧义的句子和所有不可译的词作了修改和/或单义化处理。
在一个较佳的实施例中,每个作者都可单独使用一个带32兆RAM、400-兆字节磁盘机和19英寸彩色显示器的DEC工作站(DECstation)。每个工作站的局部磁盘将配置有至少100兆的调换盘。除了作者的工作站之外,每两个写作组可使用一个DEC伺服机作为文伺服机,每个文件伺服机不超过45个用户。而且,写作工作站将常驻于一个Ethernet局部网络。系统使用Unix操作系统[用Berkeley Standard Distribution(BSD)的派生型要比System V(SYSV)的派生型更好]。还可以配备C程序设计语言和OSF/Mo-tif程序库。LE将在一个Motif视窗式管理程序中运行。应该注意,本发明并不局限于上述硬件与软件装置,其他装置也在本发明的构思范围内。
A.文本编辑程序
本发明的较佳实施例提供一个文本编辑程序140,它允许作者输入将要被分析并最后翻译成外语的信息。市场上可买到的任何文字处理软件都可与本发明连用。一个较佳的实施例是用ArborText公司提供的SGML文本编辑程序140。SGML文本编辑程序140提供作者与编辑者所需要的基本文字处理功能,并且可与InterCap公司的软件连用制作图形。
本发明使用SGML文本编辑程序140,因为它是用标准通用化标记语言(Standard Generalized Markup Language-SGML)的标识符来制作文本的。SGML是用于一个描述电子文件结构的国际标准标记语言。这种语言是为满足多种不同的文件处理与互换作业的要求而设计的。运用SGML标识符,可以根据文件的内容(文字、图像等)和逻辑结构(章、段、图表、表格等)来描述文件。如果是更大、更复杂的电子文件,它还可以分成几个档案来记述一个文件的实体组织。SGML设计成让任何种类的文件,无论简单或复杂,短的或长的,都能以独立于系统与应用的方式描述。这种独立性使文件能在不同的系统之间互换,以适合不同的应用,而不会造成误解,也不会失去数据。
SGML是一种标记语言,即一种利用编码信息来“标记”或注释文本的语言,该编码信息加到由一件文本所传达的传统的正文信息中。在多数情况下,它是在电子文件中不同的地方以序列的形式出现。每个序列都可以通过表示该序列开始和结束的特殊字符与周围的正文区分。如有请求,软件可以检查SGML标识符,以核定正文中插入的标记是否正确。这种标记不是专为某一特定系统或任务设计的,在这个意义上它是通用的。有关SGML标识符更深入的探讨,请参见International Standard(ISO)8879,Information pro-cessing-Text and office systems-Standard Generalized markup Language(SGML),Ref.No.ISO 8879-1986(E)。
使用SGML标识符可产生以下功能:
(1)将文件分为片断或可译单位。文本编辑程序140软件同时用标点符号和SGML标识符来识别源输入文本的可译单位(识别分节标题必须用SGML标识符);
(2)屏蔽(隔绝)不需翻译的单位。虽然系统的设计是基于这样一个前提:所有的词和句子都将属于无法事先预见的约束语言(例如姓名和地址),或者无法(很容易地)详尽分类的词汇类别(例如部件编号,机器发出的错误信息),但是可以在这些项目的周围加上SGML标识符,告诉系统这些内容无须检查;
(3)鉴别上述第(2)条讨论的内容(如部件编号);
(4)允许翻译句子的局部(如醒目排列的项目);
(5)通过鉴别文本结构辅助表格翻译(一次翻译一单元)。这个功能与第(1)条所述相似;
(6)通过(2)、(3)、(4)、(5)的功能辅助语法分析过程(详见下述);
(7)辅助单义化处理,即提供在源文本中插入看不见的标识符的手段,表示某一歧义句子的正确解释;
(8)通过识别需要特别处理的特定文本类别辅助货币与数学单位的翻译;
(9)提供将部分文本标明可译的手段,换言之,证明某文本部分已通过了下面概述的过程,因此该文本部分已是可以翻译而无须作译后编辑的单义性约束文本。
过去,作者(借助于文本编辑程序140)制作的电子文件(只是文字,没有图形)代表一本完整的“书”。这意味着所有的工作都是由一位作者完成的,所制作的信息不容易重复使用。然而,本发明使用一组较小的片断或信息元来编(或著)书(说明书、文件资料等),这意味着编著工作可以由多位作者分担。本发明的结果是信息较易重复使用。信息元定义为有关某一专门域中最小独立单位的服务信息。不过应当注意,虽然一个较佳的实施例利用了信息元,但是本发明也可以不用信息元而产生准确的、没有歧义的翻译文件。
图4所示是一个信息元410的实例,该信息元包括“独用”标题415、“独用”文字块420,“分用”图形430,“分用”表格435,和“分用”文字块425。
“独用”(unique)信息是指只在该信息中适用的信息。这意味着“独用”信息是作为信息元450的一部分存档的。
“分用”(shared)项目(图形、表格或文字块)是在信息元中“供参考”的信息。“分用”项目的内容会在写作工具中显示,但是只在存档的信息元450中“被指示”。
“分用”项目与信息元的区别在于前者不是独立的(也就是说,它们本身并不传递足够的信息以形成独立的信息)。如方框450所示,每个“分用”项目本身是一个分隔的存档文件。
信息元是“独用”信息块(文字和/或表格)与一个或多个“分用”项目组成。注意,“独用”标题415和“独用”文字块420,与“分用”图形430、“分用”表格435及“分用”文字块425结合在一起。一个或多个信息元组成的集合构成一份完整的文件(书)。
“分用”项目贮存在“分用”信息库中。信息库的种类包括:“分用”图形库460a,“分用”表格库460b,“分用”文字库460c,“分用”音响库460d,和“分用”视像库460e。一个分用项目只贮存一次。当用于个别信息元时,只将表示原始分用项目的“指针”放在信息分用档案450中。这样可以使所需的磁盘空间达到最小。假如更改了原来的分用项目,所有“指向”该项目的信息元也自动更改。任何类型的出版物都可以使用分用项目。
“分用信息元”是用于不止一份文件的信息元。例如,释放信息库470中的同样四个信息元被用来创作文件480和485的部分内容。
作者与LE130之间的一切通信,都经过LE用户接口(LE Us-er Interface-UI)传达。用户接口或者以标准的SGML编辑设施的扩展,如菜单选择项的形式实现,或者用另外一个视窗实现。用户接口提供并管理进入各个CSL检查程序和CSL词汇查找设施的人口及其控制,并且也是让用户与CSL LE进行对话的主要工具。虽然“用户接口”一般泛指至整套软件系统的接口,但是此处只限于表示至各个CSL检查程序、词汇查找设施及单义化处理设施的接口。
除其他任务以外,UI必须提供以下几方面的明确信息:(a)LE正在执行的活动,(b)这些活动的结果,(c)任何接着发生的活动。例如,每当通过UI开始执行的活动超过极短暂的实时暂停时,UI使应该以简洁的信息告诉作者可能会出现延迟。
作者可以通过在文本编辑程序140的卷帘式菜单上选择一个项目的方式来启动LE的功能。可供选择的项目允许作者启动并阅读CSL检查(包括词汇与语法检查)及词汇查找功能发出的反馈。作者可以要求在当前显示的文件中开始检查,或者要求对某一特定的词或词组进行词汇查找。
UI会清楚地表明在文件中找到的每一个非CSL语言事例。表明非CSL语言的可能方法包括在SGML编辑视窗使用颜色和改变字体类型或尺寸。UI会显示关于每个非CSL词的所有已知的信息。例如,在适合的情形中,UI会显示一个信息,说明这个词不属于CSL,但是有CSL的同义词,并且列出这些同义词。
如果词汇检查报告中列出一些可以替代该非CSL词的形式(如其他拼写形式或CSL同义词),作者可以在其中任选一个,并要求在文件中自动替代。在某些情况下,作者可能需要对所选的替代内容略做修改(即增加合适的词尾),以保证其形式正确。
当作者要求有关词汇的信息时,UI会显示出该词汇的可替代拼写形式、同义词、定义和/或用法举例。
作者可在UI中快速简便地在检查程序信息与词汇查找信息之间来回转换。这使作者可以在改变文件以去除非CSL语言的过程中同时进行信息搜索(如查找同义词)。
在多数情况下,UI会自动用CSL词汇替代非CSL词汇,不需要用户修改CSL词以保证其形式正确。然而有的时候,对文件不作语法分析的词汇检查程序(如下所述)会无法鉴定应该提供的正确形式。请看下面这条图片说明,其中的动词“view”不属于CSL,但是有CSL同义词“see”:
Direction of Crankshaft Rotation(when viewed from flywheel end)
词汇检查程序不知道应该为“viewed”提供的同义词究竟是“saw”还是“seen”。当然,在这种情形中,合理的做法也许是两个可能形式都提供,让作者去选择一个合适的。由于不能保证每一种情况都允许作者作出直接替代的指令,LE130会尽可能列出一批正确形式的替代选择项。不过有的时候作者会发现,必须先对程序提出的CSL词或词组进行编辑,然后才能要求将它置入文件。
最后,LE UI也能支持对句子意思进行单义化处理,做法是为作者列出一些可能的选择解释,让作者去选择一个合适的解释,并给这个句子加上标记,以表明这是作者的选择。
B.文件管理系统
文件管理系统(FMS)110充当作者与信息元(IE)释放库470和SGML文本编辑程序140之间的接口。典型的例子是,作者如要选择一个IE进行编辑,就在FMS接口指明该IE的档案。然后,FMS110会启动并管理该IE的SGML编辑会话。完成的文件将通过FMS控制的设施传送给一个人类编辑者或信息综合装置。
C.约束源语言(CSL)
以当今科技文献的复杂性而论,要对无约束的自然语言文本进行高质量的机器翻译实际上是不可能的。主要的障碍是属于语言学性质的。翻译源文本的关键环节是要用目标语言准确表达原文的意思。由于意思隐含于正文信号的外表之下,因而必须对这种公开的信号进行分析。在生成目标语言信号的过程中就是采用这种分析得出的意思。某些最令人头痛的翻译难题,便是由语言中那些难以分析与生成的内在特征所造成的。
下面举出几个这样的特征:
1.有些词在上下文不明的情况下会有不止一个意思
例如:Make it with light material。[“light”一词是指“发亮的”,还是指“轻的”?]
2.有些词的构成具有歧义性
例如:德语词“Arbeiterinformation”既可以是“information for workers”[Arbeiter+Information],也可以是“formation of fe-male workers”[Arbeiterin+Formation]。
3.有些词具有不止一个句法功能
Round一词可以作名词(N),动词(V)或形容词(A):
(N)Liston was knocked out in the first round。
(V)Round off the figures before tabulating them。
(A)Do not place the cube in a round box。
4.有些词的不同组合可以各有不止一个句法功能
例如:British Left Waffles on Falklands。
[如果Left Waffles被读成N+V,这条标题是关于the British Left的]
[如果Left Waffles被读成V+N,这条标题是关于the British的]
5.有些词的组合造成结构的歧义性
例如:Visiting relatives can be boring。
[到底是指“visiting of relatives”还是指“relatives who visit”?]
例如:Lift the head with the lifting eye。
[“lifting eye”是一种器具还是“head”的一个特征?]
6.代词的指代不明确
例如:The monkey ate the banana because it was…
[“it”指的是“the monkey”还是“the banana”?]
上述语言特征,再加上生成过程中的难题,增加了机器翻译的总难度。
通过缩小语言所表现的语言学现象的范围,可以大大减少翻译的难题。子语言(sublanguage)可以将词语的所指对象、作用及关系限定在一个有限的界域内。但是,虽然子语言的词汇可能有限,在语法能力方面却不一定有限。在有控制的情形下,便于机器翻译的一个办法,是同时约束子语言的词汇和语法。
词汇约束可以限制词汇量,方法是避免同义词,并尽可能使每一个词汇单元专门表达一个意思,从而控制词的歧义性。这些约束如何避免上述第1、2、4例中的问题,是不难想象的。语法约束可以简单地排除代词指代功能(上述第6例)之类的语法作用,或者要求通过加词、或者重复在正常情况下属于多余的信息,或通过改写等方式,使所要表达的意思更为明确。以下例子说明这一要求的应用方法:
未约束的歧义性英语语言(可以有下面A、B1或B2三种解释):
Clean the connecting rod and main bearings。
单义的英语写法A:
Clean the connecting rod bearings and the main bearings。
单义的英语写法B1:
Clean the main bearings and the connecting rod。
单义的英语写法B2:
Clean the main bearings and the connecting rods。
根据约束子语言的不同设计目的,词汇与语法约束的数量及类别可能大不一样。
综上所述,本发明就是将文件写作限定在一种约束语言的范围内。约束语言就是从源语言中发展出来的一种用于特定的用户应用域的子语言(如美国英语)。有关约束语言或控制语言有一般讨论,请参阅Adriaens等人的From COGRAM to ALCOGRAM:To-ward a centrolled English Grammar Checker一文,发表于Proc.of Coling-92,Nantes(Aug.23-28,1992),其中有本文参照采用的资料。在机器翻译中使用约束语言有以下两个目的:
1.便于源文件的写作具有一致性,鼓励明畅直接的写作风格;
2.为源文本提供一个有原则的构架,以允许对用户文件进行快速、准确、高质量的机器翻译。
作者在写作时必须遵循一套规则,以保证所写文字的语法符合CSL,这套规则我们称之为CSL语法约束。在机器翻译部分用CSL语法约束来分析CSL文本的计算执行功能,我们称之为CSL功能语法,这个命名是依据由Martin kay提出,后来由R.Kaplan和J.Bresnan修改的著名形式主义理论[参见Kay,M.的“Parsing in Functional Unification Grammar,”一文,发表于由D.Dowty,L.Karttunen和A.Zwicky(编辑的),Natural Language parsing:Psychological,Computational,and Theoretical Perspectives,Cambridge,Mass.:Cambridge University Press,pgs.251-278(1985),和Kaplan R.和J.Bresnan的Lexical.Functional Gram-mar:A Formal System for GrammaticalRepresentation,”一文,发表于由J.Bresnan编辑的The Mental Representation of Gram-matical Relations,Cambridge,Mass.:MIT Press,pgs.172-281(1982),两篇文章都有本文参照采用的资料。]
在本文后面部分,我们经常提到某个词或词组可能“属于CSL”或“不属于CSL”这样一个概念。下面我们将描述关于CSL所实施的词汇约束类别的设想,并说明“属于CSL”这个词语的用法。
英语中同一个词或词组可以有许多不同的意思,例如:一本通用的词典可能会为“leak”这个词作出下列定义:
(1)动词:漏,渗漏(东西从缺口或缝隙中滴下、透出或掉出);
(2)动词:泄漏(未经正式同意或批准而透露消息);
(3)名词:漏洞,漏隙(让东西出入容器或管道的缝隙或口子)。
每一个这种不同的意思我们称之为词或词组的“含义”(sense)。一个单词或词组的多种含义会给机器翻译系统造成麻烦,因为机器翻译系统不具备人用来从几种可能的含义中鉴别在某一句子中要表达的究竟是哪一个含义的全部知识。有不少词,机器翻译系统可以通过识别该词用于某一句子中的词类(名词、动词、形容词等)来消除一定程序的歧义性。因为一个词的每一个定义都是该词用作某一特定词类时所特有的,例如前面所举的“leak”,因此这种识别是可能做到的。
然而,为了避免MT120不能排除的那几种歧义性,CSL所定的规格是尽量要求每个词类的词或词组只能表达单独一个含义。因此,当一个词或词组“属于CSL”时,它就可以在CSL中用来表达至少一个可能的含义。例如,用CSL写作的作者可以使用上述“leak”一词的含义(1)和(3),但不能用含义(2)。当我们说一个词或词组“属于CSL”时,这并不意味着该词或词组的所有可能的用法都可以翻译。
如果一个词或词组属于CSL,那么该词或词组可以表达其CSL含义的所有形式也都属于CSL。在前面所举的例子中,作者不但可以使用动词的“leak”,也可以使用相关的动词形式“leaked”、“leak-ing”t“leaks”。如果一个词或词组的名词含义属于CSL,其单数与复数形式都可使用。不过要注意,词组用作不止一个词类功能的情况并不常见。因此,这种类推法对于有歧义的词组就不太相关了。
词汇就是在某一语言或子语言中所用的词和词组的总汇。如果用有限的词汇来传达或表示有关某个有限的经验领域的信息,这样就可以设定一个有限的域。举例说,一个有限的域可能是农业,其中有限的词汇将包括关于农业设备和活动的词语。MT组件可操纵不止一种的词汇。用于机器翻译的词和词组将贮存在MT词库中。词汇可分为不同的类别:(1)功能词语;(2)一般内容词语;以及(3)技术术语。
英语中的功能词语是主要用来连接句子中概念的单词和词的组合。几乎任何种类的英语书面信息交流都需要用到这种功能词语。这个类别包括介词(to,from,with,in front of等),连词(and,but,or,if,when,because,since,while等),限定词(the,a,your,most of),代词(it,something,anybody等),某些副词(no,never,always,not,slowly等),以及助动词(should,may,ought,must等)。
一般内容词语被大量用来描绘我们所处的世界,其主要用途是反映人类的日常普通经验。在典型的情况下,文件资料着重反映人类经验中非常专门的一部份(如机器及其保养维修)。就此而论,机器翻译涉及的一般性词汇相对有限。
技术术语包括含有技术性内容的词和词组,以及用户应用的专用词汇。技术性词语是专用于某一特定活动领域或范畴的词和词组。多数技术性词语是名词,用于给诸如部件、组件、机器、材料等物品命名。不过也可能包括其他类别的词,比如动词、形容词和副词。显而易见,这些词在普通的日常会话中并不使用,所以它们与一般内容的语词形成对比。
技术性词组是由前面所述各个类别构成的多词序列。这种词组是技术文献词汇最具特色的形式。用户应用的专用词汇是含有为用户应用的专门用途而生造的单词和复合词语的那部分术语,包括以下各类:产品名称,文件题目,用户使用的字首组合词,表格编号等。
编集一套有用而且完整的词汇,对于任何文件编制工作都是很重要的。在随后对所编制的文件进行翻译时,这套词汇便成了翻译工作的重要资源。MT120是设计成可以处理英语中多数功能词语的,只有那些人称代词(I,me,my等),或有性别之分的(hers,she等),或其他代词(it,them等)除外。这种指代用法需要从英语的一般词汇中作一些技术“借用”(如“truck”或“length”等)。由此可见,约束语言词汇中的绝大多数是由一个或多个单词组成的“专门”(如技术)词语,用来表达这个专门领域的物体和作用。如果一套词汇达到能够表达某一专门域的一切观念的程度,我们便说这套词汇是完整的。
设计一套精练的、但又是完整的词汇可以大大有助于IATS系统105的成功。这种约束语言可以通过鉴别词汇的用法恰当与不恰当,来保证文件的编制方法有利于快速、准确、高质量的机器翻译。
每个词语都应当表达明确的概念,并且适合目标语言的读者阅读。应该避免歧视女性的、口语化的、习语的、过于复杂或过去于技术性的、语义含混的、或者以其他形式妨碍交流的词语。这些及其他一些普遍公认的文体规则,虽然在面向机器翻译的处理中不一定非要遵守不可,但却是一般文件制作的重要准则。
应当注意,虽然本文关于约束语言和/或一般语言的大部份讨论是围绕美国英语进行的,但是在涉及任何其他语言时可以由此类推。本文所描述的系统100并没有任何内在的因素要求必须以美国英语为源语言。事实上,系统100并不是被设计成以美国英语为唯一源语言工作的。不过,与LE130和MT120交互作用的数据库(如域模型),必须根据对特定源语言的约束而修改。
标准美国英语正字法的准则必须遵守。应避免不规范的拼写,例如将“through”拼成“thru”,“molding”拼成“moulding”,“odometer”拼成“hodometer”等。大写的词(如On-Off,Value Planned Repair)应当只用于表示特殊的词语意思。这类词语必须列入用户应用词汇中。不规范的大写用法(BrakeSaver)也是如此。同样,如果使用缩略语,(ROPS,API,PIN),也必须将它们列入用户应用词汇。数字、度量衡单位和日期等的格式,必须始终一致。
约束语言的恢复项目(recovery items)也应当根据其在约束语言中的意思使用。这样作者可以保证MT在翻译一个词的时候,始终使用该词在约束语言中的合适含义。有些英语词也可以属于不止一个句法类型。在约束语言中,所有在句法上有歧义的词都应当用在能使它们变成单义的结构中。
在某些专业领域,从域的特殊性质产生的一个难题是频繁使用较长的复合名词。此类复合名词内含的修饰关系,在不同的语言中表达方式不同。由于从源文本中恢复这些关系并在目标语言中表达出来并不总是可行,因此具有以下特征的复杂的复合名词可列入MT词库。
·出自用户应用专用词汇的技术术语;和
·由超过一个词组成的复合词语。
复杂的名词与名词的复合构成应尽可能避免。然而,只要在词库中列入某些条目,MT便能够处理这个文件编写的重要特点。要注意的是,名词与名词的复合构成是英语中十分常见的一种构词特征,却不一定是其他语言的常见特征,因此,设计约束语言所依据的约束方法,随所使用的特定源语言而有所不同。
英语中有很多动词与虚词的组合结构,也就是动词与介词、副词或其他词类组合成动词短语。由于虚词与动词通常可以被宾语或其他词组隔开,这就在MT对输入文本的处理过程中造成了复杂性和歧义性。因此,动词与虚词的组合结构也应尽可能予以改写。通常是可以用一个单词的动词来替代的。例如,用
·“must”或“need”替代“have to”;
·“consult”替代“refer to”;
·“start the motor”替代“turn the motor on”。
应尽可能使用充分的词语和概念。这在容易引起误解的场合尤其重要。例如:
“Use a monkey wrench to loosen the bolt…”
此句中的Wrench一词绝不可省略。虽然省掉这个词,多数内行的技术人员也能懂得这句话的意思,但是在翻译过程中必须明确地表达出来。CTE文本所用的词汇必须尽可能明确表达;缩略语或缩写词语都应改写为构词完整的表达形式。
试看另一个例子:
“If the electrolyte density indicates that…”
此处如能充分表达概念,意思就会更明确、完整:
“If measurement of the electrolyte density indicates that…”
最后,下列句子中有的词或词组本来是没有的,现在我们加上划线的词,使意思表达得更为明确:
Turn the start switch key to OFF and remove the key.
Pull the backrest(1)up,and move the backrest to the desired position。
Jump starting:make sure the machines do not touch each oth-er.填补了此类“空缺”之后,句子的概念就更完整,用IATS105系统进行符合原意的翻译也就更有把握了。机器翻译之所以需要译后编辑的一个常见原因,就是由空缺造成的翻译错误。因此不允许此类空缺存在。
口语化的英语通常偏爱使用非常泛义的词,有时可能导致一定程度的意思含混,在翻译过程中必须消除这种含混。例如,condi-tions,remove,facilities,procedure,go,do,is for,make,get等都是正确的词,但是并不精确。
在下面这个句子中:
When the temperature reaches 32°F,you must take special precautions。
“recahes”(到达)一词并未表明温度到底是dropping(下降)还是rising(上升);此处用“drops”或“rises”意思会更确切,读起来也一样通顺。
在些语言中明确区分的词义,在英语中并不总是区分。例如,我们说oil(油),既可指一种润滑液,也可指用作燃料的油,而不管是不是(diesel(燃料油),我们都说fuel(燃料)。同样,当door(门)这个词单独使用时,有时就不可能分辨所指的究竟是什么样的门。汽车门?大楼门?车厢门或机舱门?这些词义在其他语言中可能需要作出区分。在英语中应尽可能使用充分达意的词语。
D.域模型
基于知识的机器翻译(Knowledge-based Machine Translation-KBMT)有赖于人类对世界的认识,以及关于词汇单元及其组合的语言学语义知识的支持。KBMT的知识库必须不仅能够表现一般性的物类分类学域。诸如“car is a kind of vehicle/汽车是一种交通工具”,“a door handle is a part of a door/门把是门的一部分”,“artifacts are characterized by(among other properties)the prop-erty‘made-by’/人工制品的主要特点在于(除其他性质之外)其‘被制作’的性质”等,而且还必须能够表现关于物类在特殊情况下的知识(如“IBM”就可以在域模制中作为“公司”物类的标志事例),以及关于各种(具有潜在复杂性的)事件类别的标志事例的知识(如“the election of George Bush as president of the United States/选乔治·布什为美国总统”就是“to-elect”这个复杂行为的标志事例)。这个知识库的本体论部分采用的是通过分类构筑连接词(tax-onomy-building links),诸如is-a,part-of等等,连接起来的多层次概念的形式。我们称所得的结构为多层次结构,因为概念的每个连接类别都允许有多个“母体”。
域模型或概念词库含有一个本体论模型,它为在描述各个特定域中作为结构单元的基本类别(例如物体类、事件类、关系类、性质类、情节类等)提供统一的定义。这个“世界”模型是相对静态的,是由复合相连的本体论概念网络组成。这种应用(子)世界本体论是一般发展,在本专业领域是为人熟知的。可参阅下列资料:如Brachaman和Schmolze的An Overview of the KL-ONE Knowl-edge Representation System一文发表于Cognitive Science,vol.9,1985;Lenat等人的Cyc:Using Common Sense Knowledge to Overcome Brittleness and Knowledge Acquisition Bottlenecks一文发表于AI Magazine,VI:65-85,1985;Hobbs的Overview of the Tacitus Project一文发表于Computational Linguistics,12:3,1986;以及Nirenburg等人的Acquisition of Very Large Knowl-edge Bases:Methodology,Tools and Applications一文发表于Center for Machine Translation,Carnegie Mellon University(1988),以上都是本文参照采用的资料。
本体论是某一子世界(例如重型设备的故障排除与修理,或者个人计算机与用户之间的对话作用等)独立于语言的概念表示。它能提供在子语言中解析源文本以转换为中间语文本,并且从中间语文本生成目标文本所必需的语义信息。域模型必须足够详尽,才能提供在解析过程中消除歧义的足够语义限制。本体论模型必须为作为结构单元描述各个特定域的基本本体论类别提供统一的定义。
在世界模型中,本体论概念可以首先分为物体、事件、力量(用以表示无意图的媒介作用)和性质各类。性质又可以再分为关系与属性两类。关系将被定义为概念之间的映射(比如“belongs to/属于”是一个关系,因为它将一个物体映射入{*human/人*organization/组织}集合之中),而属性将被定义为概念映射入专门定义的价值集合之中(比如“temperature/温度”是一个属性,将有形的物体映射入[0,*]半开放的标尺,表现为开氏温标上的粒状度数)。概念好比框架,在系统中详尽定义的性质就是这些框架的槽。
域模型不单只是基于知识的机器翻译的组成部分,而且是任何基于知识的系统都不能缺少的。域模型是发生在翻译域中有关概念的语义等级。譬如说,我们可以将物体*O-VEHICLE(交通工具)定义为包括*O-WHEELED-VEHICLE(有轮子的交通工具)和*O-TRACKED-VEHICLE(有轨的交通工具),前者可以包括*O-TRUCK(卡车),O-WHEELED-TRACTOR(有轮子的拖拉机),等等。在这个等级的底部是与CSL中的术语相对应的特定概念。我们称这个最低部分为K/DM。为了翻译准确,我们必须对各个不同的概念所起的作用施加语义约束。例如,E-DRIVE(驾驶)这个行为所起的媒介作用必须由人来完成,这就是对*O-VEHI-CLE施加的语义约束,而且所有种类的交通工具都自动继承了这个约束(这样可以省去给每个实例进行人工编码的重复工作)。域模型的写作部分为K/DM扩充不属于CSL的同义词以及其他信息,以便在作者编写每个信息元的过程中为他(她)提供有用的反馈。
图5从概念的角度说明了本发明所用的域模型(DM)。DM500是MT120和LE130使用有关CSL词汇的说明性知识的表示。DM500由以下三个截然不同的部份组成:
1.一个核心域模型(Kernel Domain Model-K/DM)510,含有MT分析程序127和LE130所需要的全部词汇信息;具体说来,核心包括了所有的CSL词项(词和词组),以及与这些词和词组相关的语义概念、词类、词形信息,等等。
2.一个机器翻译域模型(MT/DM)520,含有仅为MT分析程序127所需的信息。MT域模型是在翻译时用于单义映射和语义检验的概念等级。它包括了对概念的可选择限制和概念的等级分类。
3.一个语言编辑域模型(LE/DM)530,含有仅为LE130所需的信息。这类信息包括CSL词语的非CSL同义词,CSL语词的字典定义,以及CSL词语的用法举例。
Kernel/DM510内每个CSL词项(词或词组)只有一个词条。(一个“词条”包含一个词项-词或词组-及其最低限度的相关语义概念和词类,例如,如果“leak”一词同时作为名词与动词收入CSL,它就有两个词条。)每个词项都将以LE130和/或MT120所需的附加信息得到更新,诸如定义和不规则的词形变体等。
分用的K/DM510可以加速CSL的提炼与延伸,省去文件写作和翻译组件的重复劳动,并提供一个便于维持与延伸的人可读结构。
K/DM510是一个含有关于约束语言文本中词语(词和词组)的句法信息及语义信息的词典。它是自动化的机器翻译(MT)过程分析部分的中心词汇知识源。K/DM510也充当LE/DM的基础。
K/DM510为每一个句法类别的每一个词语收入一个单独的条目。(如“truck”一词,既是名词又是动词,因此有两个条目)。K/DM条目含有以下信息:
·词根(如“truck”);
·词类(如N);
·内容词的概念或意思(如,O-TRUCK);
·词形信息(如不规则的词形变化);
·句法信息(如名词是可数名词,或是物质名词);
·定义信息:记录名词的不同含义与用法的简短定义和文本中的实例,以及该词用于约束语言中含义的规格。
DM500用三个外存人可读档案集定义,这些档案集可以在需要用到它们的(各)处理过程中阅读。由于MT120和LE130是在分开的处理过程中运行,因此模型中的信息以两种形式作内部表示:一种供MT120所需要的DM部分使用,另一种供LE130所需要的那部分使用。因此,K/DM510是用一个可同时以两种形式表示的档案集来定义;LE/DM530只是以LE130使用的形式表示;MT/DM520只是以MT120使用的形式表示。以下所述是外存档案格式,DM各部分内容,以及LE130所用信息的内部表示。
再说一遍,K/DM含有MT120和LE130所需的全部信息,包括一个CSL词项-基本词、词组或引述词语,和一个语义概念-与该词项有关的语义概念,以“概念名称”列为一个词条。它还包括一个词类-一个固定词类组中的一个类别(如动词、形容词,等等);一个定义-普通词汇的粗略定义,以澄清CSL词项可能有几个含义中的哪一个;以及不规则的词形变体-列出各种不规则的词形和每个形式的词形变化的名称。举例说,动词的词性变化的名称是“过去式”,“单数第三人称现在式”,“过去分词”,“现在分词”等。以“drive”一词为例,这个词形变化领域的值将是((过去式drove)(过去分词driven)),表明这两个动词形式是不规则的,而所有其他形式都是规则的。最后,K/DM还包括排印方面的约束-例如,该词项必须全部大写,第一个字母大写,等等。
MT/DM520含有只为MT120所需的信息,包括:概念方面的选择性约束,以及用于组织和继承选择性约束的概念等级分类。
LE/DM530将含有非CSL的同义词,以帮助作者选择合法的CSL词项。核心域模型与LE/DM合在一起,便含有为CSL词典提供区别性特征以支持LE词汇检查程序(见下述)所需的全部信息与全部约束。LE/DM还含有只为LE词汇检查程序所需要的附加信息。这包括:字典定义-LE向作者提供的词或词组的定义,非CSL的同义词-作者在编写文件时可能会使用的CSL词项的同义词,和用法实例-词或词组在CSL句子中的用法举例,由LE提供给作者。
在LE/DM中包含这类信息的目的,是帮助作者保证所写文书用的都是合法的CSL词与词组。字典定义和用法举例可帮助作者保证所用的某个词类的词或词组的意思是CSL所允许的。不过,并不是每一个CSL词项都需要字典定义或用法举例。实际上,只有一小部分作者难以立刻明白其CSL意思的有歧义的或意义含混的词语,才需要有字典定义和用法举例。这部分词语可能不到DM中的词项的半数。例如,象“for”和“the”等功能词,就不需要字典定义或用法举例'许多技术性词语,尤其是那些非常专门的技术性词语,可能也不需要字典定义或用法举例。
LE/DM中的非CSL同义词可帮助作者选择一个同义的或相关的CSL词或词组,来替代在编写过程中所用的非CSL的词或词组。在理想的情况下,词汇检查程序不仅应该提供与非CSI词词类相同的同义词的信息,而且应该提供可能有助于作者改写句子的相关词的有关信息。如果含有后者,除了必要内容之外,LE/DM还必须含有关于这类相关词的信息。
E.语言编辑程序
参见图1(b),约束语言编辑程序(LE)130是支持作者和编辑者在CSL范围内创作文件的一组工具。这些工具可帮助作者使用适当的CSL词汇和语法来编写实用性的文献资料。LE130是作为SGML文本编辑程序140的“延伸”而设置的。虽然LE130与SGML文本编辑程序140使用相同的通信信道,两者的功能却是互相排斥的。不过,用户用以LE130对话的接口是SGML文本编辑程序140接口的一个“无缝延伸”。
作者160在SGML文本编辑程序140中创作文件,并调用LE130。LE130告诉作者文件中的个别词是否非CSL词,并能够提示用CSL中的同义词来替代与用户应用信息域有关,但不属于CSL的词。此外,LE130还会告诉作者档案中的文字是否符合CSL的句法约束。
LE130软件包括:一个词汇检查程序,一个语法检查程序(包括一个通过MT句法分析程序的接口,提供核心的语法检查功能),和一个用户接口(UI)。此外,CSL LE所用的CSL词汇信息会在K/DM和LE/DM中表示。
LE130可保证文件中所有词汇和句子结构都符合CSL的规格。LE130在文件上标志SGML标识符,以表示经CSL认可。文件中所有文字都要检查,包括:句子,标题,清单项目,图片说明,图形中的大字,和表格中的信息。
由于本发明的设计前提是,作者在CSL检查过程中应当尽可能多产,而且作者应该不必同时书写多份文件,因此不宜采用分批式作业。分批式作业要求用户提交一份文件进行处理,然后要等到整个文件处理完毕才能得到反馈。LE130为词汇检查、语法检查和对话式单义化处理提供对话方式作业。
图6是LE130作业的高级流程图。LE130接收作为输入的文本605,该文本可能是有歧义的,未经约束的。这个具有潜在歧义性的未约束的输入文本605首先由词汇检查程序610予以检查,词汇检查程序在拼写检查程序615辅助下(如下所述)工作。(在该实施例中,拼写检查程序的作业正好由主程度TE140常规具备的拼写检查程序来实施。)当词汇检查程序610检查完毕,并且作了一切必要的修改之后(由作者辅助完成),经过词汇约束的文本617便交由语法检查程序620处理。语法检查程序620产生句法正确的CSL文本625。然后,如方框630所示,这个经过约束的、句法正确的文本625便进行单义化处理。单义化处理后所得的结果是消除歧义的可译约束文本635。可译文本635无须作译前编辑就可以被翻译成外国语言。由于翻译成品准确,因而也无须作译后编辑。
1.词汇检查程序
图7所示是词汇检查程序610的作业流程图。词汇检查程序610鉴别CSL不认识的词,同时鉴别在作者文本中出现的非CSL词例,并帮助作者寻找合法的CSL词去替代非CSL词。它识别文件中用词的边界,并将每个CSL不认识的词项鉴别出来。
如方框706所示,选择某个单元中的第一个词语作检查。然后如方框710所示,对照包含所有CSL词语的CSL词汇数据库(即字典)检查该词语。如果在CSL字典中找不到词语,则如方框722所示,将该词语对照标准字典进行拼写检查。如果词的拼写有错误,则如方框726所示,程序会为作者提供改正拼写错误的方法(即词汇检查程序610显示出其他拼写方式)。
如方框734所示,接着检查该词项以确定它是否属于CSL词汇。如果该词项属于CSL词汇,则可直接进入方框718的步序。但是,如果该词项不属于CSL词汇,则如方框736所示,系统会检查LE/DM中是否含有该所检查的词项的同义词。如果在LE/DM中至少有一个同义词,系统就会显示这个(些)属于CSL词汇一部分的同义词,并允许作者作出选择(如方框738所示)。然而,如果在LE/DM中没有被检查词项的同义词,则如方框740所示,作者会有机会修改输入内容。修改后的结果回到方框710。当作者作出合法的选择后,程序700便进入方框718。
当鉴别出一个非CSL的词时,作者可以作出下列选择:可以选择一个替换词去替代文件中的那个词,或者可以输入一个新的词项去替代文件中的那个词。典型的情况是,作者选择其中一个同义词去替代那些非CSL词项。如果作者决定逃避问题而不予解决,结果将使文本不会被CSL认可。
方框718检查该单位中是否还有其他词语。如果没有其他词语,程序700便告中止。否则如方框714所示,再选定下一个词语,程序700从方框710重新开始。
具体而言,词汇检查程序610鉴别文件中每次出现CSL不认识的词项。每有一个这样的词,词汇检查程序610便决定该词适合以下所述的哪种情况,并向用户接口报告如下辅助信息:
·非CSL词,但有已知的CSL同义词;在这种情形下,词汇检查程序610会鉴定这些同义词。比如说,假定“let”是个非CSL词-
检查时的作者输入:Open the valve and let more nitrogen go to the accumulator.
VC(词汇检查程序)信息:本词语是非CSL,但是有相关的CSL替换词。
CSL替换词:allow,allowed,enable,enabled,permit,per-mitted,leave,left
编辑后的CSL句子:Open the valve and allow more nitrogen to go to the accumulator.
·可能只作为词组的一部分出现在CSL的词,但是在目前的上下文中并未用于CSL的词组;在这种情形下,词汇检查程序610会报告只含有该词的可接受的CSL词组-
检查时的作者输入:The first time the valve lash is checked,the injector timing should be checked.
VC信息:本词语用在非CSL的上下文中。
CSL替换词:advance signal timing,advance timing groove,timing gear,timing mechanism.
编辑后的CSL句子:The first time the valve lash is checked,the injector timing mechanism should be checked.
·在CSL中必须置于双引号内的词或词组,但是在目前的上下文中没有用引号;在这种情形下,词汇检查程序610会报告该词语应该用引号-
检查时的作者输入:For more details,read the Testing and Adjusting article in the next section.
VC信息:本词语通常置于引号内。
CSL替换词:无
编辑后的CSL句子:For more details,read the“Testing and Adjusting”article in the next section。
·一个在CSL中必须按专门规定的方式大写的词或词组,但是在目前的上下文中没有用大写(例如字首组合词用小写);在这种情形下,词汇检查程序610会报告正确的CSL形式-
检查时的作者输入:Turn the screw until the pressure gauge reads 0 kpa(0 psi).
VC信息:本词语大写有误。
CSL替换词:kPa
编辑后的CSL句子:Turn the screw until the pressure gauge reads 0 kPa(0 psi).
·一个非词结构(亦即一组字母代表一个有拼写错误的词),有已知的拼写替换形式;在这种情形下,词汇检查程序610会鉴别出拼写替换式,不管结果是否属于CSL(用户应将所选的替换形式再提交作进一步检查)-
检查时的作者输入:When it is necesary to raise the boom,the boom must have correct support.
VC信息:本词语是非CSL词汇。
CSL替换词:necessary
编辑后的CSL句子:When it is necessary to raise the boom,the boom must have correct support.
·一个不属于CSL,而且系统对此一无所知的词。一个不认识的词或词组的信息可使作者有机会视情形所需,或者完全更改用词,或者屏蔽不合法的表达法免于检查。在下面这个例子中,作者用SGML标识符告诉系统不必检查这个违反规则的词语,让它保持原样-
检查时的作者输入:Put approximately 0.9 L(1 quart)of SAE10W hydraulic oil in the nitrogen end of the accumulator.
VC信息:不认识本词语。
CSL替换词:无
编辑后的CSL句子:Put approximately 0.9 L(1 quart)of<sic>SAE10W</sic>hydraulic oil in the nitrogen end of the ac-cumulator.
·一个标点符号或特殊符号,在任何上下文中都是CSL不允许的。
如果一个非CSL词没有直接的CSL同义词(亦即可在文件中直接替代该词的CSL词),系统能鉴别出相关的CSL词或词组,作者可选用该词或词组来表达所要表达的意思。这一功能为作者只用CSL词汇更改某一句子的用词提供了更进一步的支持。但是,用这些相关词所作的更改,不能只用提供同义词的自动替换设施来完成,因为这类更改往往需要对句子的结构作某些修改。譬如说,假设“can”是CSL词,而“capable”不是,作者如果写了以下句子:
The system is capable of being programmed for several cus-tomer-specified parameters.
系统就会告诉作者“capable”[[capable]]不是CSL词。虽然“can”[[can]]是CSL词,但是“capable”一词或词组“is capable of”[[“is capable of”]]都不能直接被“can”取代,还必须改动句子结构。
2.语法检查程序
语法检查程序的目的是要鉴别作者文本中不符合CSL语法约束的地方,并且引起作者集中注意这些地方。语法检查程序620的功能由MT系统120的分析模块127提供,延伸至允许系统报告句法歧义和语义歧义的实例。语法检查程序接口使作者可以对话形式答复对澄清歧义性的要求。有可能一个句子属于约束语言,但是具有不止一个解释。语法检查程序接口会作出某种显示,向作者指出该句子可能含有的两个或两个以上的意思,并要求予以澄清。试举一个歧义性句子的例子:“Check the cylinders on the inside.”究竟是汽缸装在里面,还是应该检查汽缸的里面?可能的歧义有以下两种:
词汇歧义:当一个词在约束语言中具有不止一个意思时,就会出现词汇歧义。虽然在理想的情况下,约束语言中每个词的每个词类都应该只有一个意思,但有些词还是会有不止一个意思。例如,“gas”这个词就可能有“natural gas(天然气)”或“gasoline(汽油)”这两个不同的意思。
在词汇级也可能出现由于一个词可以在CSL中用于两个不同的句法作用而造成的问题。试以“fuel”一词为例,它在CSL中可以是名词,也可以是动词。当作者输入一个句法作用不清楚的句子时,语法检查程序(GC)620可能会向作者作出如下提示:
检查时的作者输入:The sensor is attached to fuel rack.
GC信息:本词语可用作名词或动词。
这时,作者可以选择不要系统的帮助,自己编辑这个句子(只需要改写之后再提交检查程序处理)。如果作者选择要求系统帮助,系统可能会提供解决同类问题的具体指示。在这个例子中,系统提供的帮助是具体的:
Help!(帮助!)
GC信息:若是名词,你可以在词前用一个限定词。若是动词,或许可在词后加限定词?例:The ship sinks(名词前加限定词)和Ship the sinks(动词后加限定词)。
作者可根据上述指示编辑句子,并重新提交语法检查程序620处理。
结构歧义:当一个句子中的词有可能以不止一种方式组合时,就会出现结构歧义。例如:在“Remove the valve with the lever”这个句子中,词组“with the lever”是与词组“the valve”构成一个句法单元,还是与动词“remove”构成一个句法单元?换言之,这句话到底是讲带有一个杠杆的阀,还是讲用杠杆拆掉一个阀?
在IATS105中,为回答这类问题而设计的组件是域模型137,其构造功能就是要尽量减少此类歧义的出现。
如图5所示,专门支持机器翻译过程的DM/MT520含有两类信息。在一方面,语义信息(A)支持鉴别概念之间的关系。在另一方面,上下文信息(B)指定某一动词的所谓深层变格或此动词可依据的理由。在上面讨论的这个例子中,我们首先来看看语义信息(A)和上下文信息(B)如何协且分析程度127确定“Remove the valve with the lever”这一句子的语法结构。
在多种语义关系中,有一种表示“is a part of”(“是……的一部分”)的所属关系,例如,在概念“hat”(“帽子”)与概念“costume”(“服装”)之间就存在这种关系,即“hat”“is a part of”the“cos-tume”(帽子是服装的一部分)。同样的关系也在“sole”(鞋底)与“shoe”(鞋子),“heel”(鞋跟)与“shoe”(鞋子)等等概念之间成立。DM/MT520中所存的语义信息(A)可以鉴别这种关系,以及域内各概念之间的其他语义关系。
当MT分析程序127的处理过程到DM/MT520去检索有关“valve”概念与“lever”概念之间关系的语义信息时,DM137中的信息无法让MT分析程序127辨别“lever”是否“valve”的一部分-系统中根本没有关于这种关系的知识。因此MT分析程序127仍然不知道词组“with the lever”是否应该与“valve”这个词相连接。
但是当MT分析程序127检索上下信息(B)时,它发现动词“remove”可以有三个格:主格(NOM),宾格(ACC),和工具格(INS)(这是比我们以前读书时所学的拉丁语法要更深一层的分析)。也就是说,“remove”一词适合如下格式:
-VERB(NOM,ACC,INS)
-动词(主格,宾格,工具格)
根据这个抽象形式,我们可以造成以下句子:
NOM VERB ACC INS
主格 动词 宾格 工具格
The work-removed the sand with a shovel
man
工匠 搬走 沙子 用铲子
Peter has removed the box with the nail
彼得 拆掉了 盒子 用钉子
等等
既然DM/MT含有关于介词“with”与名词的组合具有[+IN-STRUMENT](+工具)这一语义特征的信息:此种组合构成工具格词组。这个信息使分析程序能够决定
a)由于“lever”是[+INSTRUMENT],“with the lever”是工具格;
b)由于“remove”可以带工具格,词组“with the lever”是附属于“remove”,与“remove”相配,并被解释为修饰这个动词。
然而,DM137只能有我们设置的丰富程度。如果语义信息没有发展到尽可能充足的程序,域中的词条也许不能支持MT分析程度127执行单义化处理过程。
试看“Peter has removed the box with the nail”这句中的“nail”一词。如果DM137含有关于nails是木框之一部分的信息,而没有列入nails是[+INSTRUMENT]的信息,MT分析程序127便不可能决定“with”是否与“nail”组合而构成工具格词组。只要分析程序不能解决结构歧义,它就会要求作者来解决。在作者提交的文本接受语法检查时,会发生如下对话:
检查时的作者输入:Peter has removed the box with the nail.
语法检查程序620信息:句子意思含糊。
1.nail是否工具?
2.是否“box”上有一个“nail”?
当作者选定一个解释之后,该检查程序便给句子加上一个看不见的SGML标识符,告诉系统应该如何翻译这个句子。
如上所述,MT分析程序127被语法检查程序调用,以便检查输入文本或某个信息元(或其中一部分)是否符合CSL语法和语义约束。在这方面,较佳的实施例是为每个句子发出严格的“绿灯,红灯”信息,后者表示作者必须通过写作环境来改正被标记出的句子结构。当整个输入文本或信息元被证明为服从CSL之后,可以将它贮存起来,也可以立刻送交翻译。
现在我们来看图8,这是语法检查程序620(句法分析)和单义化检查程序630(语义分析)的高级流程图。以下所用的“句子”一词是指通过或未通过分析模块127检查的文本单位。被检查的文本单位实际上可能是一个并不构成句子的文本部分,例如标题、题目、或列表元、图片说明、图形中的其他文字等。语法检查程序620可在经过SGML标记的文本中识别句子的界限和SGML元素的界限。它鉴别出每个不符号CSL规格的句子。这包括每个MT分析模块127不能成功地解析的句子。解析失败可能包括(但不限于)下列原因:
·句子含有分析模块127不作解析的语法结构。例如,当句子含有一个缩减的关系从句时,分析模块就不作解析。在“Don't change the values that are programmed into the unit”这样的句子中,省略关系代词“that”和动词“be”,便造成了缩减。
检查时的作者输入:Don't change the values programmed into the unit.
语法检查程序信息:本句难以解析。请检查是否属于下述问题之一:
然后,语法检查程序620开始列出由于使用CSL指令系统中没有的语法结构而造成难以(即使不是不能)解析的最常见的典型情形。
·句子中的标点符号用法不符合CSL约束。如前面所述,在任何上下文中都不属于CSL的标点符号和特殊字符,会被词汇检查程序610标记出来。但是词汇检查程序610并不解析输入内容,因此如果这种元素在CSL中存在,只是被用于不当的上下文中,该检查程序就不会作出报告。这样的事例会触发语法检查程序620作出“fail”(不及格)的反应。
·一个属于CSL词汇的词,用在CSL不认识的句法形式中。词汇检查程序610会标记出某些这样的事例。举例说,如果在CSL中只有该词的名词检测,而没有动词检测,词汇检查程序就会报告所检测的动词过去式不是CSL。但是,词汇检查程序610会允许动词现在式通过检测,因为这个形式与CSL名词检测的复数形式完全相同。这种事例会触发语法检查程序620作出“fail”的反应。
语法检查程序620用MT分析模块127(和域模型137)来鉴别不符合CSL语法约束的句子,这个过程称作句法分析,如方框805显示。每出现这样的句子,语法检查程序620就会报告该句子不是CSL。有时也可能出现一个句子属于CSL,但是具有歧义的情况。因此,本发明还提供如方框710所示的语义分析。如果所检查的句子在语义上没有歧义,单义化检查程序630会作出某种显示,向作者指出该句子的两种或两种以上的可能意思,并要求予以澄清(如方框815和825所示)。在一个较佳实施例中,当一个句子不能通过语法检查程序620和/或单义化检查程序630时,作者可有以下选择:编辑文件,如果句子有歧义性的读解,对句子进行单义化处理,重新检查同一个输入,或者不作编辑继续检查。
请注意,本发明实施绝对服从词汇和语法约束,而不是仅仅提出文体不当的警告,或进行简单的错误检测(如主谓语一致等)。
如果句子在语义上没有歧义性,它就被翻译中间语(如方框820所示)。当文件通过语法检查程序620的检验时,便可以在文件中插入表示经CSL认可的SGML标识符。
在一个较佳实施例中,语法检查程序620向作者160提供“pass/fail(通过/不通过)”的反馈。然而,也可以实现比“通过/不通过”更为具体的反馈。
有关语法检查(包括单义化处理)的更深入的讨论,参见Tomi-ta,M.的“Sentence Disambiguation by Asking,”一文,发表于Computers and Translation,1:39-51(1986)以及Carbonell,J.和M.Tomita的“Knowledge-Based Machine Translation,the CMU Approach,”一文,由S.Nirenburg编辑,发表于Machine Translation:Theoretical and Methodological Issues,Cambridge:Cambridge University press,pgs.68-89(1987),其中都有本文参照采用的资料。
F.机器翻译
MT120是一种中间语型的机器翻译系统。在这样的系统中,约束源语言(CSL)与目标语言从来不发生直接接触。这类系统的处理过程通常分两个阶段进行。第一,以一种独立于任何语言的形式语言(称作中间语)来表示CSL文本的意思;第二,用目标语言的词汇单元和句法结构来表示这个意思。
中间语MT系统,以及其他类型的MT系统,在本专业领域中已为人熟知。有关机器翻译的这些不同方法的详细描述,可参阅Hutchins的Machine Translation:Past,Present,Future,Ellis Horwood,Ltd.,Chichester,UK,1986和Zarechnak的The His-tory of Machine Translation一文,由Henisz-Dostert,McDon-ald,Zarechnak,编辑,发表于Machine Translation.Trends in Linguistics:Studies and Monographs,Vol.11,The Hague,Mou-ton,1979,两书全文都是本文参照采用的资料。
CSL文本305的意思是以称作中间语(在本专业领域为人熟知)的这种专门设计的知识表示体系来表示。中间语继而转换为一种框架表示法(frame notation),因而可以被视为一种语义网络。与其他人造语言或形式语言一样,中间语也有自己的词典和句法。词典所依据的是译文所属的域(如计算机维修,宇航探险等)。因此,中间语的“名词”是本体论中的“物体概念”,中间语的动词大致相当于本体论中的“事件”,中间语的形容词和副词则是本体论中定义的各种“性质”。本体论构成各种不同概念之间紧密相连的网络,称作域模型。
由图3和图9可见,IATS105系统中机器翻译(MT)组件120含有两个主要部分。第一个部分是CSL分析程序127,其功能是执行以中间语表示CSL文本的第一个处理阶段。第二个主要部分是目标语言生成程序123,它将中间语表示的“经CSL认可的”文本翻译成目标语言(如法语、日语、西班牙语)。在执行这两个任务时,MT组件120以一个或多个独立的伺服模块运行,接受由一个人类翻译控制者(图中未示)提出的翻译要求。在目标语言的生成过程中,目标语言生成程序123将中间语文本260映射至适当的目标语言句法单元,产生出不需要译后编辑的高质量的输出文本950。
当MT分析模块127产生经证明符合CSL信息元的中间语文本260后,该中间语文本可以储存起来,或者传递出去,或者立即由生成程序123转换成一个目标语言的信息元,或分别转换成几种目标语言的信息元[生成程序123包括一个语义与句法映射程序和一个生成配套(参见Tomita M.和E.Nyberg,的The Generation Kit and Transformation Version 3.2 User's Manual,一文,发表于Technical Memo(1988)-可向美国宾夕法尼亚州匹兹堡的Carnegie Mellon大学的机器翻译中心索取)]。MT分析程序127和MT生成程序123是以两种方式交互作用。首先,前者的输出就是后者的输入,其次,它们共用某些外部知识源,特别是域模型137。
如图9所示,MT系统120还可细分。分析包括解析程序910和翻译程序920。MT120的另一半可分成映射程序930和生成程序940。图9中的椭圆代表主要软件模块间产生和通过的数据。
DM137(具体说来是MT/DM520)在翻译过程中有三种不同的用法:(1)解析程序910用DM137来约束可能的附件(在句法解析过程中对中项和修饰成分使用严格的进一步分类);(2)翻译程序920在翻译过程中用DM137来例示适当的域概念;(3)映射程序930用DM137来为每一个中间语概念选择适当的目标实现。
MT120可以作一个或多个伺服机处理运作。每一个这样的MT处理接受来自FMS110的翻译要求,并送回结果。要求含有SGML标识符的CSL文本,结果含有SGML标识符的目标语译文。由于有可能同时翻译成不止一种语言,翻译要求中还包括要译入的目标语言。既然MT伺服机处理按目标语言而专门化,因此要用到路径选择功能。路径选择功能由FMS110自动执行。在某一特定时间运行准确的MT处理集及其在各机器间的运行分派,由FMS110决定。FMS110根据在任何特定时间一批翻译工作中尚需完成的部分而修改工作的分派。
由图9可见,CSL分析程序127含有两个互连的组件:句法解析程序910和语义翻译程序920。语义翻译程序920在本专业领域中也被称作“映射规则翻译程序”(“mapping rule interpreter”)。句法解析程序910获得输入的CSL文本305后,产生出该文本的句法结构。句法解析程序910使用词汇功能语法(Lexical Functional Grammar-LFG)。LFG是一种在机器翻译领域为人熟知的正规化语法。因此,最后产生的句法结构是LFG的f-结构(f-structure)960。在CSL句子的f-结构960建立之后,语义翻译程序920立刻开始应用映射规则,以中间语译文来替换源语言的词汇单元和句法结构。词汇单元映射进域概念中的实例(例如,“data”一词映射到中间语的“information”),句法结构则映射进概念关系(例如,句子的主语通常映射到中间语中的“agent”关系)。请参阅Mitamura的The Hierarchical Organization of Predicate Frames for Interpretive Mapping in Natural Language Processing一文,由Carnegie Mel-lon大学的机器翻译中心于1990年5月发表,其中有本文参照采用的资料。
MT分析程序127在分析知识(数据文件)的引导下,将输入CSL文本305的源语言句子转换成该句子意思的语义框架表示。在分析阶段发生作用的知识结构是分析语法、映射规则和概念词典。
分析的第一个部份是由输入句子的句法分析所驱动的解析过程。解析程序910用概念词典(域模型)中配备的语义约束,来引导分析输入时对句法歧义的处理。映射规则在句法分析语法和概念词典两者之间起中介作用。
这个分析阶段的输出是含有一切适用的语义信息的句法f-结构。这个结构可进一步由MT分析程序127的第二部分处理,以在解析句子过程中从概念词典得出的相关概念的例示形式,产生出按语义组织的框架表示。MT分析程序127通过检索f-结构的语义特征来达到这个形式;这些特征含有一切相关的语义信息。
本发明所用的句法解析程序910在本专业领域是为人熟知的,详细的描述可参见Tomita和Carbonell的The Universal Parser Architec ture for Knowledge-Based Machine Translation一文,1987年5月发表于Carnegie Mellon大学的机器翻译中心的技术报告,和Tomita(编辑)等人的The Generalized LR Parser/Compiler Version 8.1:User's Guide一文,1988年4月发表于Carnegie Mellon大学的机器翻译中心的技术备忘录,其中有本文参照采用的资料。
中间语机器翻译系统胜于其他类型的MT系统的优点之一是,中间语260是独立于任何语言的,也就是说,源语言与目标语言从来不发生直接接触。这个特点使得机器翻译系统的构造可以做到只需要对计算结构作最小的改动,就有可能选择任何源语言和目标语言进行翻译。显而易见,任何这样的系统都必须能够解析许多种源语言。因此需要一个通用解析程序,可以将一种语言的语法作为输入接受,而不是将语法设置在翻译程序本身。这样有更大的灵活性和通用性。
换言之,在处理多种语言的过程中,语言结构已不再是可以在所有应用中传用的通用不变量(如纯英语解析程序),而是另一维的参数化与可延伸性。但是,语义信息可以在所有语言保持不变(虽然不能在所有的域都保持不变)。所以,把语义知识源和句法知识源分开是关键,这样一来,如果增加了新的语言信息,它就可适用于所有语义域,如果增加了新的语义信息,它就可适用于所有相关的语言。通用解析程序试图在不对运行时间效率或语义准确性作出很大让步的情况下,实现这种分解。
解析程序910以三种知识源作为特点。一种知识源含有不同语言的句法规则,另一种含有不同域的语义知识库,第三种则含有支配句法形式(词和词组)映射到语义知识结构的规则集。每一种语言的句法规则都完全独立于任何特定的域;同样,每一个语义知识库都独立于任何特定的域;同样,每一个语义知识库也都独立于任何特定的语言。
而且,映射规则既独立于语言,也独立于域,因此每一个语言与域的组合都需要设立一套不同的映射规则。句法规则、域知识库和映射规则都用极为抽象的人可读形式写成。这样设置可使它们易于延伸或修改,不过有可能在解析程序运行时造成机器效率不高。
映射规则翻译程序920的功能是生成并操纵某一解析的句法和语义结构,而且同时生成这两种结构。
通用解析程序910产生所有能从被解析的句子衍生的可能的、亦即合法的f-结构。这些句法f-结构都各有其语义特征,根据FLG理论,这些特征是与其他句法f-结构在同一时间产生。因此语义成分可被视为f-结构的附加特征。
因而,语义成分是句法解析的一个“可见”部分。这种同时产生句法结构和语义结构的方法,产生出一个能够在完成某些“无意义的”局部解析之前就将它们排除的系统。语义结构是在进入词典查找一个词的定义时加到句法结构上的。一个词的另一部分定义是结构的映射规则集。这些映射规则是在语法规则中的句法等式为句法结构增添信息的时候使用。
目标语言生成程序组件123接受作为其输入的中间语文本260,并产生作为其输出的目标语文本950。目标语言生成程序123是由两个主要模块组成,一个是语义模块,一个是句法模块。语义模块执行的功能是目标语言的词汇选择和目标语言的句法结构选择;它在执行这两个功能时分别得到生成词典和生成结构映射规则的辅助。这个模块的输出就是将由系统输出的目标语句子的f-结构。
生成模块的目的是要从由CSL分析程序127产生的中间语文本260的框架产生出目标语句子。生成过程有以下三个主要步骤:
1.词汇选择。
必须为中间语中的每一个概念选择一个最合适的词项。
2.建立f-结构。
必须从中间语文本的框架产生出一个确定目标语表达的语法结构的句法功能结构。
3.句法生成。
句法功能结构由生成语法处理而产生目标语句子。
生成模块940的设计,结合使用了词汇选择领域的最新研究与以前翻译系统使用的映射与生成范例。
有关机器翻译和上述各模块具体设计与操作的更详细讨论,请参阅Nirenburg等人的Machine Translation:a knowledge-Based Approach一文,由Morgan Kaufmann Publishers,公司(1992)发表;Sommers & Hutchins的Introductionto Machine Translation一文,发表于Academic Press,London(October 1991);Mitamura等人的An Efficient Interlingua Translation System for Multi-lin-gual Document Production一文,发表于Proceedings of Machine Translation Summit Ⅲ,Washinton D.C.(July 2-4,1991);Nirenburg,S.的“World Knowledge and Text Meaning,”一文,发表于由K.Goodman和S.Nirenburg编辑的The KBMT Project:A Case Study in Knowledge-Based Machine Translation,San Mateo,Calif.:Morgan Kaufmann,KBMT-89 Project Report,可向Carnegie Mellon大学的机器翻译中心索取;S.Nirenburg编辑的Machine Translation:Theoretical and Methodological Issues,剑桥大学出版社,pgs 68-89(1987),和Carbonell等人的Steps Toward Knowledge-Based Machine Translation,一文,发表于IEEE Transaction on Pattern Analysis and Machine Intellingence,Vol.PAMI-3,No.4(July 1981),以上都有本文参照采用的资料。
虽然我们在前面根据部分较佳的实施例具体介绍了本发明,但是本专业领域的内行人应能理解,其形式与细节方面的改动并不脱离本发明的精神与范围。