CN1578954A - 机器翻译 - Google Patents

机器翻译 Download PDF

Info

Publication number
CN1578954A
CN1578954A CNA028216989A CN02821698A CN1578954A CN 1578954 A CN1578954 A CN 1578954A CN A028216989 A CNA028216989 A CN A028216989A CN 02821698 A CN02821698 A CN 02821698A CN 1578954 A CN1578954 A CN 1578954A
Authority
CN
China
Prior art keywords
translation
language
node
translation unit
language item
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA028216989A
Other languages
English (en)
Other versions
CN1578954B (zh
Inventor
斯蒂芬·克利福德·阿普尔比
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
British Telecommunications PLC
Original Assignee
British Telecommunications PLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from EP01309153A external-priority patent/EP1306774A1/en
Priority claimed from EP01309152A external-priority patent/EP1306773A1/en
Application filed by British Telecommunications PLC filed Critical British Telecommunications PLC
Publication of CN1578954A publication Critical patent/CN1578954A/zh
Application granted granted Critical
Publication of CN1578954B publication Critical patent/CN1578954B/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/42Data-driven translation
    • G06F40/45Example-based machine translation; Alignment

Abstract

一种计算机语言翻译扩展系统,用于扩展在翻译中使用的数据,该计算机语言翻译扩展系统包括:翻译单元产生装置,用于利用对应的源和目标范例文本来产生多个翻译单元,在源和/或目标语言中,每个翻译单元都包括相同语言的第一语言项和第二语言项;和,限制产生装置,用于随后产生对可与每个所述第一语言项相组合的多个候选第二语言项的限制。一种计算机语言翻译扩展系统,用于扩展在翻译中使用的数据,该计算机语言翻译扩展系统包括:原始翻译单元产生装置,用于产生多个原始翻译单元,在源和/或目标语言中,每个原始翻译单元都包括第一语言项和用于对该第一语言项可以与哪些第二语言项一起出现进行限制的属性数据;和,合成翻译单元产生装置,用于产生附加的多个合成翻译单元,该多个合成翻译单元包括第一语言项和所述多个原始翻译单元的属性数据的新组合。

Description

机器翻译
技术领域
本发明涉及机器翻译。更具体地,本发明涉及基于范例的机器翻译。机器翻译是语言处理的一个分支。
背景技术
在大多数机器翻译系统中,语言学家协助编写与源语言(要被翻译的语言)和目标语言(要翻译成的语言)的语法相关的一系列规则,以及用于将与源文本对应的数据转换成与目标文本对应的数据的转换规则。在传统的“转换”体系结构中,首先应用源语法规则来去除源语言的语法依赖性,并获得更接近于该文本的语义(含意)的一些数据,然后将其转换成目标语言,在此,应用目标语言的语法规则来生成语法上正确的目标语言文本。
但是,为这些系统手工编写规则开支很大、费时并且容易出错。一种减少这些问题的方法是采用源语言文本以及将它们在目标语言中的翻译的多个范例,并且试图从它们中提取适当的规则。在一种方法中,对源语言和目标语言范例文本进行手工标记以指出对应关系。
例如在以下文献中描述了本领域的现有技术:Brown P F,Cocke J,della Pietra S A,della Pietra V J,Jelinek F,Lafferty J D,MercerR L和Roossin P S 1990,“A Statistical Approach to MachineTranslation”,Computational Linguistics,16 2pp.79-85;BergerA,Brown P,della Pietra S A,della Pietra V J,Gillett J,LaffertyJ,Mercer R,Printz H和Ures L 1994,“Candide System for MachineTranslation”,in Human Language Technology:Proceedings of theARPA Workshop on Speech and Natural Language;Sato S和Nagao M 1990,“Towards Memory-Based Translation”,in COLING’90;Sato S 1995,“MBT2:A Method for Combining Fragments of Examples inExample-Based Translation”,Artificial Intelligence,75 1pp.31-49;Güvenir H A和Cicekli I 1998,“Learning TranslationTemplates from Examples”,Information Systems,23 6pp.353-636;Watanabe H 1995,“A Model of a Bi-Directional Transfer MechanismUsing Rule Combinations”,Machine Translation,10 4 pp.269-291;Al-Adhaileh M H和Kong T E,“A Flexible Example-based Parser Basedon the SSTC”,in Proceedings of COLING-ACL’98,pp.687-693。
Sato和Nagao开发了一种系统,该系统将源文本和目标文本表示为平面依赖关系树(planar dependency tree)。依赖关系树是一种特殊类型的依赖关系图(dependency graph)。在依赖关系图中,文本的多个单词与相互链接的多个节点相对应,以通过(有向的)依赖关系来链接依赖于另一个单词(即,改变了另一个单词的含意或与另一个单词有某种关系)的单词。如果每一个节点(除了一个唯一的“根”节点外)精确地依赖于另外一个节点(虽然一个节点可能具有依赖于与它相关的多个节点;换句话说,可以支配多个其它节点),则依赖关系图为树。平面树(planar tree)是下述的树:当以单词的原始顺序排列单词时,满足“投影约束”;换句话说,在各节点范围(span)内的每一个单词都由该节点支配;换句话说,在图形上,没有依赖线相互交叉。平面树的计算效率特别高,因此使用它们是有利的。
但是,只有当在源文本和目标文本中相互依赖的单词相邻接时,平面树才易于使用;换句话说,通过目标文本中的邻接单词序列来翻译源文本中的邻接单词序列。在语句级,这可能成立,但是由于较短的短语通常更适用,并且这样使得能够根据较少数量的范例实现较大的翻译覆盖范围,所以希望减小要被翻译的翻译单元(即,语句的部分,例如短语)的最大大小。在现有技术中已对该问题采用了多种不同的方法。因为该问题,所以还不能通过使用连接这些短语的头单词(head word)的连接数据来简单地对源语言短语和目标语言短语进行对准(align)。
Sato的MBT2方法将源文本和目标文本两者作为简单平面树来进行分析,并且使用简单的树对准来表示源语言和目标语言的树之间的关系。通过允许进行某些特定变换(例如添加和删除节点)来对在这些范例中发现的树进行归纳(generalise);并且使用与现有翻译相似的尺度对由Sato系统产生的翻译进行分级。
发明内容
本发明采用源文本和目标文本的多级表达,第一级依赖于文本的表面形式(即,单词顺序),而第二级依赖于单词之间的语义依赖关系。使用第二级进行从源语言到目标语言的转换。然后使用第一级表达来生成目标语言。
在一个方面中,本发明提供了一种计算机语言翻译扩展(development)系统,用于扩展在翻译系统中使用的数据,该计算机语言翻译扩展系统包括:翻译单元产生装置,用于利用对应的源和目标范例文本来产生多个翻译单元,在源和/或目标语言中,每个翻译单元都包括相同语言的第一语言项和第二语言项;和,限制产生装置,用于随后产生对可与每个所述第一语言项相组合的多个候选第二语言项的限制。
可以使用自动产生的限制来对翻译成分(例如,可以使用几个进一步不同的单词或词组作为其主语或宾语的短语)的行为进行限制,以强制看起来行为类似(例如,表现出类似的限制)的翻译成分行为一致(例如,表现出同样的限制)。这就抑制了多个可能的错误翻译的产生,改进了准确度,并且减少了翻译时间,同时使得可以使用短的翻译成分(这使翻译系统更通用)。
还提供了一种利用如此扩展的数据的翻译系统。
在另一方面中,本发明提供了一种归纳推理方法,用于根据一翻译单元范例集来推理翻译单元的归纳的方法,该方法包括:
标识相似的翻译单元对,每个翻译单元对包括至少一个语言项,和
创建新的翻译单元,该新的翻译单元减少了不同语言项行为的数目。
在又一方面中,本发明提供了一种计算机语言翻译扩展系统,用于扩展翻译中使用的数据,该计算机语言翻译扩展系统包括:
原始翻译单元产生装置,用于产生多个原始翻译单元,在源和/或目标语言中,每个原始翻译单元都包括:第一语言项;和,属性数据,用于对该第一语言项可以与哪些第二语言项一起出现进行限制;和
合成翻译单元产生装置,用于产生附加的多个合成翻译单元,该多个合成翻译单元包括第一语言项与所述多个原始翻译单元的属性数据的新组合。
因此,本发明可以通过以下步骤来从受限的范例子集进行归纳:从范例文本中找到相似的翻译单元(基于短语),并且根据这些创建新的合成翻译单元,以从给定的范例中归纳出范例中未曾出现的文本。
在又一方面中,本发明提供了一种翻译系统,该翻译系统被配置成利用如此生成的数据来进行分析。在另一情况下,可将本发明实现为一计算机程序,并且本发明包括这种程序和由一种该程序使用的数据结构。
本发明总的来说适用于机器翻译的翻译手段和方法。本发明的实施例能够根据相对少量的文本范例进行归纳,并且这使得这些实施例能够与例如保存在下面的文献中所述的翻译存储器中的文本一起使用:MelbyA K和Wright S E 1999,“Leveraging Terminological Data For UseIn Conjunction With Lexicographical Resources”,in Proceedingsof the 5th  International Congress on Terminology and KnowledgeRepresentation,pp.544-569。
其它实施例和优选特征如在此所说明和/或权利要求所述那样。
附图说明
现将参照附图仅通过示例来描述本发明的实施例,其中:
图1是表示根据第一实施例的计算机翻译系统的组成部分的方框图;
图2是表示构成图1的一部分的计算机的部件的方框图;
图3是表示图2的存在于计算机内的程序和数据的简图;
图4是表示根据本发明的文本翻译的多个阶段的示意图;
图5是表示为帮助人类用户标记范例文本而由图1的装置进行的注释处理的流程图;
图6表示在图5的处理过程中所产生的允许进行编辑的屏面;
图7是给出在第一实施例中执行的后续处理步骤以产生用于后续翻译的数据的示意性概要的流程图;
图8表示由图5的处理产生的显示冗余级别的屏面显示;
图9是表示用于消除图8的冗余级别的处理的流程图;
图10表示在执行图9的处理后与图8的结构相对应的结构;
图11表示由图5的处理为包含关系从句的源文本(英语)的产生的依赖关系图;
图12表示在遇到这种关系从句时由第一实施例执行的处理的流程图;
图13与图11相对应,表示由图12的处理所产生的结构;
图14表示由图5的处理为包含主题变换短语(topic shiftedphrase)的源文本所产生的结构;
图15是表示响应于主题变换短语由第一实施例执行的处理的流程图;
图16与图14相对应,表示由图15的处理所产生的结构;
图17是表示由图1的实施例执行的翻译过程的概要的流程图;
图18(包括图18a和18b)是更详细地表示第一实施例的翻译过程的流程图;
图19a-19f表示在本发明第二实施例中为生成用于归纳的附加翻译组成部分所使用的翻译组成部分;
图20是表示在第二实施例中生成这些附加组成部分的处理的流程图;
图21是表示根据第三实施例的生成可能的翻译单元组合之间的限制的处理的第一阶段的流程图;
图22是表示第三实施例的处理中的第二阶段的流程图;以及
图23(包括图23a和23b)是表示第三实施例的处理中的第三阶段的流程图。
具体实施方式
第一实施例
图1表示适于实施本发明的装置。该装置由工作站100构成,工作站100包括键盘102、计算机104、以及可视显示单元106。例如,工作站100可以是高性能个人计算机或者sun工作站。
图2表示图1的计算机104的各个部件,包括CPU 108(该CPU 108可以是Pentium III或者精简指令集(RISC)处理器108)。与该CPU相连的有:外围芯片组112,用于与键盘、VDU和其它部件进行通信;内存114,用于存储执行程序和工作数据;以及存储器110,用于存储后续执行的程序和数据。该存储器110包括硬盘驱动器;如果该硬盘驱动器不是可移动的,则存储器110还包括诸如软盘驱动器的可移动存储装置,以使得能够输入所存储的文本文件。
图3表示存储在存储器110上以备CPU 108执行的程序和数据。它们包括扩展程序220和翻译程序230。
该扩展程序包括对源文本文件224和目标文本文件226进行操作的映像程序(mapping program)222。在本实施例中,该扩展程序还包括:源词典234,用于存储源语言的单词及其语法和语义特性方面的数据;以及目标语言词典236,用于存储目标语言的类似信息以及链接作为彼此的翻译的源单词和目标单词的映像数据(例如Eurowordnet词典系统的共享标识符)。
该翻译程序包括翻译数据存储器232,该翻译数据存储器232用于存储PROLOG规则形式的翻译数据,该PROLOG规则由通过映像程序222建立的关系来进行定义。翻译逻辑程序238(例如PROLOG程序)定义由使用规则232的翻译程序采用的步骤,并且逻辑解释器程序239将翻译逻辑和规则解释为由CPU 108执行的代码。
最后,操作系统237提供图形用户界面、输入/输出功能以及公知的功能。该操作系统例如可以是Microsoft WindowsTM或者与X-Windows一起工作的Unix或Linux。
图4为翻译过程的概要图。对源语言文本(A)进行分析,以提供表示源表面树(B)的数据,该源表面树(B)与定义源依赖关系结构(C)的数据相对应,该源依赖关系结构(C)与目标依赖关系结构(D)相关联。然后利用该目标依赖关系结构来生成目标表面树(E)结构,根据该目标表面树结构生成目标语言文本(F)。
这些步骤将在后面更详细地讨论。但是,首先将讨论在提供后续翻译中使用的数据时由扩展程序220执行的处理。
翻译扩展程序
参照图5,在步骤402中,映像程序222生成包括源文档的第一个句子和翻译文档的对应句子(在该示例中,源文档具有英语句子“I liketo swim”,而目标文档具有对应的德语句子“Ich schwimme gern”)的单词的屏面显示(如图6所示)。在图形框1002-1008、1010-1014内显示了各个单词。该映像程序使得用户能够垂直地移动这些单词,但不能改变它们的相对水平位置(该相对水平位置与源文本和目标文本中这些单词出现的实际顺序相对应)。
然后该用户(翻译者或语言学家)可以拖动(使用鼠标或其它光标控制设备)包含这些单词的多个框之间的依赖关系线(“链接”)。在该示例中,该用户通过将依赖关系线从头节点1008拖到多个子节点1002-1006中的每一个,来选择“swim”(1008)作为英语文本中的“头节点”单词,而选择“I”(1002)、“like”(1004)、“to”(1006)作为“子节点”。
在此,应该注意该示例中的源语言中的所有子节点1002-1006位于头节点1008的左侧;它们被称为“左子节点”。将多个头节点中的一个标记为整个句子(或者,以更通用的术语来说,为文本块)的表面根节点。
继续编辑源图(步骤404),直到该用户链接了所有所需的单词(步骤406)为止。然后对目标语言文本(1012-1014)重复该处理(步骤408、410、412)。
一旦已经为源语言文本和目标语言文本构造了依赖关系图,则在步骤414中,程序222允许用户设置表示源语言文本和目标语言文本中的单词之间的对准关系的连接(链接),这些单词可以作为彼此的翻译进行配对。在本示例中,“I”(1002)与“Ich”(1010)配对,而“swim”(1008)与“schwimme”(1012)配对。
并非源文本中的每一个单词都可以由目标文本中的一个单词直接翻译,通常,用户将只连接能够较好地相互直接翻译的那些单词。然而,用户将连接位于可直接翻译的一对短语的头位置上的单词,即使那些头单词本身不能直接翻译。为了本发明的该目的,这种被连接的头单词构成被认为可以直接翻译的语言单元。
但是,在本实施例中,通常存在下述情况:该连接(对准关系)不仅表示该单词后面的短语(如果有的话)为一翻译对,而且该头单词本身也形成一翻译对。
当该用户完成时(步骤416),确定源语言文件和目标语言文件中是否还有要进行处理的句子,如果没有,则终止用户的介入并关闭用户界面。如果还有要处理的句子,则选择下一个句子(步骤420)并如步骤402一样继续该处理。在该阶段,表示翻译范例的数据现包括表示语言单元的一组节点、这些节点之间的一组有向链接(这些链接定义了依赖关系图)、以及表示两种语言的这些节点之间的对准关系的一组链接。该结构将被称为翻译范例记录。
处理翻译范例记录
参照图7,在本实施例中由扩展程序220执行的处理如下。在步骤502中,选择翻译范例记录中的一依赖关系图,并且在步骤504中,去除冗余结构(见下文)。
在步骤510中,执行关系从句变换处理(在下文中更详细地说明)。这通过产生已生成的依赖关系图数据的副本,然后对该副本进行变换来实现。其结果为树结构。
在步骤550中,对所编辑的图的副本执行主题转换变换处理(下文中更详细地说明)。其结果为保留了单词的表面顺序的平面树,并且在步骤580中将该结果与原始依赖关系图数据一起进行存储。
最后,在步骤590中,将各翻译范例记录分成将被称为翻译单元的多个独立单元。各翻译单元记录包括源语言和目标语言中的一对头单词,以及对于各头单词的各头单词左侧的表面子节点列表(左子节点)、各头单词右侧的表面子节点列表(右子节点)、以及该依赖关系图中的子节点列表。这种翻译单元也被称为翻译组成部分对(源语言的一个组成部分以及目标语言的一个组成部分)。在步骤582中,选择下一个依赖关系图,直到处理了所有的依赖关系图为止。
去除冗余层
现将对步骤504进行更详细的说明。图8表示英语短语“I look forthe book”和法语翻译“Je cherche le livre”的翻译范例记录。
在英语源文本中,单词“for”(1106)不与法语目标文本中的单词对准,因此没有定义可翻译的单词或短语。不存在作为目标语言中单词子集的翻译的由“for”支配的单词子集(包括其本身)。因此单词“for”支配“book”的事实对于翻译没有帮助。
因此,在本实施例中,消除了由“look”1104与“book”1110之间的“for”表示的冗余结构。直接在依赖关系数据上进行这些修改,以简化该依赖关系图。
参照图9和10,在步骤505中,选择一“叶”节点(即,不支配任何其它节点的节点),然后在步骤506中,访问上面的下一个节点。如果该节点本身是翻译节点,即与其它语言的一节点对准(步骤507),则该处理返回到步骤505,读取再往上的下一节点。
如果该上面的节点不与其它语言中的一节点对准(步骤507),则读取再往上的下一节点(步骤508)。如果该再往上的下一节点是对准节点(步骤509),则将在步骤505所选择的原始节点解除链接,并且重新连接到该对准节点上(步骤510)。如果不是,则读取再往上的下一节点(步骤508),直到到达一翻译节点为止。从“叶”节点向上层依次对每一个节点重复该处理,直到处理了所有的节点为止。图10表示节点1106和1110之间的链接被从节点1104到节点1110的链接替代。
由于如下所述可以使各翻译组成部分包括一头节点及其紧接着的多个依赖节点,所以该冗余结构的消除大大简化了翻译系统的实现。不存在中间层。这使得翻译组成部分看似经对准的语法规则(可与Rosetta系统中使用的翻译组成部分相比),这意味着可以使用普通的语法分析程序来进行源分析,并且由此生成翻译。
如刚说明的这种变换假设依赖关系图中的各节点具有确定的父节点。然而,该依赖关系图不限于这种拓扑结构。在存在具有多于一个父节点或者根本没有父节点的非对准节点的情况下,必要时可以执行相关性(relativisation)变换。这确保了只有可对准的节点正好具有多于一个的父节点。
生成表面树
由扩展程序220执行的下一个步骤是对以上得到的依赖关系图进行处理,以生成相关联的表面树。图6所示的依赖关系图已经是平面树的形式,但是该情况并不是一成不变的。
以下步骤将使用依赖关系图,通过生成如上所述获得的经处理的依赖关系图信息的副本,然后对该副本进行转换,来生成表面树结构。
关系从句变换(“相关性”)
图11表示可由用户为英语短句“I know the cat that Mary thoughtJohn saw”构造的依赖关系图,包括节点1022-1038。在诸如图11中的关系从句中,该依赖关系图具有多于一个的根节点,对应于主动词(“know”)和从属从句的动词(“thought”)。由于具有两个根节点,并且由于“cat”(1028)由两个节点(“know”(1024)和“saw”(1038))支配,所以结果为该依赖关系图不是树。我们假设该依赖关系图具有以下特性:
它们是弱连接的、有向的、非循环图,
对于具有n个节点的图,存在n-1个链接,
如果节点A和B具有多于一个的父节点,则不存在从A到B或者从B到A的路径。
这些假设意味着该依赖关系图包括通过共享公共节点连接的树的连接集(每一个子句都有一个树的连接集)。我们考虑这些树中的一个作为主树,并且该树的根节点作为主根节点。
参照图12和13,用于将该依赖关系图转换成树的算法如下:首先把主根节点作为当前节点。
将当前节点标记为“已处理”。
对于当前节点的每一个子节点,
检查该子节点是否具有未处理的父节点。
对于每一个这种未处理的父节点,找到支配该父节点的根节点(次根节点)。
断开该未处理的父节点支配该子节点的链接,并且
插入一链接,该子节点通过该链接支配该次根节点。
对于当前节点的每一个子节点,
使该子节点成为当前节点,并继续该过程直到不再有节点为止。
在存在从B到A的链接的情况下,节点A被称为节点B的“子节点”。另选地,节点B被称为节点A的“父节点”。
如图12所示,在步骤512中,确定是否处理了依赖关系图中的最后一个节点,如果是,则终止该处理。如果不是,则在步骤514中选择下一个节点,并且在步骤516中,确定该节点是否具有多于一个的父节点。大多数节点都只有一个父节点,在这种情况下,处理返回到步骤514。
然而,在遇到诸如“cat”(1028)的节点(该节点具有两个父节点)的情况下,确定更次级的树(步骤518)(例如远离该句子的根节点的更多数量的节点),并且在步骤520中,删除来自该节点的链接(即,在图11中,1038和1028之间的链接)。
在步骤522中,生成从该节点到该更次级树的根节点的链接。图13表示当前生成的从表示“cat”的节点(1028)到表示“thought”的节点(1034)的链接。
然后该处理返回到步骤516,以去除任何其它的链接,直到该节点只具有一个父节点为止,在此,步骤516使得流程返回到步骤514,以处理下一个节点,直到处理了该句子的所有节点为止。
因此,该处理具有根据原始依赖关系图生成相关联的树结构的作用。这样,在该阶段,翻译范例记录包括原始的源依赖关系图和目标依赖关系图的简化版本,以及目前具有树拓扑结构并保留了表面结构的经变换的源图和目标图。
主题变换转换(“主题性(topicaiisation)”)
图13的树为平面树,但是不总是这种情况;例如在一短语(主题)从其“逻辑”位置发生位移而在文本中更早出现的情况。这在英语中的“Wh-”疑问句中会出现,例如图14中所示的,图14表示由节点1042-1054构成的英语疑问句“What did Mary think John saw?”,这些节点分别与这些单词相对应。虽然依赖关系图在这里为树,但是它不是平面树,因为“saw”(1052)支配“what”(1042)的依赖关系违反了投影约束。
现将参照图14到16更详细地说明步骤550的主题变换转换阶段。该算法对具有树拓扑结构的图进行操作,因此希望在上述相关性转换之后执行该步骤。
该通用算法从一“叶”节点(即,不支配任何其它节点的节点)开始,
对于每一个节点,(当前头节点),识别违反投影(即,平面)约束的任何子节点(即,是否存在该节点不直接支配也不间接支配的中间节点?)
对于每一个这种子节点,去除依赖关系(链接)并且
将该子节点连接到当前节点的父节点。
继续该处理直到不再违反投影约束为止
对于每一个节点直到最后一个节点(步骤552),对于所选择的节点(步骤544),对于到一子节点的每一个链接直到最后一个链接(步骤556),选择到一子节点(从最左边的节点开始)的链接(步骤558)。然后该程序检查该链接是否违反平面性约束,换句话说,是否在头节点单词和子节点单词之间的单词序列中存在既不由该节点直接支配也不由该节点间接支配的中间单词。如果满足投影约束,则选择下一个链接(步骤558),直到最后一个链接(步骤556)。
如果不满足投影约束,则断开到该子节点的该链接,并重新连接到从当前节点向上的下一个节点上,并且再次检查(步骤560)是否满足平面性约束,直到该子节点在不违反平面性约束的情况下被连接到当前节点上面的节点上。
然后选择到一子节点的下一个链接(步骤558)直到最后一个链接(步骤556),并且随后选择下一个节点(步骤554)直到最后一个节点(步骤552)。
因此,在执行图15的主题性变换以后,得到图16中所示的结构,该结构为保留了表面结构的平面树,并且该结构与原始依赖关系图相对应。
将图分成多个翻译单元
在执行相关性和主题性变换以后,所存储的数据记录对于每一个句子都包括源语言依赖关系图和表面树、以及目标语言依赖关系图和表面树。这种结构只能用于翻译其中逐字逐句地出现那些句子的新文本。将这些句子分成多个更小的翻译组成部分(例如对应多个短句)更为有用,这些翻译组成部分各由“头”单词开始(headed),这些“头”单词由源语言和目标语言之间的对准节点表示。
因此,在步骤590中,扩展程序220将各翻译范例分成多个翻译单元记录,每一对对准节点都有一个翻译单元记录。
每一个翻译单元记录包括源语言和目标语言中的一对头单词、每一个头单词的右表面子节点列表和左表面子节点列表、以及依赖关系图子节点列表。这些列表可以为空。
可把各个头单词和它们的相关列表看作各个语言组成部分,并且对它们进行配对,以形成翻译单元记录。该翻译单元的多个语言组成部分可以存储在一起,例如,存储在相邻的存储位置中。由于各个依赖关系数据的对准关系,所以在它们被存储在不相邻的存储位置的情况下,它们仍然形成单个逻辑翻译单元。
表示这些子节点的多个字段可以包含字面单词(literal word)(例如“like”)或者由占位符(placeholder)变量和最初占据该子节点字段的翻译单元的记录形成的对(duple),例如该对与头单词对“I”-“Ich”相关联。还提供了多个附加结构,这些附加结构表示依赖关系与表面子节点之间的关系。这些将被称为“间隙栈操作(gap stack operation)”并将在后面进行说明。允许这种占位符变量的作用如下:在诸如由以上原始句子中的“swim”-“schwimme”开始的翻译单元中,以前由“I”-“Ich”占据的位置现在可以由另一个翻译单元占据,使得它能够加入到其它的句子中,例如“red fish swim”。尽管在具有人为制定的规则的翻译系统中,可以在语法上限定可以占据各个占位符变量的多个语言单元(以使得例如只有单个名词或名词短语能够位于特定的位置),但是在本实施例中,在该阶段没有这种约束。
现在可以将这些源表面结构作为直接语法规则来处理,使得可以使用简单的图表分析程序来生成要翻译的新文本的表面分析树,如将在下面更详细说明的。
应该注意,由于生成表面树的处理可能会改变多子节点对头节点的依赖关系,所以在每一种情况下,表面树内的子节点列表将不会完全一致地匹配依赖关系图内的那些子节点列表,由于在表面树中一个节点的子节点可能会转移到另一个节点,所以会导致它从一个翻译组成部分转移到另一个翻译组成部分;处理这种情况的方式如下:
在形成导出该表面结构的变换的结果使得表面表达中的一节点从一个翻译组成部分转移到另一个翻译组成部分的情况下,通过使用堆栈或等效的数据结构对此进行计算(使用被称为“线程”的多对列表在PROLOG中进行模拟)。
间隙栈操作与各翻译组成部分和各表面子节点相关联。在翻译组成部分中的表面子节点列表包含不包括在依赖关系子节点中的子节点的情况下,由这些表面子节点之一将一项压入该间隙栈。哪个子节点与该操作相关联取决于导致该额外表面子节点的变换。该项表示翻译组成部分的头节点(在相关性变换的情况下)或者该额外子节点(在主题性变换的情况下)。
当翻译组成部分包含附加到表面子节点中的依赖关系子节点时,将从与该翻译组成部分相关联的间隙栈中弹出一项。该项将与该附加依赖关系子节点合并。
因此,在翻译中的后续使用中,当源表面结构与输入源文本相匹配并且包含不能通过其相关的依赖关系图进行说明的项时,将该项压入堆栈,并且取回以与不同的翻译单元的依赖关系图合并。
由于该实施例以PROLOG语言编写,所以可以通过变量的统一来简化表面树、间隙栈、以及依赖关系图结构之间的表达。由于表面树和依赖关系图结构之间的关系由此而完全双向化,所以这是适宜的。为了实现反向翻译,我们简单地颠倒翻译单元中的两个组成部分。
在以下文献中描述了以与本实施例相同的方式来使用间隙栈:Pereira F 1981,“Extraposition Grammars”,American Journal ofComputational Linguistics,74pp.243-256,以及Alshawi H 1992,TheCore Language Engine,MIT Press Cambridge,在此引入作为参考。
再次考虑由图14和16中的图所表示的主题性变换。根据这些图导出的翻译单元的源侧为(为了清楚起见稍微进行了简化):
组成部分#0:
头节点=‘think’
左表面子节点=[‘what’,‘did’,‘mary’],
右表面子节点=[(#1,X)]
依赖子节点=[‘did’,‘mary’,(#1,X)]
组成部分#1:
头节点=‘saw’,
左表面子节点=[‘john’],
右表面子节点=[]
依赖子节点=[‘john’,‘what’]
可以看到,在组成部分#0中,将‘what’放在表面子节点列表中而不是放在依赖子节点列表中。相反,组成部分#1将‘what’放在其依赖子节点列表中而不是放在其表面子节点列表中。
在组成部分#0中,当进行依赖关系图到表面树的映射时,标记为(#1,X)的子节点被用作为额外表面子节点。所以,我们希望将‘what’加入到该子节点的间隙栈中。相反,在组成部分#1中,我们必须能够从与该额外依赖子节点(‘what’)相对应的间隙栈中去除一项,以便完全能够使用该组成部分。因此该组成部分的头节点将从该间隙栈中弹出一项,该头节点将把该项与‘what’的表达合并。则经修改的源侧组成部分的表达看上去如下:
组成部分#0:
头节点=‘think’
左表面子节点=[‘what’,‘did’,‘mary’],
右表面子节点=[(#1,X):push(Gapstack,‘what’)]
依赖子节点=[‘did’,‘mary’,(#1,X)]
组成部分#1:
头节点=‘saw’,pop(Gapstack,‘what’),
左表面子节点=[‘john’],
右表面子节点=[]
依赖子节点=[‘john’,‘what’]
这些用于相关性变换的组成部分看起来有点不同。为了对此进行说明,考虑图11和13中的示例。在该示例中,在依赖关系结构中存在一额外根节点。这意味着存在具有额外表面子节点的组成部分,并且该表面子节点将导致该组成部分的头节点被压入到间隙栈中。在该示例中,‘cat’为相关组成部分的头节点,而‘thought’为将要把‘cat’的表达压入其间隙栈中的表面子节点(‘cat’的表面子节点)。这具有使‘thought’成为依赖关系图中的局部根节点的作用,以及使‘cat’成为任何一个将其弹出间隙栈的头节点的依赖子节点(在该例中为‘saw’)。
则图11和13中的图的源侧的表达为(为了清楚起见再次进行了简化):
组成部分#0:
头节点=‘know’
左表面子节点=[‘I’],
右表面子节点=[(#1,Y)]
依赖子节点=[‘I’,(#1,Y)]
组成部分#1:
头节点=‘cat’,
左表面子节点=[‘the’],
右表面子节点=[(#2,Z):push(Gapstack,‘cat’)]
依赖子节点=[‘the’]
组成部分#2:
头节点=‘thought’
左表面子节点=[‘that’,‘mary’],
右表面子节点=[(#3,W)]
依赖子节点=[‘that’,‘mary’,(#3,W)]
组成部分#3:
头节点=‘saw’:pop(Gapstack,V),
左表面子节点=[‘john’],
右表面子节点=[]
依赖子节点=[‘john’,V]
该示例表示‘cat’被加入到组成部分#1的子节点#2的间隙栈中。此外,在组成部分#3的头节点从间隙栈中弹出一项(在该例中为一变量)。该项与组成部分#3的依赖子节点合并。
在本发明中,“语言单元”一词包含单词和占位符变量两者,而“单词”一词包含实际或字面的单词和语态。
因此,在以上示例中,对于组成部分#0,其左表面子节点为实际单词‘I’,而其右表面子节点为由占位符变量‘Y’和最初占据该子节点字段的翻译单元的记录‘#1’构成的对;对于组成部分#1,其左表面子节点为实际单词‘the’,而其右表面子节点为由占位符变量‘Z’和最初占据该子节点字段的翻译单元的记录‘#2’构成的对;对于组成部分#2,其左表面子节点为实际单词‘that’和‘mary’,而其右表面子节点为由占位符变量‘W’和最初占据该子节点字段的翻译单元的记录‘#3’构成的对;而对于组成部分#3,其左表面子节点为实际单词‘john’,它没有右表面子节点,但是因为从间隙栈中弹出的项,所以其依赖子节点为实际单词‘john’和具有值“V”的变量。
如果存在另一个组成部分,例如#21,则对于‘the black dog’,即头节点=‘dog’;左表面子节点=‘the’和‘black’,则所有出现的与#1相关联的占位符变量都可以用于例示#21,以生成另一个可翻译的源文本。
翻译
稍后将考虑该扩展程序的其它方面。然而,为了更好的理解这些方面,在该阶段引入对翻译程序230的操作的说明是适宜的。将相应地对此进行说明。
在本实施例中将翻译组成部分内的源表面结构看作为简单语法规则,以通过利用简单的图表分析程序来产生表面分析树,例如如在JamesAllen,“Natural Language  Understanding”,second edition,Benjamin Cummings Publications Inc.,1995中所述,不过在此修改为从头节点或根节点向外而不是从右到左或从左到右进行操作。分析程序尝试按照要翻译的文本的顺序将每个翻译单元的源表面树结构的头节点与各个单词进行匹配。这产生了使用源表面结构的压缩边沿(packededge)的数据库,该数据库在随后被解压以找到一分析。
使用堆栈来提供表面树项和依赖关系树项的统一的作用确保在解压过程中同时创建源依赖关系结构。
虽然由逻辑解释器239确定由表面结构和依赖关系结构所表达的规则的实际实施顺序,但是图17和18在概念上示出了该处理。
在图17的步骤602中,选择要翻译的源语言文件的句子。在步骤610中,使用分析程序来导出语言组成部分的源表面树,该表面树再现了该输入源文本中的单词顺序。在步骤620中,确定了对应的依赖关系图。在步骤692中,根据源依赖关系图,确定了目标依赖关系图。在步骤694中,根据目标依赖关系图,确定了目标表面树,并且使用该目标表面树来产生目标语言文本,在步骤696中,存储该目标语言文本。继续该处理直到源文本结束为止(步骤698)。
图18a和18b更详细地示出了步骤610到694。在步骤603中,依次将每个表面结构与所述输入文本进行比较。每个字面表面子节点(用于存储字面单词的节点)必须精确地与源文本串中的一个单词相匹配。将每个对准的表面子节点(即,与其它翻译单元相对应的表面子节点)与翻译单元的源头记录合并,以为源文本创建表面树。
然后,对于表面分析中的每个翻译单元,使用为该单元所存储的栈操作,对该栈进行操作(步骤608)以压入或弹出任何额外的或错过的子节点。如果(步骤610)不能为依赖关系结构检索到正确数量的项,那么就拒绝该候选结构,并选定下一个候选结构,直至最后一个候选结构(步骤612)。在存在正确的翻译组成部分的情况下,恰好正确数量的子节点将通过该栈。
在找到匹配的表面结构和依赖关系结构(即,对句子的分析)的情况下(步骤610),则参照图18b,对于所组成的依赖关系结构中的每个翻译单元,检索对应的目标头节点(步骤622),以构造对应的目标依赖关系结构。这样源语言和目标语言之间的转换就在依赖关系结构的级别上进行,因此相对来说不受源语言和/或目标语言中的单词位置的难以预料的变化所影响。
在步骤626中,对栈进行操作,以压入或弹出子节点。在步骤628中,根据目标依赖关系结构来确定目标表面结构。
在步骤630中,通过沿着链接遍历整个目标表面结构来确定该结构的根节点。最后,在步骤632中,通过从目标表面根组成部分开始遍历目标表面结构来递归地产生目标文本,以从目标表面头组成部分和子组成部分中提取目标文本。
根据上面的说明,应该理解,本发明通过利用两个不同的图来表达每种语言的范例文本,而与本领域内的前述工作(即,Sato的MBT2)相区别。其中这些图之一是平面树,用于表达单一语言表面约束,例如单词排序和一致规则;另一个图是更通用的有向非循环图,用于为范例文本提供依赖关系图。两种语言之间的对准关系被表达为依赖关系图之间的对准关系。
本发明的一个优点是可以将不连续序列的单词进行对准。另一个优点是表现出相互限制的单词在表达上是“邻居”。这使得可以从非常少量的范例中学习到约束。
第二实施例—翻译单元的归纳
在对第一实施例的核心操作进行讨论之后,现将说明进一步优选的特征(可独立于上述特征进行应用)。
由上述处理所形成的翻译组成部分对于目标语言和源语言包括字面头节点和多个子节点,所述多个子节点可以是字面或非字面(即,上述的对)的,后者表示其他翻译组成部分的连接点。使用一翻译组成部分时,每个字面子节点必须与要翻译的文本精确匹配,而每个非字面子节点必须支配另一翻译组成部分。
规则集(该规则集是这些翻译单元记录现在包括的规则集)是从范例文本中导出的。因此,例如,在一特定名词不带有或带有两个或更多个形容词出现时,不可以使用带有一个形容词的该特定名词来翻译该名词。本实施例提供了一种用于根据给定的范例进行归纳的手段。这就减少了有效翻译系统所需的、或者看起来不同的范例的数目,增强了给定范例集的翻译能力。
图19(包括图19a-19f)表示法语-英语翻译单元的六个范例文本。在图19a中,源头节点是“car”,其带有两个左子节点“the”和“white”,目标头节点是“voiture”,其带有左子节点“la”和右子节点“blanche”;类似地,图19b表示文本“the white hat”(“le chapeau blanc”);图19c表示文本“the car”(“la voiture”);图19d表示文本“thehat”(“le chapeau”);图19e表示文本“the cat”(“le chat”);图19f表示文本“the mouse”(“la souris”)。
仅在这些范例文本的基础上,上述翻译系统将不能翻译诸如“whitemouse”或“white cat”的短语。
为使系统能够翻译这样的范例,通过添加“伪翻译单元”来进行归纳,以减少现将说明的头单词对的不同表现的数量。
根据每个翻译单元导出一替换形式。这由去除了头节点单词的翻译单元组成。如果可以通过将占位符变量和引用(值)重命名为两个替换形式中所包含的翻译单元来使该两个替换形式等同,那么就说这两个替换形式是相似的。对于每个头单词对存在一替换形式集。我们认为该集合描述了头单词对的“行为”。如果描述两个头单词对的行为的大量替换形式是相似的,那么就说这两个头单词对的表现方式是相似的。为了能够进行所需的归纳,创建了新的翻译单元(伪翻译单元),以使相似头单词对的表现一致。
参照图20,在步骤702中,扩展程序220读取存储在存储器232中的翻译单元以查找相似单元。为了确定两个翻译单元是否相似,要检查它们的替换形式的相似性。
参照图19a到19f中的翻译范例,将发现图19d所示的单元与图19e所示的单元相似,图19c所示的单元与图19f所示的单元相似。尽管所有四个范例的源侧是等同的(因为英语中的定冠词没有阳性和阴性形式),但是在它们的目标子节点列表中两个对却不等同。
对于已识别出其源头单词和目标头单词不同的每一对相似翻译单元,在步骤704中创建第三翻译单元,该第三翻译单元具有与该相似翻译单元对中的一个相同的源-目标头单词对,但是具有不同的子节点。例如,对于由图19d和19e所形成的对,在步骤704中将选择图19b,因为图19b具有与图19d的单元相同的头单词。
在步骤706中,创建新的翻译单元记录,该新的翻译单元记录采用了该相似翻译单元对中的另一个的源头单词和目标头单词(换句话说,不是第三翻译单元的头单词),该新的翻译单元记录与第三翻译单元的子节点列表进行组合。在这种情况下,在步骤706中使用图19b的翻译单元为图19d和19e的相似翻译单元对所产生的翻译单元是:
SH7=Cat
SD1=The
SD2=White
TH7=Chat
TD1=Le
TD2=Blanc
类似地,使用图19a的翻译单元根据图19c和19f的相似翻译单元对所形成的新的翻译单元如下:
SH8=Mouse
SD1=The
SD2=White
TH8=Souris
TD1=La
TD2=Blanche
因此,翻译扩展程序220能够产生多个新的翻译范例,这些新的翻译范例中的许多对于源语言和目标语言在语法上都是正确的。
在上面的范例中,可以看出,将诸如限定词(“the”、“le”、“la”)的功能词留作为这些范例的源文本和目标文本中的字面串,而不是将它们标记为语言单元,有益于防止过度归纳(例如,忽略形容词-名词一致性)。
尽管如上所述的实施例有效地发挥作用,但是在该实施例中还可以利用源语言词典和目标语言词典234、236来限制被选定为相似的翻译单元对的数量。
例如,仅在两对中的源头单词(同样还有目标头单词)处于相同的句法范畴的情况下,才认为这两对是相似的。附加地或者另选地,可使第三单元的选择取决于以下条件:该第三单元的子节点与第一和第二单元的子节点属于相同的句法范畴。这就有可能减少所产生的错误归纳对的数量,而不会大大减少有用归纳的数量。
在对第一实施例采用上述实施例的归纳的情况下,将在图7所示的处理之后采用该归纳。在翻译过程中将惩罚(penalty)与伪翻译单元的使用关联起来是适宜的,以在可以使用其它翻译的情况下阻止翻译系统使用这些伪翻译单元。
应该理解,该第二实施例的归纳方法通过使用单词表现之间的相似性来假设在范例中未曾见到的新翻译单元,以区别于本领域中的前述工作。
第三实施例—创建和使用头/子节点限制
如果如在第一实施例中所述,在翻译过程中可以选择任何头节点,那么将产生许多不正确的翻译(除可能产生的任何正确翻译之外)。如果采用在前面的实施例中所述的归纳处理,则会进一步增加这种可能性。如果会产生很多翻译,希望消除在语言上不合理或者产生了语言上不正确的目标文本的那些翻译。
翻译系统不能保证源文本本身是符合语法的,因此,目的并不在于提供拒绝产生不合语法的目标文本的系统,而是提供能产生规定的多个可能的翻译输出的系统,该系统将得到在语法上更正确的和更可靠的翻译输出。
但是,本实施例的系统不访问用来规定哪个头节点应该与哪个子节点组合的语法或语义信息。本实施例的目的在于,通过对范例文本中存在的翻译单元(更确切地说,那些不曾存在的翻译单元)的组合进行归纳,来获取数据以执行与这种语法或语义信息相类似的功能。
因此,在本实施例中,进一步对由上述扩展程序220根据所标记的源翻译文本和目标翻译文本产生的数据进行处理,以引入对在翻译过程中所允许的头翻译单元和子翻译单元的组合的限制。
推导限制
因此,在本实施例中,由扩展程序220来扩展限制。
参照图21,在步骤802中,扩展程序220使翻译器程序230对存储在文件224、226中的源语言范例文本和目标语言范例文本执行操作。
在希望翻译装置仅单向操作(即,从源语言到目标语言)的情况下,只需对源语言范例文本进行操作,但是很显然,在双向翻译系统中,如在本实施例中,还按另一方向进行了处理。
在步骤804中,选择了多个翻译(对于每个句子可能有几个竞争的翻译)中的一个,并且将其与所有目标范例文本进行比较。如果在分析操作过程中由翻译系统所产生的源-目标文本对出现在任何范例中(步骤808),则将该分析添加到“正确”列表中(步骤810)。反之,就将该分析添加到“不正确”列表中(步骤812)。
如果尚未处理最后一个翻译(步骤814),则在步骤804选择下一翻译。然后对于所有源文本范例的所有翻译重复该处理。
下一阶段的目的是消除不正确的范例文本分析。
相应地,参照图22,选择来自由图21的处理所产生的列表中的每一个不正确的分析(步骤822),并且在步骤824,遍历源分析表面结构图(树)和源分析依赖关系结构,以产生在该结构中找到的头节点和子节点对的独立列表。结果得到了源文本和目标文本的表面头节点/子节点对的列表、和依赖头节点/子节点对的列表(两种语言共用)。这三种列表通常是不同的,因为如上所指出的那样,表面子节点和依赖子节点对于许多翻译单元来说都是不一致的。
对于每一个分析都重复该处理,直到完成了最后一个分析为止(步骤826)。
在对每个不正确的分析编辑了表面头节点/子节点对集合以及依赖头节点/子节点对集合后,在步骤828中,选择头节点/子节点对的一子集,以使该子集是下述的最小集合,即如果使该最小集合无效,则将去除最大数量(优选地,全部)的不正确的分析。
可以回忆,当把原始图分成多个翻译组成部分时,对每一个翻译组成部分存储占据子节点位置的组成部分标识。为了避免消除实际存在于注释过的源-目标范例中的任何头节点/子节点对,从对列表中去除了这些原始组合。
通过优化程序来执行寻找要使其无效的头节点/子节点对的最小子集(使该最小子集无效将消除最大数量的不正确分析)的处理,反复地确定不在原始范例中的头节点/子节点对的子集的影响。
例如,可以通过选择在最大数量的不正确翻译中出现的头节点/子节点对,并消除该头节点/子节点对来执行上述处理;然后,在剩下的翻译中,选择出现次数最多的头节点/子节点对,并消除该头节点/子节点对;以此类推,或者,在某些情况下,可以使用“强力”优化方法。
因此,该步骤的结果是不能组合的头单词和子单词对的三个列表(一个用于源表达,一个用于目标表达,一个用于公共依赖关系表达)。
因此,在该阶段,可以存储这些列表以在后续翻译中使用,以在翻译的分析阶段不对各个组合进行尝试,因此,通过减少可能的另选分析的数量而减少了分析所花的时间,并且消除了不正确的分析。
但是,在步骤830中找到并标记为不合理的对以后,接下来,优选的是,归纳对在未曾见过的源文本(超出存储在范例文件224中的那些源文本的源文本)的竞争分析之间要被选择的头节点/子节点配对的限制。
为此,需要一条能够从所有可能的归纳中选择“最佳”归纳的原则。根据本实施例,优选的归纳是最简单的(在某种意义上)并且与范例数据保持一致性的归纳。
这通过如下方法来实现:将一数据结构与每一个翻译单元和每一个对准子节点关联起来;在本实施例中,该数据结构是一属性值矩阵(通常用来表征语言学项),虽然也可以使用其它数据结构。
如果所关联的数据结构在某种意义上“匹配”(例如,通过PROLOG一致性来测试),则一个对准子节点可以仅支配一个翻译单元。
通过选择以使产生与原始翻译范例一致的翻译所需的不同属性值矩阵的数量最小,来对限制进行归纳。如果可以使头节点和子节点属性值矩阵一致,则在翻译过程中一个子节点可以只选择一个特定的头节点。如果并且仅仅如果两个翻译单元不能连接的多个翻译单元的集合是相同的,则该两个翻译单元可以共享相同的属性值矩阵。因此,为了使属性值矩阵的数量最小,希望使子节点不能连接到的头节点的不同集合的数量最小,并且使头节点不能连接到的子节点的不同集合的数量最小。因此,目的在于添加其它的不合理头节点/子节点对以减少这种不同集合的数量。
因此,在下面的处理中,遵循以下原则:在第一头节点不能与第一子节点集组合、第二头节点不能与第二子节点集组合、并且在这两个子节点列表之间存在高度重合的情况下,这两个头节点可能在语言学上表现类似,并且因此,防止每个头节点与另一头节点不能组合的所有子节点相组合是合适的。
对于每一个子节点都不能组合的头节点的集合也完全一样。该效果是强迫类似的头节点表现一致、类似的子节点表现一致,由此减少不同表现的数量,并且从有限的翻译范例集中归纳出多种表现。
参照图23a,在步骤832中,查找不合理头节点/子节点对的集合内的第一头节点(对表面集合和依赖关系集合都执行该处理,但是为清楚起见这里只描述一个处理)。将与该集合中的该头节点的所有其它实例一起出现的子节点集中到该头节点的不合理子节点集合中(步骤834)。
当已对该集合中的每个不同的头节点重复了该操作时(步骤836),则在步骤842中,从不合理对集合中选择第一子节点,并且(类似地)把与对集合中的该子节点的所有实例一起出现的相应头节点编辑到该子节点的不合理头节点集合中(步骤844)。当编辑完所有的子节点和头节点集合(对于对的表面列表和依赖关系列表)时(步骤846),处理进行到图23b的步骤852。
在步骤852中,将头节点集合(每个头节点具有一个不能与其相组合的子节点集合)分成多个子集。将具有相同的子节点集合的所有头节点进行归组并存储在一起以形成一子集。结果得到与头节点的不同行为的数量相对应的多个子集。
在步骤854中,对子节点的集合重复该相同的处理,以便将子节点分成具有相同头节点集合的多个组。
接下来,在步骤856中,确定所有的头节点和子节点子集合是否彼此充分地不相似。例如,如果没有子集具有任何与另一子集共有的子节点,则可以认为它们不相似。在这种情况下(步骤856),结束该处理。
否则,找到了两个具有最相似的子节点集合(即,共有最大数量的子节点—最大交集)的头节点子集(步骤857)。类似地,在步骤858,找到了两个最相似的子节点子集(通过它们所共有的头节点的数量来度量)。
在步骤859中,测试是否允许合并这两个头节点集合和这两个子节点集合。除非该合并将使范例文本中所出现的头节点和子节点的组合不合理(并且因此使得不能进行有效的翻译),否则就允许合并。如果不允许,则查找下一最相似的集合(步骤857、858)。
如果允许合并,那么(步骤860)就合并这两个头节点集合,并且合并后的子集的所有头节点的子节点集合就变成这两个先前子集的子节点集合的并集(即,每个头节点都从两个子集继承了所有子节点)。类似地,合并这两个子节点集合,并且每个子节点的头节点集合就变成了这两个先前的头节点集合的并集。
然后,处理返回到步骤856,直到所得到的子集是正交的为止(即,不共用它们列表中的公共元素)。在此,该处理结束,并且组合所得的子集,以产生在翻译中不能组合的头节点/子节点对的最终集合。
然后将该集合存储在规则数据库232中,并且在随后的翻译中加以应用,以限制在分析过程中被选定来与每个子节点合并的头节点。如上所述,对于表面表达和依赖关系表达保持分立集合。
这样,如最后所述,本实施例简化并且归纳了翻译组成部分所表现出来的行为。然而,尽管前述归纳实施例被操作用来扩展可能的翻译单元的范围,但是本实施例通过归纳对翻译单元组合的限制来进行操作,以限制可以产生的合理翻译的范围。
应该理解,第三实施例的方法不同于本领域内的前述工作,该第三实施例的方法通过推理约束来消除训练范例文本的不正确的再翻译。
结论
本发明在其各个实施例中提供了一种翻译系统,该翻译系统不需要手工编写语言规则,而是能够根据范例集学习翻译规则,这些范例由人工使用用户界面进行了标记。然后对进行了标记的范例进行预处理,以对翻译进行归纳,并且对可能另外产生的不合语法的翻译另选形式的数量进行限制。
限制和归纳范例都依据下述原则:使用与所述范例数据相一致的最简单的模型。
在与PROLOG语言或类似语言的一致性特征相结合的简单分析程序可以直接执行翻译的情况下,所采用的形式得到类似正常语法或逻辑规则的多个翻译单元。
本发明的多个实施例可以单独使用,但是优选地一起使用。
尽管已经说明了包括扩展程序220和翻译程序230的装置,但是应该清楚的是,可将这两个程序设置为分立的装置,扩展装置用于扩展随后可在多个不同的翻译装置中使用的翻译数据。尽管已经对装置进行了说明,但是显而易见的是,通过如下方式很容易实现该程序:提供包含用于执行扩展处理的程序的盘、和/或包含用于执行翻译处理的程序的盘。后者可以与翻译数据分开提供,并且可以被提供为诸如盘的记录载体上的数据结构。另选地,例如可以通过经由因特网从网络服务器下载,来电子地提供程序和数据。
比较便利的是,提供本发明以与由翻译者所进行的翻译工作的翻译存储器一起使用,以使本发明能够使用存储器中的文件来扩展翻译数据。
可以期望提供一种语言预处理器和后处理器程序,用于检测源文本中的固有名称、数量和日期,并将它们正确地转换成目标文本。
尽管对应用于机器翻译的本发明进行了说明,但是并不排除在自然语言处理中的其它应用;例如,在源文本语法检查方面的应用,或者在向计算机提供自然语言输入方面的应用。尽管已对文本输入和输出进行了说明,但是也可以直接提供一种具有语音到文本和/或文本到语音接口的翻译设置,以使得能够进行语音输入和/或文本输出。
尽管已对具体的实施例进行了说明,不过应该清楚的是,可以进行许多其它的变型和修改。本发明将包括对于熟练的读者显而易见的任何和所有这种变型、和修改及替换,不管这些变型、和修改及替换是否被所附权利要求所覆盖。为了避免疑问,请求对任何和所有新主题及其组合的保护。
除非上下文明确需要其它含意,否则,贯穿说明书和权利要求书,单词“包括(comprise)”、“包括(comprising)”等都被解释为与排除或穷举的含意相对的包括的含意,即,被解释为“包括,但不限于”的含意。
贯穿说明书中的对现有技术的任何讨论都决不应被视为承认该现有技术是广泛公知的或者构成了部分本领域内的普通的一般知识。

Claims (21)

1、一种计算机语言翻译扩展系统,用于扩展在翻译中使用的数据,该计算机语言翻译扩展系统包括:
翻译单元产生装置,用于利用对应的源和目标范例文本来产生多个翻译单元,在源和/或目标语言中,每个翻译单元都包括相同语言的第一语言项和第二语言项;和
限制产生装置,用于随后产生对可与每个所述第一语言项相组合的多个候选第二语言项的限制。
2、根据权利要求1所述的系统,其中,所述限制产生装置被设置成选定一初始限制集,并且对所述初始限制集进行归纳以提供一经归纳的限制集。
3、根据权利要求2所述的系统,其中,所述的选定一初始限制集的步骤是通过以下方式来执行的:利用所述多个翻译单元来重新翻译所述源和目标范例文本,以便产生所述源和目标范例文本的多个候选翻译单元;和,产生一包括多个限制的限制列表,如果利用该多个限制来翻译所述源和目标范例文本,该多个限制允许产生所述源和目标范例文本,但对与所述源和目标范例文本不匹配的候选翻译的数目进行限制。
4、根据权利要求2或权利要求3所述的系统,其中,所述初始限制集被选定成在所有可能限制集中代表相对较少数量的限制。
5、根据权利要求4所述的系统,其中,所述初始限制集被选定成代表最小的可能限制集。
6、根据权利要求2到5中的任何一项所述的系统,其中,所述限制产生装置被设置成通过以下方式来归纳所述初始限制集:查找表现出相似限制的第一语言项的子集,并且修改第一语言项的限制以增加其限制的相似性.
7、根据权利要求6所述的系统,其中,所述限制产生装置被设置成为每个第一语言项子集分配一限制集,该限制集对应于所述子集的所有元素的所有限制的并集。
8、根据权利要求2到7中的任何一项所述的系统,其中,利用归纳法来执行所述归纳。
9、根据权利要求2到8中的任何一项所述的系统,其中,所述归纳被执行以相对于初始行为的数量来减少不同行为的数量。
10、根据任何前述权利要求所述的系统,其中,所述限制包括对于每个第一语言项的一第二语言项列表,该第二语言项列表包括在源文本的分析和/或目标文本的产生过程中所述第一语言项不应与其相组合的多个第二语言项。
11、一种计算机自然语言翻译系统,被配置成使用由根据任何前述权利要求的系统所扩展的数据。
12、一种计算机程序,包括用于在计算机上执行以使该计算机充当任何前述权利要求中的系统的代码。
13、一种约束推理方法,用于推理对所允许的翻译或分析单元的组合的约束,该约束推理方法包括:
选择初始约束集,和
根据最小复杂度原理来对该初始约束集进行归纳。
14、一种计算机语言翻译扩展系统,用于扩展在翻译中使用的数据,该计算机语言翻译扩展系统包括:
原始翻译单元产生装置,用于产生多个原始翻译单元,在源和/或目标语言中,每个原始翻译单元都包括:第一语言项;和,属性数据,用于对该第一语言项可以与哪些第二语言项一起出现进行限制;和
合成翻译单元产生装置,用于产生附加的多个合成翻译单元,该多个合成翻译单元包括多个第一语言项和所述多个原始翻译单元的属性数据的新组合。
15、根据权利要求14所述的系统,其中,所述多个合成翻译单元通过以下步骤来产生:
查找具有相似属性数据的翻译单元。
16、根据权利要求15所述的系统,其中,所述多个合成翻译单元通过以下步骤来产生:
至少查找第一翻译单元和一第二翻译单元,该第二翻译单元包括与所述第一翻译单元的属性数据相同的属性数据,并且具有与所述第一翻译单元的第一语言项不同的第一语言项;
查找一第三翻译单元,该第三翻译单元包括与所述第一翻译单元的第一语言项相同的第一语言项、和不同的属性数据;以及
产生合成的第四翻译单元,该第四翻译单元包括与所述第二翻译单元的第一语言项相同的第一语言项、以及与所述第三翻译单元的属性数据相同的属性数据。
17、根据权利要求14到16中的任何一项所述的系统,其中,所述属性数据包括:
至少一个第二语言项,该至少一个第二二语言项与所述第一语言项的语言相同,并且所述第一语言项必须与该至少一个第二语言项一起出现在所述翻译单元中。
18、根据权利要求17所述的系统,其中,所述第一语言项包括一翻译单元的头节点,并且所述属性数据包括该头节点的多个子节点的一列表。
19、一种计算机自然语言翻译系统,被配置成使用由根据任何前述权利要求的系统所扩展的数据。
20、一种计算机程序,包括在计算机上执行以使该计算机充当权利要求14到19中的任何一项中的系统的代码。
21、一种归纳推理方法,用于根据一翻译单元范例集来推理翻译单元的归纳,该归纳推理方法包括:
标识相似的翻译单元对,每个翻译单元对包括至少一个语言项,和
创建新翻译单元,该新翻译单元减少了不同语言项行为的数目。
CN028216989A 2001-10-29 2002-10-29 计算机语言翻译扩展系统 Expired - Fee Related CN1578954B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
EP01309153A EP1306774A1 (en) 2001-10-29 2001-10-29 Machine translation
EP01309152.5 2001-10-29
EP01309153.3 2001-10-29
EP01309152A EP1306773A1 (en) 2001-10-29 2001-10-29 Machine translation
PCT/GB2002/004893 WO2003038663A2 (en) 2001-10-29 2002-10-29 Machine translation

Publications (2)

Publication Number Publication Date
CN1578954A true CN1578954A (zh) 2005-02-09
CN1578954B CN1578954B (zh) 2010-04-14

Family

ID=26077185

Family Applications (1)

Application Number Title Priority Date Filing Date
CN028216989A Expired - Fee Related CN1578954B (zh) 2001-10-29 2002-10-29 计算机语言翻译扩展系统

Country Status (6)

Country Link
US (1) US7447623B2 (zh)
EP (1) EP1456770A2 (zh)
JP (1) JP2005507524A (zh)
CN (1) CN1578954B (zh)
CA (1) CA2464932A1 (zh)
WO (1) WO2003038663A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111488742A (zh) * 2019-08-19 2020-08-04 北京京东尚科信息技术有限公司 用于翻译的方法和装置

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8214196B2 (en) * 2001-07-03 2012-07-03 University Of Southern California Syntax-based statistical translation model
WO2004001623A2 (en) 2002-03-26 2003-12-31 University Of Southern California Constructing a translation lexicon from comparable, non-parallel corpora
US8548794B2 (en) 2003-07-02 2013-10-01 University Of Southern California Statistical noun phrase translation
US8296127B2 (en) * 2004-03-23 2012-10-23 University Of Southern California Discovery of parallel text portions in comparable collections of corpora and training using comparable texts
US8666725B2 (en) 2004-04-16 2014-03-04 University Of Southern California Selection and use of nonstatistical translation components in a statistical machine translation framework
JP5452868B2 (ja) * 2004-10-12 2014-03-26 ユニヴァーシティー オブ サザン カリフォルニア トレーニングおよび復号のためにストリングからツリーへの変換を使うテキスト‐テキスト・アプリケーションのためのトレーニング
JP4404211B2 (ja) * 2005-03-14 2010-01-27 富士ゼロックス株式会社 マルチリンガル翻訳メモリ、翻訳方法および翻訳プログラム
US8886517B2 (en) 2005-06-17 2014-11-11 Language Weaver, Inc. Trust scoring for language translation systems
US8676563B2 (en) 2009-10-01 2014-03-18 Language Weaver, Inc. Providing human-generated and machine-generated trusted translations
US10319252B2 (en) 2005-11-09 2019-06-11 Sdl Inc. Language capability assessment and training apparatus and techniques
US8943080B2 (en) 2006-04-07 2015-01-27 University Of Southern California Systems and methods for identifying parallel documents and sentence fragments in multilingual document collections
US8886518B1 (en) 2006-08-07 2014-11-11 Language Weaver, Inc. System and method for capitalizing machine translated text
US9235573B2 (en) 2006-10-10 2016-01-12 Abbyy Infopoisk Llc Universal difference measure
US8145473B2 (en) 2006-10-10 2012-03-27 Abbyy Software Ltd. Deep model statistics method for machine translation
US9047275B2 (en) 2006-10-10 2015-06-02 Abbyy Infopoisk Llc Methods and systems for alignment of parallel text corpora
US9633005B2 (en) 2006-10-10 2017-04-25 Abbyy Infopoisk Llc Exhaustive automatic processing of textual information
US20080086298A1 (en) * 2006-10-10 2008-04-10 Anisimovich Konstantin Method and system for translating sentences between langauges
US8214199B2 (en) * 2006-10-10 2012-07-03 Abbyy Software, Ltd. Systems for translating sentences between languages using language-independent semantic structures and ratings of syntactic constructions
US9645993B2 (en) 2006-10-10 2017-05-09 Abbyy Infopoisk Llc Method and system for semantic searching
US8548795B2 (en) 2006-10-10 2013-10-01 Abbyy Software Ltd. Method for translating documents from one language into another using a database of translations, a terminology dictionary, a translation dictionary, and a machine translation system
US9984071B2 (en) 2006-10-10 2018-05-29 Abbyy Production Llc Language ambiguity detection of text
US8195447B2 (en) * 2006-10-10 2012-06-05 Abbyy Software Ltd. Translating sentences between languages using language-independent semantic structures and ratings of syntactic constructions
US8433556B2 (en) * 2006-11-02 2013-04-30 University Of Southern California Semi-supervised training for statistical word alignment
US9122674B1 (en) 2006-12-15 2015-09-01 Language Weaver, Inc. Use of annotations in statistical machine translation
US8468149B1 (en) 2007-01-26 2013-06-18 Language Weaver, Inc. Multi-lingual online community
US8615389B1 (en) 2007-03-16 2013-12-24 Language Weaver, Inc. Generation and exploitation of an approximate language model
US8959011B2 (en) 2007-03-22 2015-02-17 Abbyy Infopoisk Llc Indicating and correcting errors in machine translation systems
US8831928B2 (en) 2007-04-04 2014-09-09 Language Weaver, Inc. Customizable machine translation service
US8825466B1 (en) 2007-06-08 2014-09-02 Language Weaver, Inc. Modification of annotated bilingual segment pairs in syntax-based machine translation
US8812296B2 (en) 2007-06-27 2014-08-19 Abbyy Infopoisk Llc Method and system for natural language dictionary generation
JP5100445B2 (ja) * 2008-02-28 2012-12-19 株式会社東芝 機械翻訳する装置および方法
US20100017293A1 (en) * 2008-07-17 2010-01-21 Language Weaver, Inc. System, method, and computer program for providing multilingual text advertisments
US9262409B2 (en) 2008-08-06 2016-02-16 Abbyy Infopoisk Llc Translation of a selected text fragment of a screen
JP2010044637A (ja) * 2008-08-14 2010-02-25 Just Syst Corp データ処理装置、方法、及びプログラム
US8990064B2 (en) 2009-07-28 2015-03-24 Language Weaver, Inc. Translating documents based on content
US8380486B2 (en) 2009-10-01 2013-02-19 Language Weaver, Inc. Providing machine-generated translations and corresponding trust levels
US10417646B2 (en) 2010-03-09 2019-09-17 Sdl Inc. Predicting the cost associated with translating textual content
US11003838B2 (en) 2011-04-18 2021-05-11 Sdl Inc. Systems and methods for monitoring post translation editing
US8694303B2 (en) 2011-06-15 2014-04-08 Language Weaver, Inc. Systems and methods for tuning parameters in statistical machine translation
US8886515B2 (en) 2011-10-19 2014-11-11 Language Weaver, Inc. Systems and methods for enhancing machine translation post edit review processes
US8942973B2 (en) 2012-03-09 2015-01-27 Language Weaver, Inc. Content page URL translation
US8971630B2 (en) 2012-04-27 2015-03-03 Abbyy Development Llc Fast CJK character recognition
US8989485B2 (en) 2012-04-27 2015-03-24 Abbyy Development Llc Detecting a junction in a text line of CJK characters
US10261994B2 (en) 2012-05-25 2019-04-16 Sdl Inc. Method and system for automatic management of reputation of translators
CN102693322B (zh) 2012-06-01 2014-10-22 杭州海康威视数字技术股份有限公司 支持多国语言的网页处理方法、网页加载方法及其系统
JP2014078132A (ja) * 2012-10-10 2014-05-01 Toshiba Corp 機械翻訳装置、方法およびプログラム
US9152622B2 (en) 2012-11-26 2015-10-06 Language Weaver, Inc. Personalized machine translation via online adaptation
US9213694B2 (en) 2013-10-10 2015-12-15 Language Weaver, Inc. Efficient online domain adaptation
US9779087B2 (en) * 2013-12-13 2017-10-03 Google Inc. Cross-lingual discriminative learning of sequence models with posterior regularization
RU2592395C2 (ru) 2013-12-19 2016-07-20 Общество с ограниченной ответственностью "Аби ИнфоПоиск" Разрешение семантической неоднозначности при помощи статистического анализа
RU2586577C2 (ru) 2014-01-15 2016-06-10 Общество с ограниченной ответственностью "Аби ИнфоПоиск" Фильтрация дуг в синтаксическом графе
RU2595531C2 (ru) 2014-04-21 2016-08-27 Общество С Ограниченной Ответственностью "Яндекс" Способ и система генерирования определения слова на основе множественных источников
RU2596600C2 (ru) 2014-09-02 2016-09-10 Общество с ограниченной ответственностью "Аби Девелопмент" Способы и системы обработки изображений математических выражений
US9626358B2 (en) 2014-11-26 2017-04-18 Abbyy Infopoisk Llc Creating ontologies by analyzing natural language texts
US10108610B1 (en) * 2016-09-23 2018-10-23 Amazon Technologies, Inc. Incremental and preemptive machine translation
US10108611B1 (en) 2016-09-23 2018-10-23 Amazon Technologies, Inc. Preemptive machine translation
JP2019121241A (ja) * 2018-01-09 2019-07-22 パナソニックIpマネジメント株式会社 翻訳装置、翻訳方法、及びプログラム
US20220318523A1 (en) * 2021-03-31 2022-10-06 International Business Machines Corporation Clause extraction using machine translation and natural language processing
US11811626B1 (en) * 2022-06-06 2023-11-07 International Business Machines Corporation Ticket knowledge graph enhancement

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5510981A (en) * 1993-10-28 1996-04-23 International Business Machines Corporation Language translation apparatus and method using context-based translation models
JPH0981568A (ja) * 1995-09-11 1997-03-28 Matsushita Electric Ind Co Ltd 機械翻訳用の中国語生成装置
US6161083A (en) * 1996-05-02 2000-12-12 Sony Corporation Example-based translation method and system which calculates word similarity degrees, a priori probability, and transformation probability to determine the best example for translation
US6233544B1 (en) * 1996-06-14 2001-05-15 At&T Corp Method and apparatus for language translation
US6393389B1 (en) * 1999-09-23 2002-05-21 Xerox Corporation Using ranked translation choices to obtain sequences indicating meaning of multi-token expressions
JP2004501429A (ja) * 2000-05-11 2004-01-15 ユニバーシティ・オブ・サザン・カリフォルニア 機械翻訳技法
JP3813911B2 (ja) * 2002-08-22 2006-08-23 株式会社東芝 機械翻訳システム、機械翻訳方法及び機械翻訳プログラム
JP2005100335A (ja) * 2003-09-01 2005-04-14 Advanced Telecommunication Research Institute International 機械翻訳装置、機械翻訳コンピュータプログラム及びコンピュータ

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111488742A (zh) * 2019-08-19 2020-08-04 北京京东尚科信息技术有限公司 用于翻译的方法和装置
CN111488742B (zh) * 2019-08-19 2021-06-29 北京京东尚科信息技术有限公司 用于翻译的方法和装置

Also Published As

Publication number Publication date
US7447623B2 (en) 2008-11-04
WO2003038663A2 (en) 2003-05-08
US20040254781A1 (en) 2004-12-16
WO2003038663A3 (en) 2004-06-24
CA2464932A1 (en) 2003-05-08
EP1456770A2 (en) 2004-09-15
JP2005507524A (ja) 2005-03-17
CN1578954B (zh) 2010-04-14

Similar Documents

Publication Publication Date Title
CN1578954A (zh) 机器翻译
CN1608259A (zh) 机器翻译
CN1174332C (zh) 转换表达方式的方法和装置
CN1110757C (zh) 处理两种文字对照的数据库的方法与装置
CN1155906C (zh) 数据处理方法、系统、处理程序及记录媒体
CN1101032C (zh) 相关词抽取设备和方法
CN1628298A (zh) 综合从搜索系统中使用的文档中抽取知识的自学习系统的方法
CN1672149A (zh) 词联想方法和装置
CN101079026A (zh) 文本相似度、词义相似度计算方法和系统及应用系统
CN1271545C (zh) 语言翻译系统
CN1083952A (zh) 文件写作与翻译综合系统
CN1862529A (zh) 语言分析系统及方法
CN1281191A (zh) 信息检索方法和信息检索装置
CN1495639A (zh) 文本语句比较装置
CN1465018A (zh) 机器翻译技术
CN1315020A (zh) 自由格式数据处理的方法和设备
CN1728140A (zh) 信息检索系统中基于短语的索引编制
CN1728143A (zh) 基于短语产生文献说明
CN1855103A (zh) 特定元素、字符串向量生成及相似性计算的装置、方法
CN1942877A (zh) 信息提取系统
CN1869989A (zh) 用于从非结构化描述生成结构化表示的系统和方法
CN1991819A (zh) 语言形态分析器
CN1505786A (zh) 内容转换方法和装置
CN1647069A (zh) 对话控制系统和对话控制方法
CN1266633C (zh) 语音查询中的辨音方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100414

Termination date: 20101029