翻译系统的制作方法

文档序号:2821101阅读:174来源:国知局
专利名称:翻译系统的制作方法
技术领域
本发明涉及电子通信,并且尤其涉及具有语言翻译的电子通信。
背景技术
对实时语言翻译的需求变得越来越重要。随着国际交互更加普遍,人们可能会遇到语言障碍。特别地是,许多人们可能会在经由诸如电话之类的电子装置的言语通信期间遭受语言障碍。语言障碍可能会出现在许多情况下,诸如同外国公司的贸易或谈判,在外国的多国军事行动中的部队合作,或同外国公民关于日常生活的会话。
存在可以把口头语言转录为书面语并且反之亦然的计算机程序,还存在可以把一种语言翻译为另一种的计算机程序。然而这些程序容易错误。特别地是,所述程序容易无法传达所想要的意思。所述故障可以是由于以下几种原因,诸如不能认出同音字,具有多个意思的词,或术语的使用。

发明内容
一般说来,本发明提供了用于把消息从一种语言翻译为另一种的技术。在诸如通过电话通信的电子语音通信中,典型地以说词汇串的形式接收消息。所述消息由翻译系统接收并且作为音频流向翻译服务器发送。所述服务器可以包括资源以用于认出在所述音频流中的词、短语或分句,把所述词、短语或从句翻译为第二种语言,并且以音频形式产生所翻译的消息。
会话的双方可以利用服务器充当解释器,使用本发明来相互谈话。然而在翻译消息的过程中,所述服务器可能会遇到难于翻译的消息的方面。例如,所述服务器可以识别在消息中的一个或多个歧义。本发明提供了这样的技术,借此所述服务器可以询问会话一方关于某一特征的问题,诸如识别歧义以便得知所述一方想要传达的意思。对所述询问的响应可以用于进行更准确的翻译。服务器可以提供使翻译更准确的询问度。另外,所述服务器可以在存储器中存储所识别的歧义和对询问的响应,并且如果稍后应该识别所述歧义那么可以查阅存储器。
可以定制所述翻译系统。例如所述系统的用户可以选择语言,将要接收用所述语言的消息。有时,所述服务器可以包括翻译引擎及其它翻译资源的选择,并且所述用户可以选择要用的资源。所述用户还可以指定“词典序列”,例如可以改进翻译效率的词典层次。
本发明可以作为翻译服务管理系统来实现,其中所述服务器可以把用各种语言的消息翻译为其它语言。一个或多个数据库服务器可以存储诸如翻译引擎文件之类的翻译资源的集合。翻译引擎文件可以包括诸如词汇和语法规则以及用于执行翻译的程序和工具之类的数据。数据库服务器还可以存储诸如语音识别器或语言合成器之类的驱动器,或用户可以将其包括在词典序列内的专门词典分类之类的资源。
在一个实施例中,本发明给出一种方法,包括从用户接收用第一种语言的消息并把所述消息翻译为第二种语言。所述方法还包括询问所述用户关于消息的特征并且至少部分根据所述询问把所述消息翻译为第二种语言。可以询问所述用户关于在所接收消息和所翻译消息至少一个中所识别的歧义。当接收来自所述用户对询问的响应时,所述方法还可以包括使用所述响应来把所述消息翻译成第二种语言。
在另一实施例中,本发明提出一种系统,系统包括把用第一种语言的消息翻译为第二种语言的翻译引擎。所述系统还包括控制器,控制器用于在把用第一种语言的消息翻译成第二种语言时,当所述翻译引擎识别歧义时询问用户。所述系统还可以包括用于处理谈话的语音识别器、语音标识器和语言合成器。
在进一步的实施例中,本发明提出一种方法,包括接收用不同语言的音频消息,把所述消息翻译为对应语言,并且存储包括所述消息的副本。
在另外的实施例中,本发明提出一种方法,包括接收由用户指定的第一种语言和第二种语言,并且选择作为一种或这两种语言的函数的翻译引擎文件。所述方法还可以包括询问所述用户以及选择作为所述用户对所述询问响应的函数的翻译引擎文件。
在另一实施例中,本发明给出一种系统,系统包括存储多个翻译引擎文件的数据库和从所述多个翻译引擎文件中选择翻译引擎文件的控制器。所述系统可以接收由用户指定的语言并且选择作为所指定语言的函数的翻译引擎文件。除翻译引擎文件之外,所述数据库可以存储其它翻译资源。
在附加实施例中,本发明提出一种方法,方法包括把用第一种语言的第一消息的第一部分翻译为第二种语言,识别在所述第一消息中的歧义,询问用户关于所述歧义,接收对所述询问的响应,把所述第一消息的第二部分翻译为作为所述响应的函数的第二种语言,并且把用第一种语言的第二消息翻译为作为所述响应的函数的第二种语言。所述方法还可以包括识别在所述第二消息中的第二歧义并且搜索存储器寻找所述第二歧义的先前标识。
在进一步的实施例中,本发明提出一种方法,方法包括接收来自用户的词典序列。所述方法还可以包括把接收的用第一种语言的消息分析成子集,诸如词、短语和从句,并且搜索在序列中的词典寻找所述子集。
在进一步的实施例中,本发明提出暂停触发翻译的方法。所述方法包括接收用第一种语言的音频消息,认出所述音频消息,把所认出的音频消息存储在存储器中并且检测在所述音频消息中的暂停。当检测到暂停时,所述方法准备把所认出音频消息翻译成第二种语言。
本发明可以提供几个优点。在一些实施例中,所述翻译系统可以为几个会话提供翻译服务,其中可以说几种语言。所述系统可以提供大量翻译服务。在一些实施例中,所述系统和用户可以合作以便制作准确的翻译消息。所述系统还可以允许用户通过例如控制询问度或选择词典序列来定制所述系统以便满足用户的特定需要。
在下面的附图和说明书中阐述了本发明的一个或多个实施例的细节。根据说明书和附图以及权利要求,本发明的其它特征、目的和优点将变得显而易见。


