说明性实施例的详细说明
I.操作环境范例
本发明的各种方面属于在从可靠源获取纠正的翻译的正常的工作流程中封装一个自适应机器翻译。然而,在详细讨论本发明之前,先讨论能实现本发明的示范实施例环境。
图1表示一个适合的计算系统环境例子100,本发明在其上实现。计算系统环境100是适合的计算环境的一个例子,而不试图建议任何限制本发明使用或功能的范围。计算环境100不能解释为具有任何对于本示例操作环境100中表示的组件的单个或组合的依赖或需求。
本发明以各种其它一般性目的或特定目的的计算系统环境或配置来操作。适合于本发明使用的著名的计算系统、环境、和/或配置的例子包括(但并非限制于此)个人计算机、服务器计算机、手持或膝上型设备、多处理器系统、基于微处理器系统、机顶盒装置、可编程顾客电子产品、网络PC、小型计算机、大型计算机、电话系统、包括任何上述系统或设备的分布式计算系统,等等。
本发明可以按一般的由计算机执行的诸如程度模块的计算机可执行指令的上下文来描述。通常,程序模块包括例行程序、程序、对象、组件、数据结构等等,它们完成特定的任务或者实现特定的抽象数据类型。本发明被设计成在分布式计算环境中实施,其中任务由通过通信网络被链接的远程处理设备完成。在分布式技术环境中,程序模块可以位于本地或远程计算机贮存媒体中,包括主存储器设备。由程序或模块完成的任务将在以下借助于例图加以描述。熟悉本领域的人员能够以处理器可执行指令来实现该描述及例图,这些指可被写在任何形式的计算机读媒体上。
参照图1,实现本发明的一个实例系统包括一个以计算机110形式表示的通用目的计算设备。计算机110的组件可以包括(但不限制于此)处理组件120、系统存储器130、和系统总线121,它把各种系统组件包括系统存储器耦合到处理组件120。系统总线121可以是包括存储器总线或存储器控制器的若干种总线结构类型中的一种外设总线、和使用各种总线结构之一的本地总线,作为例子(并非限制),这样的结构包括“工业标准结构”(ISA)总线、“微通道结构”(MCA)总线,增强型ISA(EISA)总线、“视频电子标准协会“(VESA)本地总线,和”外围组件互连”(PCI)总线也称之为Mezzanine总线。
计算机110典型地包括多种计算机可读介质。计算机可读介质能够是任何能被计算机110存取的可供利用的介质,并且包括易失的和非易失介质,可移动和不可移动介质。作为例子(并非限制)计算机可读介质可以由计算机贮存介质和通信介质组成。计算机贮存介质包括易失和非易失二种、可移动和不可移动介质按任何方法或技术实现信息的贮存,例如计算机可读指令、数据结构、程序模块或其它数据。计算机贮存介质包括(但非限制)RAM、ROM、EEPROM、闪存或其它存储技术、CD-ROM、数字通用盘(DVD)或者其它光盘贮存器、盒式磁带、磁带、磁盘存储器或者其它磁存储设备,或者能够用来保存所希望的信息并能由计算机110存取的介质。
通信介质典型地具体包括计算机可读指令、数据结构、程序模块或者其它在被调制的数据信号(例如载波或其它传输机制)中的数据并包括任何信息传递介质。术语“调制的数据信号”意指一种信号,它具有一个或者多个其特征作为对信号中信息编码的方式被设置或者改变。作为例子(并非限制)通信介质包括有线介质诸如有线网络或直接-线路连接、和无线介质诸如声频、RF、红外和其它无线介质。以上任何的组合也被包括在计算机可读介质范围之内。
系统存储器130包括易失的和/或非易失的计算机贮存介质,例如只读存储器(ROM)131和随机存取存储器(RAM)132。基本输入/输出系统133(BIOS),包含基本的例行程序,典型地存贮在ROM131中帮助在计算机110的单元之间传输信息(例如在启动期间)。RAM132典型地包含数据和/或程序模块,它们直接地可由处理组件120存取和/或不久就被操作。作为例子(并非限制),图1表示操作系统134,应用程序135,其它程序模块136,和程序数据137。
计算机110还可以包括其它可移动的/不可移动的、易失的/非易失的计算机贮存介质。仅作为例子,图1表示一个硬盘驱动器141,它对不可移动的、非易失的磁介质进行读和写;一个磁盘驱动器151,它对可移动的、非易失的磁盘152读和写;以及光盘驱动器155,它对可移动的、非易失的光盘156(例如CDROM或其它光介质)读和写。其它的可以被用于示例性操作环境中的可移动的/不可移动的、易失的/非易失的计算机贮存介质包括(但非限制)盒式磁带、闪存卡、数字通用盘、数字视频磁带、固态RAM、固态ROM等等。硬盘驱动器141通过一个不可移动的存储器接口(例如接口140)典型地被连接到系统总线121,以及磁盘驱动器151和光盘驱动器155典型地由可移动存储器接口(例如接口150)连接到系统总线121。
以上所讨论和在图1中表示的驱动器和与它们相关联的计算机贮存介质为计算机110提供贮存的计算机可读指令、数据结构、程序模块和其它数据。例如,在图1中硬盘驱动器141表示作为存储操作系统144、应用程序145、其它程序模块146、和程序数据147。注意这些组件可以和操作系统134、应用程序135、其它程序模块136、和其它程序137是相同的也可以是不同的。操作系统144、应用程序145、其它程序模块146,,和程序数据147在此给以不同的数字表示它们至少是不同的复制品。
用户可通过输入设备例如键盘162、话筒163、和一个指点设备161,如鼠标、轨迹球或触摸板来输入命令和信息到计算机110。其它的输入设备(未指出)可以包括游戏杆、游戏板、卫星圆盘天线、扫描仪等等。这些和其它的输入设备往往通过用户输入接口160连接到处理组件120,该接口160被耦合到系统总线,也可以由其它接口和总线结构例如并行端口、游戏端口、或通用串行总线(USB)连接。监示器191或其它类型的显示设备也通过一个接口例如视频接口190连接到系统总结121。除了监示器以外,计算机还可能包括其它的外部设备,例如扬声器197和打印机196,它们可能通过一个输出外围接口195连接。
计算机110在使用逻辑连接到一个或多个远程计算机(例如远程计算机180)的网络环境中被操作。该远程计算机180可以是个人计算机、手持设备、服务器、路由器、网络PC、对等设备或其它公共网络结点,并且典型地包括许多或所有上述关于计算机110所描述的单元。在图1中描述的逻辑连接包括局域网(LAN)171和广域网(WAN)173,但可能还包括其它网络,这种网络环境在办公室、企业范围计算网络、内连网和因特网中是很普遍的。
当用于LAN网络环境中时,计算机110通过网络接口或适配器170被连接到LAN171。当用于WAN网络环境中时,计算机110典型地包括一个调制解调器172或者其它用于建立通过WAN173(例如因特网)通信的装置。调制解调器172可以是内置的也可以是外置的,它通过用户输入接口160或其它适当的机制被连接到系统总线121。在网络环境中,描述为相应于计算机110或它的部分的程序模块可被贮存在远程的存储器设备中。作为例子(而并非限制),图1中表示的远程应用程序185驻留在远程计算机180中。可以理解所示的网络连接是示例并且其它在计算机之间建立通信链接的装置也可以被利用。
应注意到本发明能够在例如考虑图1所描述的计算机系统上实行。然而,本发明也能在服务器上、专用于消息处理的计算机、或者在分布式系统上实行,在其中本发明的不同部分在分布式计算系统的不同部分上实行。
图2是一个移动设备200的方框图,它是另一个本发明可以在其它适当的计算环境中实现的示例。计算系统环境200只是另一个适当的计算环境的例子,并且并不试图建议任何对本发明的使用或功能范围的限制。计算环境200既不解释为对任何所示组件的一个或组合具有任何依赖性或相关要求。
移动设备200包括微处理器202、存储器204、输入/输出(I/O)组件206、和一个通信接口208用于和远程计算机或其它移动设备的通信。在一个实施例中,组件被耦合用于通过适当的总线210相互通信。
存储器204由非易失电子存储器,如带有电池后备模块的随机存取存储器(RAM)实现,这样存储在存储器204中的信息不会在移动设备200的常规电源关机时被丢失。存储器204的一部分最好分配为可寻址的存储器用于程序执行,而存储器204的其它部分最好用于贮存,例如模拟在磁盘上的存储器。
存储器204包括操作系统212、应用程序214和对象仓库216。在操作期间,操作系统212最好从存储器204由处理器202执行。在一个较佳实施例中,操作系统212是从微软公司商业上可得到的WindowsCE商标的操作系统。操作系统212最好设计用于移动设备,而且实现数据库的特征,从而由应用程序214通过一组已揭示的应用程序设计接口和方法来加以利用。在对象仓库216中的对象由应用程序214和操作系统212维护,至少是部分地响应于对已揭示的应用程序设计接口和方法的调用。
通信接口208表示许多设备和技术,它允许移动设备200发送和接收信息。设备包括有线和无线的调制解调器、卫星接收机和广播调谐器,只是提到的少数几种。移动设备200也能直接地连接到计算机与其交换数据。此时,通信接口208可以是一个红外收发器或者一个串行或并行通信连接,所有这些都能够传输流信息。
接入/输出组件206包括多种输入设备,例如触摸敏感屏、按钮、滚轮、和话筒以及多种输出设备包括音频发生器、振动设备、和显示器。以上设备清单是作为例子而不需要全部都出现在移动设备200之上。另外,在本发明的范围之内其它的输入/输出设备也可以接连到或发现于移动设备200中。
II.自适应机器翻译服务综述
图3是原理流程图,表示在从一个可靠源获取纠正的翻译的正常流程之中的自适应机器翻译。
对于自动地通过各种机器学习技术,包括基于统计和实例技术的自动机器翻译系统的客户化的研究已经完成。以这种技术,机器翻译系统能够根据已经翻译了的材料(通常看作是双向文本或双向语言全集)来学习相应的翻译,其中包括一种(源)语言中的句子和相应的另一种语言中的翻译(目标)句子。另外,这种MT系统能够从“可比较的”全集学习附加的相应者或文本,它们并不是相互的精确的翻译,但它们都描述在二个源及目标语言中的类似的概念和事件。它们可能进而用于单一语言全集以学习在目标语言中的流利的造句。根据本发明的一种通用的观点,这些客户化技术在传统的文档管理环境之中被利用具有优势。特别地,训练自动翻译系统的数据是在系统用户产生文档的一般性过程中产生,获得相应的翻译并纠正翻译。训练数据允许用户的自动机器翻译系统系统地客户化。
参照图3,本发明的实施例属于在一个文档管理或工作流环境中自适应机器翻译系统的打包,其中用户递交源文档302给用户计算机(或者与用户关联的服务器)上的自动翻译程序进行翻译。这个动作有块330表示。源文档302和自动生成的翻译304被传送到可靠的修改源(例如,人工翻译者)用于浏览及纠正。这个行动由块332表示。
纠正后的翻译306和原始源文档302被处理以建立一个更新的集合和也许是准确的翻译对应308。这个行动由块334表示。根据一个实施例,对应308由自身客户化机器翻译系统生成,它与由用户维护的自身客户化机器翻译系统并行运行。根据一个实施例,更新的翻译对应308被放入更新的数据库(或者,如果一个统计机器翻译系统正被使用,它们被反映在统计参数的更新表中),它和纠正的、翻译的文档一起被发送回给客户。该更新吸纳到用户的自动机器翻译系统。下一次用户试图翻译类似的文字材料310,基于用以前的纠正文档返回的更新,系统自动地产生更高质量的翻译312。这个行动由块336表示。应该指出,这种训练,以及所有类似的在此描述的训练示例性地有利于后继的语言对的二个方向上的翻译(例如,西班牙语-英语和英语-西班牙语)。
必须指出很多不同类型的训练数据能够基于纠正翻译306和源文档302产生。很多不同类型的训练数据能够被利用来适应于用户的自动翻译系统。更新的翻译对应在本发明的范围内只是一个例子。任何知识源的更新都在本范围之中。任何基于统计或实例的更新训练程序也在本范围之内。特定的例子将在下面详细讨论。
当用户请求各种文档的自动翻译并且发送结果输出作为可靠的后编辑(例如,纠正和修改),用户自动翻译系统逐步地适应自身以便能翻译类似文档时更加有效。所需的昂贵的客户化被省去,而且用户能后续地享用高质量的自动翻译。用户自动翻译系统的适应性及客户化例证性地发生在“幕后”如同用户进行正常的获取高质量翻译程序一样。
根据一个实施例,自动生成翻译304包括一个自动生成置信度量度,它指示整个翻译和/或它的部分的质量。置信度量度是例证性地基于用户带有输出的反映统计。这个置信度量度的生成和使用在美国专利申请号10/309,950中描述,标题为“用于机器翻译的机器学习置信度量度的系统和方法”,发表于2002年12月4日,它被指定给了与本申请同样的实体。并且在此对它全部结合引用。
图4是一个流程图表示置信度量度如何结合到所述自客户化机器翻译系统。根据图402,用户获取源文档的自动翻译。文档包括指明的置信度量度信息,它属于文档的整个的和/或一个或多个独立的部分。根据块404,用户选择具有低置信度等级的后编辑的一个或多个部分。这些部分被传送到一个可靠的修改源(例如,人工翻译者)以便纠正。纠正了的部分与原始的源文档一起处理以建立一个更新的集合和看来正确的翻译对应物。根据一个实施例,处理由自客户化机器翻译系统实现,它与用户维持的自客户化机器翻译系统并行运行。
根据块406,更新了的翻译对应物和纠正的翻译部分(或者纠正的翻译的文档的全部)一起被发送回给用户。根据块408,更新被吸纳到用户的自动机器翻译系统。下一次用户试图翻译类似文字材料时,他们的自动机器翻译系统将产生一个更高质量的翻译。
III.特定应用
图5A和5B是以上描述的适应性机器翻译系统的实施例的特定应用的方框图。特定应用仅仅是例子而不打算建议任何对本发明使用或功能性范围的限制。特定应用并不解释为具有对应于所示组件的任何一个或组合的任何依赖或要求。
图5A是计算环境500的方框图,用户502操作计算设备504允许通过计算机网络(例如,因特网)与可靠的修改源506交互。源506是在计算设备上的实现的示例性地翻译服务并通过网络505提供给计算设备504和它的用户502。
计算设备504以及在其上实现修改源506的计算设备能够是各种已知计算设备中的任何种,包括但不局限于在图1和图2中相应描述的那些中的任何种类。在计算设备504和修改源506之间通过网络505的通信能够利用各种已知的网络通信方法中的任何一种完成,包括但不局限于在图1和图2中相应描述的那些中的任何种类。根据一个实施例,计算设备504是一个客户无线移动设备,配置成通过无线网络与服务器实现的修改源506通信。根据另一个实施例,计算设备504是客户个人计算机,配置成通过因特网与服务器实现的修改源506通信。这些只是在本发明范围内的很多特定实施例中的二个。
计算设备504包括自动翻译系统508。用户502示例性地递交一个文本样本给系统508用以产生相应的自动翻译。假定用户502并不满意由翻译系统508所生成的翻译的一个或多个部分(例如,用户不满意所指出的低置信度量度),那么该自动翻译与源文档的复制一起被递交给修改源506。自动翻译在源506处被纠正。根据一个实施例,人工翻译器纠正该自动翻译。根据另一个实施例,可靠的自动系统完成该纠正。经纠正的翻译被返回给计算设备504以转递给用户502。
训练发生器512用于处理自动翻译、纠正的翻译、和/或源文档以生成训练数据的集合,它被用于适应自动翻译系统408。训练发生器512是一个存储在修改源506上的组件,或者存储在计算设备504上的组件,或者存储在分离的但可存取的独立位置中(例如,存储在独立的可存取的服务器之中)。当训练生成器512用修改源506存储时,生成的训练信息示例性地和相关联的纠正翻译一起被传输给自动翻译系统508。当训练发生器512以计算设备504存储时,那么信息被直接被实现进入系统508。带有修改源506的存储训练发生器512降低了强加于计算设备504上的存储和处理的要求。而且,这种配置允许训练发生器512从集中化的位置来管理和操作。
根据一个实施例,为方便自动翻译系统508的自适应,训练发生器512驻留于可靠的修改源506和计算设备508二者之上。一对训练发生器512示例性地相同或相当类似。一对训练发生器512示例性地关联于自客户化机器翻译系统(这样的系统将在相关的图6中详细描述)。在用修改源506完成后编辑之后,所生成的纠正的翻译与原始的源文本一起示例性地由在修改源506上实行的自客户化机器翻译系统进行“训练”阶段处理。在训练阶段,正确的翻译对应物被学习。对应物被放入一个更新的数据库之中(或者,如果使用统计系统,它们反映在一个统计参数的更新表之中),它被发送到在计算设备504上实现的机器的版本中。然后,该更新被自动地吸收进用户计算机上的自定义系统的版本(或者,如下文所述,吸收进保留在服务器上的版本)。下一次当用户要尝试翻译类似文本材料时,基于随同先前纠正过的文档而返回的更新,他/她的翻译系统自动产生高质量的翻译。
根据一个实施例,可靠的修改源506关联于在网络505上操作的服务器。训练发生器512维持在同样的服务上并操作。对用户502提供的关联的修改源506的翻译和训练信息是示例性地(虽然并不必须)基于付费地提供(例如,基于按时或预约付费)。
图5B是计算环境520的方框图。在图5B中的单元与图5A中的单元相同或类似,并利用同样的或类似的引用号码来标记。在图5B中,一个或多个用户502与可连接到服务器524的一个或多个计算设备522相交互。示例性地与用户502相关联的自动翻译系统508在服务器524上被存储与维护。服务器524可连接到网络505。用户502操作计算设备522使得能够与可靠的修改源506交互,该源506也可连接到网络505。修改源506是示例性地通过网络505经计算设备504对用户提供翻译服务。
系统520按系统500同样的方式操作,然而自动翻译系统508能够潜在地由多个计算设备所访问,以为一个或多个独立的用户502完成自动翻译。相应地,翻译系统508能够以由多个用户递交的文档相关联的训练信息来自适应和更新。翻译系统508的翻译准确性将进化到适应多个用户502。当多个用户具有共同的连接可能导致他们在单一主题的领域或范围中生成和翻译文档时,这将是特别合乎需要(例如,他们为同样的公司在同样的行业中工作,等等)。IV.采用自动客户化的机器翻译系统的特定应用
至止,自动机器翻译系统已被一般性地描述。系统508的精确的详细论述对于本发明并不是关键性的。进一步,关于翻译系统508如何吸纳所描述的训练数据的确切的方案并没有被提供。本发明并不局限于任何一种特定类型的训练数据,也不局限于任何一种吸纳数据的方法。然而,特定的自动翻译系统和相应的用于吸纳训练数据的方案将相应于图6来描述。
已经知道,在某些自动翻译系统中可采用自动翻译技术用于定制系统来提供先前未知的词汇的翻译(即,提供特殊领域的翻译)。本发明的实施例可以很方便地应用到此类翻译系统的环境中。这种系统在题为“Scaleable machinetranslation system”,于2001年7月5日提交的美国专利申请09/899,755中有描述,该申请已转让给本发明的申请人,其全部内容通过引用包括于此。所引用的参考文献中的系统的某些部分参照图6加以描述。
在讨论与图6相关联的自动翻译系统之前,简要地讨论逻辑形式可能是很有帮助的。完整的和详细的逻辑形式以及用于生成它们的系统和方法的讨论能够在Heidorn等人的美国专利号5,966,686中找到,提交于1999年10月12日,标题是“从语法树计算语义逻辑形式的方法和系统”。然而,简而言之,逻辑形式由对输入文本实行形态学上的和语法的分析而生成,以产生传统的以文法关系来增强的词法结构分析。语法分析经历进一步的处理,,以导出逻辑形式,它是数据的结构,描述在文字输入中内容的词之间被标签的从属性。逻辑形式能够被规范成一定的语法替换,(例,主动的/被动的)和解决距离句子内部的指代和长距离的从属性。逻辑形式可以被表示为图表,它帮助直观地理解逻辑形式中的单元。然而,正如本领域熟悉的技术人员所理解的,当存储在计算机可读取的介质中时,逻辑形式可能并不容易像表示为图表那样被理解,而宁愿表示为一从属树。
逻辑关系由二个被定向关系类型结合在一起的词组成,例如:
LogicalSubject,Logical Object,
Indirect Object;
Logical Nominative,Logical Complement,LogicalAgent;
CoAgent,Beneficiary;
Modifier,Attribute,SentenceModifier;
Prepositional Relationship;
Synonym,Equivalence,Apposition;
Hypernym,Classifier,SubClass;
Means,Purpose;
Operator,Modal,Aspect,DegreeModifier,Intensifier;
Focus,Topic;
Duration,Time;
Location,Property,Material,Manner,Measure,Color,
Size;
Characteristic,Part;
Coordinate;
User,Possessor;
Source,Goal,Cause,Result;and
Domain.
逻辑形式是一种连接的逻辑关系的数据结构,表示单个文字输入,例如句子或它的部分。逻辑形式最小地由一个逻辑关系组成并且刻画了结构上的关系(例如,语法和语义关系),特别是在输入字符串中重要的词之间的增广关系和/或附属关系。
从语法分析而建立的逻辑格式的特定的代码是跨越各种源和目的语言(机器翻译系统在其上操作)被示例性地共享。这种共享的构造极大地简化从不同的语言对准逻辑形式段的任务,这是因为二种语言在表面上明显不同的结构往往拼合成类似的或同样的逻辑形式的表示。
注意到这个背景,图6是一个相应于本发明的一个方面的机器翻译系统600的一个结构。系统600是一个数据-驱动机器翻译系统,它组合了基于规则和带有基于实例转换的统计技术。系统能学习以数据直接翻译的词汇和短语的知识。系统600的训练模式的中心特点是一个自动逻辑形式的对准过程,它基于实例从句子对准的双语全集建立系统的翻译。
机器翻译系统600被配置成自动地学习如何从双语的相应文本进行翻译。系统能够用于对特定的文本通过处理它的句子和它们相应的人工翻译来客户化,而得到类似于该文本的材料的更高质量的后继翻译。机器翻译系统600还被配置成方便地提供内建的自信度得分,它指出整个和/或其部分的翻译质量。
系统600包括解析组件604和606、统计性字关联学习组件608、逻辑形式对准组件610、基于词汇知识的构建组件612、双语词典614、词典合并组件616、转换映射数据库618和更新的双语词典620。在训练和翻译运行的期间,系统600利用分析组件622、匹配组件624、转换组件626和/或生成组件628。根据一个实施例、解析组件604和分析组件622是同样的组件,或者至少是相互相同的。
双语全集被用来训练系统。该双语全集包括对准好的翻译的句子(例,在源或目标语言如英语中的句子,按1对1与它们的在另一个源或目标语言如西班牙语中人工建立的翻译相对应)。应指出在双语全集中该翻译的“句子”并不局限于实际的完整的句子而可以替代为句子段的集合。训练期间,句子从对准好的双语全集提供给系统600作为源句子630(要被翻译的句子),和作为目标句子632(该源句子的翻译)。解析组件604和606从对准了的双语全集解析句子以产生源的逻辑形式634和目标的逻辑形式636。
在解析期间,句子中的词被转换成规范词的形式(词目)并能提供给统计的词关联学习组件608。单个词或多个词的关联都由学习组件608迭代地假设和打分直到获得每一个的可靠集为止。统计词关联学习组件608输出学习的单词翻译对638和多词对640。
多词对640被提供给词典合并组件616,它被用来加入附加的条目到双语词典614以构成更新的双语词典620。新的条目表示了多词对640。
单词对638与源逻辑形式634和目标逻辑形式636一起被提供给逻辑形式对准组件610。简而言之,组件610首先分别地在源和目标的逻辑形式634和636结点之间建立试验性的对应关系。这是利用从双语词汇(例,双语词典)614中的翻译对完成,614能够用从统计词相关学习组件608来的单词或多词翻译对638、640扩充。在建立了可能的对应关系后,对准组件610根据词汇和结构的考虑来对准逻辑形式结点并建立词和/或逻辑形式转换映射642。
基本上,对准组件610利用双语词典信息614和单词,多词对638、640提取逻辑形式之间的链接。转换映射可选择地基于频度来过滤,它们在源和目标逻辑形式634和636中以此频度被发现并且提供给词汇知识基的构建组件612。
虽然过滤是任选项,在一个例子中,如果转换映射并没有在训练数据中看到至少二次,它就不被用来构建转换映射数据库618,虽然任何其它希望的频度也可以同样用来作为过滤。还应指出其它的过滤技术也同样可以被使用,而不只是用出现的频度,转换映射可以基于它们是否由输入句子的完整短语来构成和基于建立转换映射的逻辑形式是否是完全地对准好。
组件612构建转换映射数据库618,它包含在一种语言中词和/或逻辑形式对第二种语言中的词和/或逻辑形式的基础性链接。以所建立的转换映射数据库618,系统600现在配置用于运行时间的翻译。在翻译运行时间期间,将要被翻译的源句子650提供给分析组件622。分析组件622接收源句子650并且基于源句子的输入建立源逻辑形式652。
源逻辑形式652被提供给匹配组件624。匹配组件624试图把源逻辑形式652与转换映射数据库618中的逻辑形式匹配以获取链接的逻辑形式654。多个转换映射可能匹配源逻辑形式652的一部分。匹配组件624在数据库618中搜索匹配转换映射的最佳集合,它具有匹配的词条、语言元件和其它特征信息。最佳匹配集合是基于预定的量度来发现。例如,具有较大的(更为特定的)逻辑形式的转换映射可能示例性地比具有较小的(更为一般的)逻辑形式的转换映射更为有利。在具有同样大小的逻辑形式的映射之中,匹配组件624可能示例性地要求更高频度的映射。映射还可能匹配源逻辑形式652的覆盖部分,以表示她们并不以任何方式相互矛盾。一个映射集合如果它们比可替换集合能覆盖更多的输入语句则总体来说可能示例性地更受欢迎。
在匹配转换映射被找到之后,匹配组件624建立源逻辑形式652的结点对相应的从转换映射接收到的目标词或逻辑形式段的复制品的链接,以生成链接的逻辑形式654。对多词映射的链接由相应段的根结点链接,然后链接一个星号到另一个参与多词映射的源结点。在相应的这种映射的独立源和目标结点之间的子链接也可能示例性地在转换期间被建立供使用。转换组件626从匹配组件624接收链接的逻辑形式654并建立目标逻辑形式656,它将构建目标翻译的基。这是由实行链接的逻辑形式654的自顶向下遍历而完成的,在其中上由链接所指向的目标逻辑形式段在源逻辑形式6520的结点被组合在一起。当把目标逻辑形式段组合在一起用于可能复杂的多词映射时,由匹配组件624在独立结点之间建立的子链接集合被用来确定用于修改的纠正附加点,等等。如果需要则默认的附加点被利用。
在没有可使用的转换匹配被找到的情况下,源逻辑形式652中的结点和它们的关系简单地被复制到目标逻辑形式656之中。默认的单词翻译仍然对这些结点在转换映射数据库618中被发现并插入到目标逻辑结构656之中。然而,如果没有任何发现,翻译可以示例性地从更新的双语词典620中获得,该词典在对准期间被使用。
生成组件628是示例性地基于规则,应用独立性生成组件从目标逻辑形式656映射到目标字符串(或者输出目标句子)658。生成组件628可能示例性地不具有关于输入逻辑形式的源语言的信息,并且专门地用由转换组件626传递给它的信息工作。生成组件628也示例性地使用这个信息与单语(例,对目标语言)词典相关联以产生目标句子658。一个通用的生成组件628已足以用于每种语言。
这样可以看到系统600从各种语言解析信息为共享的、公共的逻辑形式,以使逻辑形式能够在不同的语言之中被匹配。系统还能够在构建转换映射数据库以处理带噪声数据输入中利用简单的过滤技术。因此,系统600能够使用大量句子对来进行自动训练。
把注意力转回到在图3、4、5A和5B中描述的适应性自动翻译系统中来,被描述的系统600能够示例性地作为用户的自适应自动翻译系统来实现(即,翻译系统508)。根据一个实施例,至少是由系统600产生的翻译的一部分被示例性地发送到可靠的修改源(即如,源506)用于纠正(即,用户选择带有低置信度量度的各部分用于修改)。训练信息基于作出的纠正而生成(训练信息由训练发生器512生成)。系统600接收和处理训练数据。根据一个实施例,系统600处理相应于作出纠正的双语全集。翻译系统600的用户对于类似的文本将后续地获得更高质量的翻译。
根据一个实施例,为了有利于用户的自动翻译系统的自适应,系统600驻留在可靠的修改源和用户的计算设备(或者相关的服务器)二者之中。系统600的一对示例性地相互并行运行。在修改源的后编辑被完成之后,所生成的纠正的翻译和原始的源文本一起示例性地由在修改源上实行的系统600的版本的“训练”阶段进行处理。在训练阶段期间,纠正的翻译对应物被学习。对应物然后放入更新的数据库,它被发送到在用户计算设备(或关联的服务器)上实行的系统600的版本之中。该更新能够带有纠正的翻译或者独立地被发送。更新自动地被吸纳到用户的系统600的版本中。下一次用户试图翻译类似的文字材料时,用户的系统600基于带有原先纠正的文档的被返回的更新自动地产生更高质量翻译。
基于训练信息的系统600的更新能够以各种方式的任何一种完成,并且没有特别的方式对于本发明是关键的。提供给系统600的训练数据可以是以适用于完成自适应的各种不同的形式。正如所述,在一个实施例中,训练数据是一个双语全集(即,在图6中的句子对630和632)。根据另一个实施例,训练生成器(即,在图5A和5B中的生成器)为系统600生成和提供带有对解析器604和/或解析器606的更新,它基于已作出的纠正(即,更新命令,在以后XY应被处理为X,等等)。根据另一个实施例,训练生成器生成一个基于由翻译系统600维护的对单个词对所作的改变的更新。根据另一个实施例,训练生成一个基于所作的纠正的转换映射数据库的更新。在另一个实施例中,训练生成器直接地或间接地基于已作出的纠正重构转换映射数据库。任何知识源的更新都在本发明的范围之内。
MindNet是一个通用术语用于行业中描述一种结构,例如与翻译系统600相关联的逻辑形式的语言结构数据库(即,转换映射数据库618)。术语MindNet是由雷德默华盛顿的微软公司造出的。根据本发明的一个实施例,基于依据可靠的修改源所作的纠正利用训练信息以适应系统600涉及了MindNet的操作(即,更新)。更新的过程可以在用户系统上(或与该用户相关联的服务器上)发生也可以与修改源相关联的远程的系统上发生。
图7是一个流程图说明本发明的一个实施例,其中MindNet被更新。根据块702,用户的MindNet和翻译及原始文本一起被发送(即,从客户机器)到可靠的修改源(即,在服务器上实行的)。在对翻译作了必要的纠正之后(块704),MindNet被重构以反映该纠正(块706)。然后,重构的Mindnet和纠正的翻译材料一起被发送给用户(即,返回给客户机器)(块708)。根据块710,重构的Mindnet结合到用户的自动翻译系统之中。更新的Mindnet被用于后续的翻译。应该指出所述用户翻译系统的远程更新能够以与Mindnet不同的数据结构相关联而完成。
图8是一个流程图表示另一个实施例,其中Mindnet的更新没有脱离用户的机器(或者没有脱离用户关联的服务器)。根据块802,可靠的修改源从用户接收翻译材料和相应的原始文本(块802)。必要的纠正被进行(块802)并且相应的Mindnet的附录也被遵守(块804)。根据块806带着纠正的翻译客户接收被装载和遵守的附录到它们的Mindnet中去(块808)。根据由块810表示的实施例。用户的Mindnet没有被更新直到预定数量附录被收集到为止。应指出,所述用户的翻译系统的本地更新能够以与Mindnet不同的数据结构相关联而实现。
根据一个实施例,多个附录被串在一起或被收集在服务器上,也就是,在其中作出可靠纠正的服务器。当预定数量的附录被收集到时,用户发送他/她的Mindnet给服务器以被重构和返回。其它更新用户Mindnet的方案都在本发明的范围之内。
根据本发明的另一个方面,所述适应性机器翻译处理能够在用户和可靠修改源是同一个的那种系统中实现。图3的处理流程是与本实施例相容。换句话说,图3流程覆盖本发明的实施例,其中自适应机器翻译系统被包装在一个文档管理或工作流环境之中,这里示例性的可靠修改源的用户至少递交源文档的一个部分,从而在他或她自身的计算机上(或者在与用户关联的服务器上)进行翻译。这样的实施例将参照图3进行描述。
源文档302的至少一个部分的递交由块330表示。用户是与源文档302相关的语言的示例性的可靠翻译人员。源文档302信息,以及相应的自动生成的翻译304,被展现给用户/纠正器以便浏览及纠正。这个动作由块332表示。
纠正的翻译306和原始的源文档302被处理以建立一个更新的和认为是准确翻译的对应物308。这个动作由块334表示。根据一个实施例,更新的翻译对应物308被安置在更新数据库之中(或者,如果使用统计机器翻译系统,它将被反映在统计参数的更新表之中)。更新被吸纳到用户的自动机器翻译系统之中。下一次用户试图翻译类似的文字性材料310时,系统自动产生一个基于更新的更高质量的翻译312,这个更新是基于先前纠正的文档而产生的。这个动作由块336表示。应该指出训练有益于后续的语言对的二个方向上的翻译(也就是西班牙语-到-英语-到-西班牙语)。
应该强调很多不同类型的训练数据能够基于纠正翻译306和源文档302生成。很多不同类型的训练数据能够被用来修改用户的自动翻译系统。更新的翻译对应物只是本发明范围内的一个例子。任何知识源的更新是在此范围之内。任何统计的或基于范例的训练器也是在此范围之内。特定的例子相对于其它实施例在以上被描述。
根据本发明的另一方面,所述自适应机器翻译处理能被用来关联于由作为可靠翻译源的用户操作的专门的翻译软件。对于人工翻译者(即,专业翻译人员、业余翻译人员、等等)都知道设法采用专门的翻译软件以减少所要求的翻译工作量。对于人工翻译人员通常都采用配备有必要的知识的专门的软件以准确地不用软件翻译。软件被用来简单地减少为翻译指定文档所需的击键次数。
某些专用翻译软件的实现被配置成把将被翻译的句子(或者句子组)(即,从被翻译文档中取出的句子或句子组)与先前翻译了的句子(或句子组)的数据库相比较。如果发现匹配,那么匹配的翻译能够被自动地找回。在这种情况下,用户将节省某些手工翻译的负担。
对于目标句子没有有效的精确匹配的场合下,某些专用翻译软件的实现被配置成检索一个“模糊匹配”,它是一个类似的但不相同的句子。用户能够拒绝该模糊匹配并从大意上(scratch)翻译句子,或者修改模糊匹配成为正确的形式。在多数情况下,修改模糊匹配比打字翻译句子有较少的工作(即,较少击键)。
某些专用翻译软件的实现被配置成与自动翻译系统相合作,以提供对特定的要翻译的句子的自动机器翻译,例如(但不局限于)不存在精确的或模糊翻译的源文本句子。用户可以拒绝机器翻译并从大意上翻译句子,或者能够修改机器翻译成为正确的形式。在多数情况下,修改机器翻译比打字翻译有较少的工作(即,较少击键)。
根据本发明的一个方面,事实上所述专用翻译软件的用户是一个可靠的翻译源。相应地,当用户纠正模糊或机器翻译时,相应的纠正信息能够被用来训练或更新与该软件关联的机器翻译系统。以这种方式,翻译系统的效率和准确性将被改进用于后续的翻译。机器翻译系统的训练和更新能够以类似于在此或其它处描述的任何方法实现。
图9是一个包括专用翻译软件的本发明实施例的应用的方框图。所示的应用仅仅是一个例子,并不打算对本发明的使用或功能性给出任何限制。本特定的应用并不被解释为具有相关于所示组件之一或组合中的任何一个的依赖或要求。
参照图9,用户/纠正器902与具有专用翻译系统910(即专用翻译软件)的计算设备交互,一个自动翻译系统912和一个训练生成器912(即上述的同样或类似的训练生成器512)在其上实现。计算设备904能够是各种已知计算设备中的任何一种,包括但不局限于在图1和图2中相关描述的那些中的任何一个。根据一个实施例,计算设备904是一个个人计算机。
用户902是一个翻译人员(即专业的或业余的翻译人员),它依赖于系统910消除关联于翻译源文档的某些工作。专用翻译系统910是一个配置成协助用户902进行源文档翻译的专用翻译系统。用户902示例性地至少递交源文档的一部分给系统910以协助生成相应的翻译。自动翻译系统912被配置来提供一个自动导出的所提供文本的机器翻译。专用翻译系统910被配置成从翻译系统912借助分析寻查和接收源文档文本的自动翻译(即,当系统910不可能产生一个精确的或模糊的翻译匹配的情况下,系统910依赖于系统912)。
应该指出任何与专用翻译软件910相关联的先前翻译了的句子的数据库能够基于由系统912产生的自动翻译而被更新(即,该自动翻译成为潜在地精确或模糊匹配)。还应指出机器翻译能够提供“按需要”工作(即,按用户的请求)。换而言之,机器翻译能够在预处理步骤期间被生成并且和其它先前翻译了的句子一起存储(即,与其它潜在的精确的或模糊匹配一起存储)。先前翻译句子的数据库可能在预处理步骤期间与没有精确的或模糊匹配的句子一起更新。因此匹配的翻译能够“按需要”或提前提供(并且然后与其它先前翻译的句子一起存储在数据库中)。
假定用户902不满意由翻译系统912生成的翻译的一个或多个部分(即,用户不满意所指出的预信度量度),那么该自动翻译被示例性地展示给用户902以纠正(即,用户902假设是一个可靠的修改源)。纠正了的翻译922示例性地从纠正过程中得到结果。训练生成器914被用来处理自动翻译、该纠正的翻译、和/或源文档以生成训练数据集合,它能被用来修改自动翻译系统912。训练生成器914是一个存储在计算设备904中的组件,或者在分开的但可以访问的独立的计算位置中(即,存储在独立的和可访问的服务器上)。当训练生成器914被存储在分开的计算位置中时,生成的训练信息被示例性地传输回到自动翻译系统912。当训练生成器914是存储在计算设备904中时,那么信息被直接实现进入系统912。以计算设备904存储训练发生器914减少了存储量和处理的要求。在自动翻译系统912和训练发生器914之间的训练关系示例性地与前述对应于自动翻译系统508和训练发生器512的任何实施例相类似。
根据一个实施例,不止一个用户902能够与计算组件904及专用翻译系统910交互以共同地产生更高质量的翻译。根据另一个实施例,用户902能够直接(如所示)或通过网络访问计算设备904。根据另一个实施例,由生成器914生成的训练或更新材料(附带地用于更新系统912)也能够通过计算机网络传输以更新至少一个附带的自动机器翻译系统。例如,训练或更新材料能够被直接传输给单个附加的自动机器翻译系统去吸纳。换言之,然而,该材料能够被传输给中央服务器并后续地发布给多个与大的组织机构关联(即,公司)的机器翻译系统去吸纳。
虽然本发明已参照特定的实施例加以描述,本领域熟悉的技术人员将认识到形式和细节可以作出改变而没有脱离本发明的精神和范围。