图1是翻译系统的框图。
图2是进一步详细的图1的翻译系统的框图。
图3是举例说明示例性的词典序列的词典层次。
图4是询问屏幕的例子。
图5是提供翻译系统的服务器端操作的例子的流程图。
图6是提供由翻译系统的服务器端选择翻译资源的例子的流程图。
图7是基于网络的翻译服务管理系统的框图。
具体实施例方式
图1是举例说明可以由会话方使用的翻译系统10的框图。翻译系统10包括客户端12和服务器端14,其彼此通过网络16分开。网络16可以是诸如因特网、移动电话网络、局域网或无线网络之类的几个网络中的任何一个。系统10接收以消息形式的输入,所述消息用语言组成。在如下所述的实施例中,将要把所述消息描述为作为用第一种语言说的消息接收,但本发明并不局限于是口头消息。翻译系统10可以经由声音检测传感器来接收口头消息。
翻译系统10把所述消息从第一种语言翻译为第二种语言。可以把第二种语言的消息发送给会话的一方或多方。翻译系统10可以经由声音产生传感器以口头语言形式产生第二种语言的消息。在本发明的一个应用中,因此会话方可以用他们各自的语言互相谈话,由翻译系统10执行翻译并把所翻译的消息转播为音频流。
在图1中,声音检测传感器以在电话20的麦克风18实施,而声音产生传感器以电话20的扬声器22实施。电话20与网络16的客户端12耦合。电话20还可以经由诸如公众交换电话网络(PSTN)之类的通信网络24与另一电话26耦合,所述电话26可以包括诸如麦克风之类的声音检测传感器28和诸如扬声器之类的声音产生传感器30。还可以经由麦克风18或麦克风28或其两者来接收口头消息。通信网络24可以是传达口头消息的任何通信网络。
在本发明的典型应用中,说第一种语言的甲方使用电话20而说第二种语言的乙方使用电话26。本发明不局限于电话,而且可以使用诸如扬声器电话之类的任何声音检测和声音产生传感器。另外,系统10可以包括许多电话或传感器。
翻译服务器32可以使在用其各自语言方之间的通信便于进行。特别地是,服务器32可以认出用第一种语言的消息并把所认出的消息翻译为第二种语言。所述第二种语言可以是书面或口头语言,或二者的结合。在本发明的示例性实施例中,服务器32使用书面和口头语言来改进在语言之间解释的准确性。特别地是,服务器32可以帮助一方或多方传达其想要的消息意思,诸如经由本地工作站34来询问一方。以下将要更详细地描述询问。另外,工作站34或服务器32可以记录所述会话并且可以用打印机36打印所述会话的副本。
电话20可以直接与网络16耦合,或者电话20可以经由工作站34间接地与网络16耦合。在本发明的某些实施例中,电话20和26可以直接或间接地与网络16耦合。换句话说,网络16可以充当与通信网络24相同的作用,不仅向服务器32提供通信路径,而且还向会话方提供所述通信路径以便其彼此交谈。
图2是系统10的功能框图。把图2的一些组件描写为逻辑上相互独立,即便可以在单个装置中实现所述成分。在随后的描述中,甲方或系统10的“用户”与客户端12相交互。所述用户例如与示例为电话20的扬声器22和麦克风18的声音检测传感器和声音产生传感器相交互,。所述用户依照正常方式即说和听的方式与所述声音检测传感器和所述声音产生传感器相交互。电话20可以经由通信网络24(在图2中未示出)与诸如电话26(在图2中未示出)之类的另一装置共享通信链路所述用户还可以通过本地工作站34与系统10相交互。可以把本地工作站34具体化为诸如个人计算机之类的桌上型电脑装置或诸如个人数字助理(PDA)之类的台式装置。在某些实施例中,可以把本地工作站34和电话20包括在诸如移动电话之类的单个装置里。
所述用户还可以使用任何多个输入/输出设备与本地工作站34相交互。输入/输出设备可以包括显示器40、键盘42或鼠标44。本发明不局限于在图2中示出的特定的输入/输出设备,而是可以包括诸如触摸屏、触针、触摸板或音频输入/输出设备之类的输入/输出设备。
本地工作站34可以包括中央处理器(CPU)45。CPU 45可以执行诸如在本地存储器46中的浏览器之类的软件或从翻译服务器32下载的软件。可以把下载的软件及其它数据存储在本地存储器46中。工作站34可以经由发送器/接收器47建立与网络16和服务器32的连接。
在服务器端14上,服务器32可以经由发送器/接收器48与网络16连接。发送器/接收器48可以是例如电话应用程序接口(TAPI)或其它接口,接口可以发送和接收语音数据的音频流。服务器32可以接收以几种形式的数据。第一,服务器32可以接收由所述用户输入到工作站34的命令或其它数据。第二,服务器32可以接收以用户用第一种语言说的词的音频流形式的、经由麦克风18收集的语音数据。第三,服务器32可以接收与所述用户语音通信的一方用第二种语言说的词的音频流形式的语音数据。可以经由诸如在电话26中麦克风28之类的声音检测传感器来感知用第二种语言说的词。服务器32也可以接收其它形式的数据。在本发明某些实施例中,服务器32可以接收语音命令。
服务器翻译器控制器50可以响应所述用户的命令,并且操作并处理用不同语言的消息。可以把控制器50具体化为一个或多个可编程处理机,其检查所述翻译,调整与用户的通信,并且支配信息流。
响应于接收消息,服务器32可以把所述消息从一种语言翻译为另一种。可以通过所述用户用第一种语言说话来把所述消息提供给服务器32,所述第一种语言即为所述用户熟悉的那种语言。服务器32可以把用第一种语言的消息翻译为第二种语言,所述用户对其并不熟悉而会话的另一方对其熟悉。服务器32可以以第二种语言的书面或音频形式产生所翻译的消息。类似地,服务器32可以接收第二种语言的口头消息,可以把所述消息翻译为第一种语言,并且可以产生以书面或音频形式的翻译。依照这种方法,服务器32使在说两种语言的会话方之间的通信便于进行。
在用户用第一种语言产生消息的情况下,所述用户经由麦克风18输入所述消息。所述用户通过用第一种语言说话来输入所述消息。所述消息可以作为语音数据的音频流经由网络16来向服务器32发送。翻译器控制器50可以把音频流传送到语音识别器52。语音识别器可以从市场上的不同公司买到。语音识别器52可以把所述语音数据转换为可翻译的形式。特别地是,语音识别器52可以把所述语音数据分析为子集消息,例如词、短语和/或从句,其可以被发送到翻译引擎54以便翻译为第二种语言。另外,语音识别器52可以把所述语音数据转换为副本,其可以存储在存储器56的翻译缓冲器中。同样可以把由翻译引擎54产生的翻译存储在存储器56中。
存储器56可以包括任何形式的信息存储器。存储器56不局限于随机存取存储器,而是还可以包括任何种类的计算机可读介质,所述计算机可读介质包括用于使诸如控制器50之类的可编程处理机执行这里描述的技术的指令。这种计算机可读介质包括但不局限于,可由控制器50访问的磁和光存储介质和诸如可擦除可编程只读存储器或闪速存储器之类的只读存储器。
可以把翻译引擎54具体化为硬件、软件或硬件和软件的组合。翻译引擎54可以使用一个或多个专门翻译工具来把消息从一种语言转换为另一种。专门翻译工具可以包括术语管理器58、翻译存储器工具60和/或机器翻译工具62。
术语管理器58总体上处理特定应用的术语。翻译引擎54可以使用一个以上的术语管理器。下面将要给出术语管理器的例子。翻译存储器工具60总体上通过识别先前翻译的词和短语来降低翻译工作,所述词和短语不必“重新开始”翻译。机器翻译工具62通过例如分析所述消息并且分析所述词或短语来在语言上处理用“重新开始”语言的消息。术语管理器58、翻译存储器工具60和/或机器翻译工具62可从市场上多个不同的公司买到。如下所述,由翻译引擎54使用的所述工具可以取决于第一种语言、第二种语言或它们二者。
选择性地,服务器32可以包括语音标识器64。语音标识器64可以识别人们说话。如果存在几个用户使用扬声器电话,例如,语音标识器64可以把一个人的声音与另一个人的声音区分开来。当把服务器32配置为接受语音命令时,可以使用语音标识器64来认出授权给予语音命令的用户。
翻译引擎54可以产生用第二种语言的翻译。可以经由网络16以书面形式或语音形式发送所述翻译,继而转播给会话的乙方。在典型应用中,将要把所述翻译提供给语言合成器66。语言合成器66产生作为所述翻译的函数的用第二种语言的语音数据。翻译器和语言合成器同样可从市场上的不同公司买到。
可以经由网络16把用第二种语言的语音数据发送给所述用户。可以经由通信网络24(参见图1)把用第二种语言的语音数据转播给会话的乙方,所述乙方经由扬声器30收听所述翻译。
在乙方用第二种语言产生语音数据的情况下,可以用类似的技术获得翻译。可以通过麦克风28来检测由乙方用第二种语言说的词并且经由通信网络24将其转送到客户端12。可以经由网络16把第二种语言的语音数据发送到服务器32。翻译器控制器50可以把所述语音数据传送到语音识别器52,其可以把所述语音数据转换为可翻译的形式,所述可翻译的形式可以由翻译引擎54翻译为第一种语言。可以以书面或由语言合成器66产生的语音形式经由网络16发送用第一种语言的翻译。依照这种方法,双方可以继续进行语音—语音会话。服务器32可以自动地充当双方会话的翻译器。
另外,控制器50可以自动地保存所述会话的副本。所述用户可以从服务器32中的存储器56下载所述副本。所述用户可以在显示器40上看见所述副本和/或可以在打印机36上打印所述副本。如果服务器32包括语音标识器64,所述副本可以包括单个人参与会话和每个人说了什么的标识。
实际上,对于每种语言可以划分诸如语音识别器52、翻译引擎54和语言合成器66之类的模块。例如一个语音识别器可以认出英语,而另一个语音识别器可以认出中国国语。类似地,一个语言合成器可以产生西班牙语的谈话,而独立的语言合成器可以产生阿拉伯语谈话。为说明简单起见,在图2中组合所有语音识别器模块、翻译器模块和语言合成器模块。本发明不局限于任何特定的硬件或软件来实现所述模块。
依照上述方式执行的翻译可能遭受来自各个源的翻译错误。例如同音字、多义词和术语可以把错误引入到翻译中。因此翻译引擎54可以使用诸如术语管理器58、翻译存储器工具60和/或机器翻译工具62之类的工具以便获得更准确的翻译。
一个术语管理器工具是词典序列。所述用户可以指定有助于翻译的一个或多个词典。例如所述词典对于某一主题可以是特定的,或对与另一方的通信是特定的。例如,所述用户可以具有个人词典,其保留了由所述用户通常使用的词、短语和从句。用户还可以访问适合于特定行业或主题的词典,诸如交易磋商、固有名称、军用术语、技术术语、医学词汇、法律术语、有关运动表达或非正式会话。
所述用户还可以建立词典优先序列,如在图3中举例说明。翻译引擎54可以在一个或多个词典中依照用户指定的层次来查找要加以翻译的词、短语或从句。在图3中,要搜索的第一词典是所述用户的个人词典(72)。所述个人词典可以包括所述用户频繁使用的词、短语和从句。要搜索的第二词典可以是专门的面向语境内容的词典。在图3中,假定所述用户想要讨论军事主题,并且因此选择军事词典(74)。所述用户给综合词典(76)以最低优先级。
可以搜索任何或所有词典以便找到对应于要传达的语境意思(78)的词、短语或从句。词典的层次可以使搜索想要的意思(78)更快并更高效。例如,假定用户使用英文词“carrier”。在用户的个人词典(72)中,“carrier”在大多数情况下涉及可以调制以便携带信号的无线电波。因此可以迅速地找到最可能的语境意思(78)。搜索其它词典(74,76)可以产生该术语的其它可能意义,诸如一种军舰或投递人。然而这些意思可能不是用户想要的。
假定所述用户使用短语“five clicks”。该术语可能不能在个人词典(72)中找到,但是可以在军事词典(74)中找到。可以把该术语确定为与许多声音相对测量距离。
所述用户可以在会话之前指定词典序列,并且可以在会话期间改变该序列。翻译引擎54可以把所述词典序列使用为对于理解语境并且准备翻译的工具。
词典排序可以是用于处理特定主题术语的许多术语管理器工具之一。也可以用其它工具。例如,另一术语管理器工具可以认出诸如词或短语的集合之类的概念。在一些情况下,把概念映射到第二种语言比执行逐字翻译更为准确有效。使用概念翻译,可以把短语“我改变主意”恰当地翻译为“我修改了我的意见”,而不是不恰当地逐字翻译为“我更换了我的大脑”。其它术语管理器工具可以适合于识别并翻译与特定主题有关的词、短语、从句和概念,所述主题诸如法律、医学或军事领域中的主题。
在某些应用中,不必实时提供所述翻译。翻译引擎54可能会遇到歧义,并且所述歧义可能会影响所述翻译。即便使用词典序列也可能会出现歧义。因此,可以把翻译暂时地存储在存储器56中并且可以向用户示出歧义及其它特征以供分辨。服务器32可以询问用户其所想要传达的意思。
图4示出了可以展示给用户的示例性询问屏幕80。用户使用第一种语言短语即英语短语“We broke it”。由语音识别器52认出该短语并把它回显82在屏幕80上。在翻译词“broke”时翻译引擎54遇到并识别出歧义。词“broke”可以具有几个意思,每一个都可以用第二种语言翻译为不同的词。通过语境,翻译引擎54也许能确定“broke”表示与形容词相对的动词。
屏幕80向用户展示选择菜单84,用户可以从中选择想要的意思。用户可以用鼠标44、键盘42或其它输入/输出设备来进行选择。在菜单中选择的顺序可以是词典序列的函数,以致可以首先显示最可能的意思。
在图4中,选择菜单84是基于语境的。换句话说,词“broke”存在于四个不同的短语,在每个短语中词“broke”具有不同的意思。也可以以其它格式显示菜单84,诸如一连串同义词的形式。例如,代替“打破(broke)玻璃”,屏幕80可以显示诸如“打破(broke)粉碎、破碎、破裂”。在另一可选择的格式中,屏幕80可以向用户展示关于最可能想要意思的推测,并且可以给用户确认该推测是正确的机会。所述用户可以指定菜单84显示的格式。
当用户选择所要求的意思时,翻译引擎54至少部分基于询问或所述用户对该询问的响应来执行适当的翻译。如果出现另外的歧义或其它特征,那么可以询问用户关于该歧义或特征。当解决这些歧义或特征时,可以把所述翻译提供给语言合成器66以便转换为语音数据。
图5是举例说明由服务器32使用的技术的流程图。在建立与所述用户的联系(90)之后,服务器32可以准备接收包括音频输入的数据。服务器32可以识别对于诸如票据、认证等等之类的目的的用户(92)。可以出现当用户将要远离他的办公室或在收费公用电话上时的情况。为了获得对服务器32的访问,用户可以输入一个或多个标识符,诸如帐号和/或密码。在本发明的一个应用中,可以由语音标识器64认出并识别用户的声音。
一旦识别所述用户,控制器50可以从存储器56中加载所述用户的偏好(94)。偏好可以包括用于缺省第一和第二语言的词典序列、翻译引擎文件等等。用户偏好还可以包括语音简介。语音简介包括与特定用户的声音有关的数据,其可以改进语音识别器52的识别率。用户偏好还可以包括显示偏好,其可以提供关于翻译缓冲器内容或会话运行副本的用户信息。另外,用户偏好可以包括以基于语境格式显示的歧义,所述格式诸如在图4中示出的格式,或另一格式。所述用户可以改变任何偏好。
服务器32可以初始化在会话方之间的交互作用(96)。初始化可以包括建立与乙方联系的语音。在本发明某些实施例中,所述用户可以指导服务器32来建立与乙方的联系。例如所述用户可以向控制器50给出语音命令以便连接特定的电话号码。所述命令可以由语音识别器52认出并且可以由控制器50执行。
在本发明一个实施例中,对服务器32的命令可以是语音驱动的,允许不需要手来操作。例如当诸如鼠标或键盘之类的手控输入/输出设备无法使用时语音驱动操作可以是有益的。可以使用语音命令来控制翻译并编辑消息。语音命令可以包括被认为是命令的预定义关键字,诸如“翻译那个”,“选择词典序列”,“撤消那个”,“往后退四个词”等等。
另外,可以编程服务器32以便检测暂停,并且可以当检测到暂停时,在没有“翻译那些”明确命令的情况下自动翻译该翻译缓冲器的内容。翻译引擎54可以使用暂停作为诸如短语或从句之类的可翻译子集消息的指示符。暂停触发翻译在许多环境中可以是有用的,诸如当用户向听众进行口头陈述时。例如暂停触发翻译可以在用户完成说完句子之前允许翻译引擎54翻译句子的一部分。结果,用第二种语言的翻译消息可以迅速地接着用第一种语言口头陈述的消息。
一旦开始在会话方之间的交互作用,控制器50可以处理用第一种语言说的消息或用第二种语言说的消息。一般说来,处理短语包括接收口头消息(98),认出所述口头消息(100),翻译所述消息的消息或子集(102),识别并阐明诸如歧义之类的特征(104,106,108),以及提供翻译(110,112)。为了说明,在把由用户用第一种语言说的消息翻译成用第二种语言说的消息的范围内将首先举例说明了对口头消息的处理。
识别所述消息(100)并且翻译所述消息(102)可以是在服务器32的许多模块之间的合作过程。一般说来,语音识别器52典型地过滤输入的音频信号并且认出由用户所说的词。语音识别器52还可以与翻译引擎54合作以便把所述消息分析为子集消息,诸如词和诸如短语和从句之类的词的集合。在本发明一个实施例中,例如,翻译引擎54可以使用语境来确定词、短语或从句的意思,以便区分类似发音的词像“到(to)”、“两个(two)”、“太(too)”。建立语境翻译还改进识别(100),可以正确地翻译类似发音的词像“书(book)”、“小溪(brook)”、“烹调(cook)”、“钩(hook)”、“取出(took)”。
即使用基于语境的翻译,也可能会出现某些识别和翻译错误或歧义。服务器32可以确定翻译特征是否出现以下问题,其可以要求用户分辨(104)并且关于该问题可以询问用户(106)。控制器50可以调整询问。
图4示出了用于解决歧义的询问的例子。其它形式的询问是可能的。例如控制器50可以请求用户重复或改述早先的陈述,这或许是因为该陈述不能被理解或许是因为用户所使用的词在第二种语言中没有等同物。控制器50还可以请求用户是否把特定的词意指为固有名称。
控制器50可以接收用户的响应(108)并且翻译引擎54可以使用该响应来进行翻译(102)。控制器50还可以在存储器56中存储该响应。如果再次出现相同的问题,那么翻译存储器工具60可以识别先前翻译的词、短语或从句,并且能够通过参照存储器56语境和先前翻译来解决该问题。当翻译引擎54识别歧义时,控制器50可以搜索存储器56以便确定先前是否已经解决了该歧义。从存储器56中提取想要的意思可以更快并且优于发起或重复对用户的询问。
经由所述翻译和询问度的所述用户控制的程度可以是用户控制的偏好。可以在会话开始时自动地加载这些偏好(94)。
在本发明一个实施例中,结合每个说出的词、短语、从句或句子询问所述用户。可以向所述用户给出他的词和短语的书面或声音译文,并且要求确认所述书面或声音译文是正确的。可以允许所述用户编辑所述书面或声音译文以便阐明所想要的意思并且解决歧义。所述用户可以延迟翻译直到按要求所述意思是精确的。在翻译准确更为重要的环境中,由用户仔细的回顾每个所说的句子可以是有益的。单个句子的翻译可以包括在所述用户和服务器32之间的几个交互作用。
在该实施例中,所述用户可以选择使用一个或多个翻译引擎来把消息从第一种语言翻译为第二种语言,然后再回到所述第一种语言。这些技术可以帮助用户增加正确翻译消息的意思的可信度。
在本发明另一实施例中,所述用户可以对传达消息的“要点”更感兴趣而不是具体意思。因此,可以更少频繁地询问所述用户,更依赖术语管理器工具和翻译存储器工具来减少翻译错误。由于询问更少,所以所述会话可以更快速地进行。
在进一步的实施例中,可以消除询问。服务器32可以使用术语管理器工具和翻译存储器工具来减少翻译错误。使用这种模式可以允许更迅速的会话,但是还会更容易错误。
当完成翻译时,语言合成器66可以把所述翻译转换成音频流(110)。例如语言合成器66可以从包含音素、词或短语的音频文件中选择,并且可以集合所述音频文件以便产生所述音频流。在另一方法中,语言合成器66可以使用人类声道的数学模型以便在音频流中生成校正的声音。根据语言,一种或其它方法可以是较佳的,也可以把这些方法组合起来。语言合成器66按照需要可以增加语调或音调。
服务器32可以把所述音频流传给乙方(112)。服务器32还可以产生并保持用户词和短语以及提供给乙方的翻译的副本(114)。
当服务器32从乙方接收用第二种语言的词时,服务器32可以使用类似的翻译技术。特别地是,服务器32可以接收所说的词和短语(98),认出所述词和短语(100)并且准备翻译(102)。可以把所述翻译转换为音频流(110)并将其发送到用户(112),而且可以将其包括在所述副本中(114)。
在某些应用中,还可以以类似于所述用户的方式询问乙方。然而询问乙方不为本发明所必需。在许多环境中,用户可以是与服务器32交互访问会话的唯一一方。当乙方想要的意思不清楚时,可以实现几个过程中的任意几个。
例如,服务器32可以向用户示出相同词或短语的可选择的翻译。有时,所述用户也许能看出一个翻译多半是正确的而其它可能的翻译多半是错误的。在其它情况下,所述用户可以请求乙方改述乙方刚刚所说的。仍然在其它情况中,所述用户可以请求乙方解释一个特定的字或短语,而不是重述刚刚所说的每件事情。
图6举例说明了由控制器50选择的模块和/或工具。例如控制器50可以选择一个或多个翻译引擎、翻译工具、话音识别模块或语言合成器。可以加载所选择的模块和/或工具,即可以把所述模块和/或工具的指令、数据和/或地址放置在随机存取存储器中。
所述用户可以指定可以在会话期间使用的模块和/或工具。如上所述,控制器50可以自动地加载模块和/或工具的用户偏好(94),但是用户可以改变任何偏好。当由所述用户命令时,控制器50可以选择或改变用于把消息从一种语言翻译为另一种的一些或所有模块或工具。
选择模块和/或工具可以取决于各种因素。在示例性的情况图6中,选择取决于在会话中使用的语言。控制器50接收由所述用户指定的语言(120)。所述用户可以经由在本地工作站34的输入/输出设备或通过语音命令来指定语言。示例性的语音命令可以是“选择语言对为英语和西班牙语”,这命令服务器32准备把由用户说的英语翻译为西班牙语,并且把西班牙语翻译为英语。
控制器50可以选择作为一个或这两个所选择语言的函数的模块和/或工具(122)。如上所述,对于每种语言诸如语音识别器52、翻译引擎54和语言合成器66之类的模块可以是不同的。诸如术语管理器58、翻译存储器工具60和机器翻译工具62之类的翻译工具还可以取决于由所述用户选择的一种或多种语言。
对于某些特定的语言或语言对,控制器50可以只具有一种选择模块或工具。例如对于把英语翻译为瑞典语可以只有一个可用的翻译引擎。然而对于其它特定的语言或语言对,控制器50可以具有可用的模块和工具的选择(124)。当存在选择模块或工具时,控制器50可以询问用户(126)使用什么模块或工具。
在询问的一个实施方式中(126),例如控制器50可以列出可用的翻译引擎,并且请求用户选择一个。控制器50还可以询问用户关于一种或多种语言的特定版本。在用户指定语言为英语和西班牙语的例子中,控制器50可以具有一个在西班牙说西班牙语的翻译引擎和在墨西哥中说西班牙语的修改翻译引擎。控制器50可以询问用户(126)关于在会话中想要的西班牙语的形式,或可以用诸如“优选来自西班牙的西班牙语谈话者”之类的符号来列出所述翻译引擎。
控制器50接收选择的版本(128)并且据此选择模块和/或工具(122)。然后装入所选择模块和/或工具(130),即所选择的模块和/或工具的指令、数据和/或地址可以载入到随机存取存储器中以便更快操作。
在图6中描述的技术不局限于选择作为会话语言的函数的模块和/或工具。所述用户可以向服务器32给出与诸如词典序列之类的特定工具有关的命令,并且控制器50可以选择工具(122)以便执行所述命令。控制器50还可以响应于下列状况选择模块和/或工具的修改集,所述状况诸如用户身份方面的变化或在先前选择的模块或工具中检测的错误或其它问题。
本发明的一个优点可以有几个翻译模块和/或工具对用户可用。本发明不局限于任何特定的翻译引擎、话音识别模块、语言合成器或任何其它翻译模块或工具。控制器50可以选择适于特定会话的模块和/或工具,并且有时选择对用户可以是透明的。另外,所述用户可以从不同的供应商选择翻译引擎或其它模块或工具,并且可以定制所述系统以便适合用户的需要或偏好。
图7是举例说明翻译系统10的服务器端14的实施示例的框图。在该实施例中,选择各种语言的模块或工具可以对几个用户有效。可以把服务器端14具体化为翻译服务管理系统140,翻译服务管理系统140包括一个或多个网络服务器142和一个或多个数据库服务器144。可以在基于万维网环境中实现在图7中描述的体系结构并且其可以同时服务多个用户。
网络服务器142提供了接口,借此一个或多个用户可以经由网络16来访问翻译服务管理系统140的翻译功能。在一种配置中,网络服务器142执行网络服务器软件,诸如来自华盛顿雷蒙德的微软公司的Internet Information ServerTM(因特网信息服务器TM(IIS))。照此,网络服务器142依照软件模块146提供了用于用户交互的环境,所述软件模块可以包括动态服务器主页(ASP)、用超级文本标志语言(HTML)或动态HTML写的网页、动态X模块、Lotus脚本、Java脚本、Java应用程序、分布组件对象模块(DCOM)等等。
尽管举例说明了软件模块146是在服务器端14上操作并且在由网络服务器142提供的操作环境内执行,但是可以容易地把软件模块146实现为在由用户使用的本地工作站上执行的客户端软件模块。例如可以把软件模块146实现为由在所述本地工作站上执行的浏览器来执行的动态X模块。
软件模块146可以包括许多模块,包括控制模块148、副本模块150、缓冲器状态模块152和询问接口模块154。总体上把软件模块146配置为向用户或系统管理员提供信息,或从用户或系统管理员处获得信息。可以根据所述信息来格式化该信息。例如副本模块150可以以文本形式给出关于副本的信息,而缓冲器状态模块152可以图解地给出关于翻译缓冲器的信息。询问接口模块154可以依照与在图4中示出类似的格式或另一格式给出询问。
控制模块148可以执行管理功能。例如,控制模块148可以给出接口,借此授权用户可以配置翻译服务管理系统140。例如系统管理员可以管理包括设置访问权限的用户帐户,以及定义许多集体和用户偏好。另外,系统管理员可以与控制模块148相交互以便定义逻辑种类和层次来表征并描述可用的翻译服务。控制模块148还可以负责执行控制器50功能,诸如选择并加载模块、工具及其它存储在数据库服务器144上的数据。控制模块148还可以装入所述模块或工具,并且可以监督翻译操作。
其它模块可以向用户给出关于会话翻译的信息。副本模块150可以给出存储的会话副本。缓冲器状态模块152可以向用户给出关于翻译缓冲器内容的信息。询问接口154可以向用户给出询问屏幕,诸如在图4中示出的询问屏幕80,并且可以包括用于接收所述用户对该询问响应的接口。副本模块150、缓冲器状态模块152和询问接口154可以依照独立平台格式向用户给出信息,所述平台格式即是可以由各种本地工作站使用的格式。
可以把关于语言或语言集的许多模块和工具存储在一组数据库服务器144上。数据库服务器144的数据库管理系统可以是关系(RDBMS)、分级(HDBMS)、多维的(MDBMS)、面向对象(ODBMS或OODBMS)或关系对象(ORDBMS)的数据库管理系统。例如所述数据可以存储在诸如来自微软公司的结构化查询语言服务器之类的单个关系数据库内。
在会话开始时,数据库服务器144可以获取用户数据158。用户数据可以包括关于特定用户的数据,诸如帐号、密码、权限、偏好、使用历史记录、帐单数据、个人词典和声音模式。数据库服务器144还可以获取一个或多个文件160,文件160允许翻译引擎作为由所述用户选择语言的函数。翻译引擎文件160可以包括诸如词汇和语法规则以及用于执行翻译的程序和工具之类的数据。翻译引擎文件160可以包括完整的翻译引擎或用来定制由所述用户选择的语言的翻译引擎。当用户指定词典序列时,还可以由数据库服务器144检索一个或多个专门词典162。还可以由数据库服务器144检索驱动诸如语音识别器52、语音标识器64和语言合成器66之类的模块的驱动器164。
数据库服务器144可以保留各种语言的翻译引擎文件160、专门词典162和驱动器164。一些语言翻译可以由一个以上的翻译器支持,并且不同的翻译器可以向用户提供不同的特点或优点。通过用这种方式使这些翻译资源可用,翻译服务管理系统140可以作为通用的翻译器,允许用户把实际上用任何第一种语言说的词翻译为实际上用任何第二种语言说的词,反之亦然。
如上所述,本发明不局限于以说的形式接收的消息。本发明还可以以书面形式接收消息,诸如作为在计算机上保存的文本文件的消息。本发明可以使用上述的许多技术来翻译书面消息。特别地是,书面消息可以省略语音识别技术并且可以直接加载到存储器56中的翻译缓冲器。按照书面消息的翻译,所翻译的消息可以以书面形式、可听形式或这两种形式存在。
在本发明的一个应用中,所述用户向听众讲话。所述用户在讲话中使用了指示性的工具,诸如电子存储在本地工作站34上的幻灯片文本。例如可以把所述文本存储为用诸如Microsoft Word、PowerPoint或Microsoft Excel之类的字处理、幻灯片展示或电子表格应用准备的一个或多个文档。翻译系统10可以翻译由所述用户说的词,并且还可以翻译在指示性工具中的文本。当所述用户响应询问时,翻译引擎54至少部分基于询问或所述用户对该询问的响应来执行对书面消息、口头消息或二者的适当翻译。
用户可以控制怎样给出所翻译的消息。例如,讲话的翻译可以以可听的形式给出,而指示性工具的翻译可以以书面形式给出。做为选择,所述用户可以允许听众成员来确定是否以书面形式、可听形式或二者结合来接收所翻译的消息。
本发明可以提供一个或多个另外的优点。单个服务器可以包括用于翻译几种语言的资源,并且多个用户可以同时访问这些资源。随着对所述资源的增强或改进,所有用户可以受益于所述资源的最现行的译文。
在一些实施例中,服务器可以向各种用户平台提供翻译资源,诸如个人计算机、PDA和移动电话。另外,用户例如可以通过建立一个或多个个人词典或通过控制所述询问度来定制所述系统以便满足所述用户的特定需要。
有了用户询问,翻译可以更准确地反映所想要的意思。询问度可以受所述用户支配。在一些应用中,会话的一方以上可以使用询问以便用不熟悉的语言来构造消息。
已经描述了本发明的几个实施例。在不脱离本发明范围的情况下可以进行各种修改。例如,在不需要语音识别器52和/或语言合成器66的情况下,服务器32可以提供另外的功能,诸如以书面形式接收、翻译并传输消息。
权利要求
1.一种方法包括从用户接收用第一种语言的消息;询问所述用户关于所述消息的特征;至少部分根据所述询问把所述消息翻译成第二种语言。
2.如权利要求1所述的方法,还包括识别在所述消息中的歧义;以及询问所述用户关于所述歧义。
3.如权利要求1所述的方法,其中接收所述第一消息包括接收音频消息。
4.如权利要求1所述的方法,还包括接收所述用户对所述询问的响应。
5.如权利要求4所述的方法,还包括把所述消息翻译为作为所述响应的函数的第二种语言。
6.如权利要求5所述的方法,其中把所述消息翻译为第二种语言包括产生音频流。
7.如权利要求4所述的方法,还包括从所述用户接收用第一种语言的第二消息;至少部分地基于所述响应把所述第二消息翻译为第二种语言。
8.一种系统,包括翻译引擎(54),所述翻译引擎(54)把用第一种语言的消息翻译为第二种语言;和控制器(50),在把用第一种语言的消息翻译为第二种语言时,当所述翻译引擎识别歧义时所述控制器(50)询问用户。
9.如权利要求8所述的系统,其中所述消息是口头消息,所述系统还包括用于认出用第一种语言说的消息的语音识别器(52)。
10.如权利要求9所述的系统,还包括语音标识器(64),所述语音标识器(64)用于识别说出所述口头消息的声音。
11.如权利要求8所述的系统,还包括语言合成器(66),所述语言合成器(66)用于把第二种语言的消息转换成音频流。
12.如权利要求8所述的系统,还包括存储器(56),所述存储器(56)用于存储所述消息的副本。
13.一种方法包括接收用第一种语言的第一音频消息;把所述第一消息翻译为第二种语言;产生作为用第二种语言的所述第一消息的函数的第一音频流;接收用第二种语言的第二音频消息;把所述第二消息翻译为所述第一种语言;产生作为用第一种语言的第二消息的函数的第二音频流;以及存储包括用所述第一种语言和所述第二种语言至少之一的第一消息和第二消息。
14.如权利要求13所述的方法,还包括产生询问;接收对所述询问的响应;以及把所述第一消息翻译为作为所述响应的函数的第二种语言。
15.如权利要求14所述的方法,还包括识别在所述第一消息中的歧义;以及产生作为所述歧义的函数的询问。
16.一种方法包括接收由用户指定的第一种语言;接收由所述用户指定的第二种语言;以及选择作为所述第一种语言和所述第二种语言至少之一的函数的翻译引擎文件。
17.如权利要求16所述的方法,还包括询问所述用户;接收对所述询问的响应;以及选择作为所述响应的函数的翻译引擎文件。
18.一种系统,包括数据库(144),所述数据库(144)用于存储多个翻译引擎文件(160);和控制器(148),所述控制器(148)用于从多个翻译引擎文件(160)中选择翻译引擎文件。
19.如权利要求18所述的系统,其中所述数据库还存储多个专门词典(162),并且其中所述控制器(148)从多个专门词典(162)中选择至少一个专门词典。
20.如权利要求18所述的系统,还包括询问接口(154),所述询问接口(154)用于向用户发送询问。
21.一种方法包括把用第一种语言的第一消息的第一部分翻译成第二种语言;识别在所述第一消息中的歧义;询问用户关于所述歧义;接收对所述询问的响应;把所述第一消息的第二部分翻译成作为所述响应的函数的第二种语言;以及把用第一种语言的第二消息翻译成作为所述响应的函数的第二种语言。
22.如权利要求21所述的方法,还包括在存储器中存储所述歧义和所述响应的标识。
23.一种方法包括从用户接收包括第一词典和第二词典的词典序列;接收用第一种语言的消息;把所述消息分析为用第一种语言的子集,所述第一种语言包括词、短语和从句至少之一;搜索所述第一词典寻找用第二种语言的子集,所述用第二种语言的子集对应于用第一种语言的子集;以及随后搜索所述第二词典寻找用第二种语言的子集,其中所述第二种语言的子集对应于所述第一种语言的子集。
24.如权利要求23所述的方法,还包括在所述第一词典和所述第二词典之一中找到用第二种语言的第一子集;在所述第一词典和所述第二词典之一中找到用第二种语言的第二子集;询问所述用户应该使用第一子集和第二子集中的哪个;接收对所述询问的响应;以及把所述消息翻译为作为所述响应的函数的第二种语言。
25.一种方法包括接收用第一种语言的音频消息;认出所述音频消息;在存储器中存储所认出的音频消息;检测在所述音频消息中的暂停;以及当检测到所述暂停时,把在存储器中所认出的音频消息翻译为第二种语言。
26.如权利要求25所述的方法,还包括产生询问;接收对所述询问的响应;以及把所述第一消息翻译为作为所述响应的函数的第二种语言。
27.一种系统,用于执行如权利要求1-7,13-17,21-26所述方法中的任何一个。
全文摘要
本发明提供了用于把消息从一种语言翻译到另一种的技术。翻译系统可以接收以口头形式(18)的消息。可以向服务器(14)发送消息,所述服务器翻译所述消息,并且可以以音频形式(66)产生翻译。当所述服务器(14)识别在翻译过程中的歧义时,所述服务器(14)可以产生更能准确传达所述会话方想要传达的意思的翻译。用户可以在许多方面定制所述翻译系统,包括通过规定词典序列。
文档编号G10L15/26GK1788266SQ03820664
公开日2006年6月14日 申请日期2003年8月29日 优先权日2002年8月30日
发明者R·帕姆奎斯特 申请人:思比驰盖尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1