概述
计算机辅助阅读系统帮助用户阅读非母语。为了进行讨论,在一 般的浏览程序范围内介绍计算机辅助阅读系统,该程序在通用计算机 上运行。不过,计算机辅助阅读系统也可以在许多不同的非浏览环境 中实现(例如电子邮件系统、字处理等),并且可以在许多各式各样 类型的设备上实行。
下面介绍的实施例,允许更乐于使用母语交流的用户快捷方便地 广泛阅读非母语的电子文档,而且其方式促进了集中精力和快速消化 有关内容。在要翻译文本的近旁提供带有译文窗口的用户界面,可以 增加用户的便利。译文窗口中包含着文本翻译后的译文。将译文窗口 放在要翻译文本的近旁,用户的双眼不必移动很远即可确定要翻译的 文本。这又减少了用户可察觉的分心,举例来说,假若为了查看要翻 译的文本,用户的目光需要扫视一段距离,这种分心就很难避免。
在某些实施例中,
光标翻译处理的优点使得用户交互进一步增强。 利用
鼠标移动来选择文本的
位置,用户能够进行快速选择,系统据此 自动执行翻译并将翻译后的文本向用户显示。
示范系统体系结构
图1显示了示范计算机系统100,它具有
中央处理器(CPU)102、
存储器104和输入/输出(I/O)
接口106。CPU 102与存储器104和 I/O接口106通信。存储器104既代表易失性存储器(例如RAM), 又代表
非易失性存储器(例如ROM、
硬盘等)。程序和数据文件可以 存放在存储器104中,并在CUP 102上执行。
计算机系统100通过I/O接口106连接着一台或多台
外围设备。 示范外围设备包括鼠标110、
键盘112(例如字母数字QWERTY键盘、 电话键盘等)、显示监视器114、
打印机116、外部存储设备118和话 筒120。例如,该计算机系统可以作为通用计算机。所以,计算机系 统100执行一种计算机
操作系统(未显示),该操作系统在存储器104 中存放,在CUP 102上执行。该操作系统最好是一种支持窗口环境的 多任务操作系统。适宜的操作系统的一个实例是微软公司的Windows 品牌操作系统。
应当注意,也可以使用其它计算机系统配置,比如
手持设备、多 处理器系统、基于
微处理器的或者可编程的
消费电子产品、网络PC、 小型计算机、大型计算机等等。此外,尽管图1中展示的是一种独立 的计算机,语言输入系统也可以在分布式计算环境中实现,通过通信 网络(例如LAN、因特网等)连接的远程处理设备完成其中的任务。 在分布式计算环境中,程序模
块既可以位于本机的存储设备中,也可 以位于远程存储设备中。
示范阅读系统
计算机系统100实现了阅读系统130,它帮助用户阅读非母语。 该阅读系统可以在单词、短语或者语句的级别提供帮助。在图1中实 现的阅读系统是作为浏览程序132,它在存储器104中存放,在CUP 102上执行。应当重视和理解,下面介绍的阅读系统也可以在浏览器 范围以外的氛围中实现。
阅读系统130具有用户界面134和跨语言阅读向导136。UI 134 展现跨语言阅读向导136。除了阅读系统之外,浏览器程序132还可 以包括其它组件,但是这类组件对于浏览器程序被视为标准的,因此 将不进行详细显示和介绍。
阅读向导136包括浅层分析器140、统计单词译文选择器142和译 文生成器144。
示范浅层分析器
浅层分析器140把选定的非母语文本中的短语或语句分解成单独 的翻译单位(例如短语、单词)。
图2稍微详细地显示了一个实施例中的浅层分析器。在任何适当 的
硬件、
软件、
固件或者它们的组合中,都可以实现该浅层分析器。 在这个展示和介绍的实施例中,浅层分析器是在软件中实现的。
如图所示,浅层分析器140包括单词片段模块200、词态学分析器 202、语句部分(POS)标签/基本名词短语标识模块204、短语扩展 模块206和模式或模板匹配模块208。虽然这些组件显示为独立的组 件,但是应当重视和理解,这些组件也可以互相结合或者与其它组件 结合。
依据所介绍的实施例,浅层分析器140把用户已经选定的文本中 的单词划分为片段。它使用单词片段模块来做到这一点。然后浅层分 析器使用词态学分析器202从词态学的观点处理单词,以获得每个单 词的词态学词根。为了发现每个单词的词态学词根,词态学分析器能 够对单词应用多种词态学规则。词态学分析器202使用的规则可以由 熟练于被分析的具体语言的人制定。例如,英语中的一个规则为,以 “ed”结尾的单词,或者通过去除“d”或者通过去除“ed”来 形成其词态学词根。
为了进一步选择译文,浅层分析器140采用语句部分(POS)标 签/基本名词短语(baseNP)标识模块204,按照特征划分单词和短语。 例如,POS标签和baseNP标识可以由某个统计模型来实现,下面紧 接着的标题为“POS标签和baseNP标识”的一节介绍了它的一个 实例。浅层分析器140使用短语扩展模块206,对POS标签/基本名词 短语标识模块204按照特征划分的这些单词,应用基于规则的短语扩 展。短语扩展模块的一个目标,是把一个基本名词短语扩展到一个更 复杂的名词短语。例如,“baseNP的baseNP”是“baseNP”短 语的更复杂的名词短语。浅层分析器140也使用模式或模板匹配模块 208来产生树列表。模式或模板匹配模块用于翻译,并认识某些短语 翻译是取决于模式的,而不是直接与短语中的单词有关。例如,短语 “对baseNP感兴趣”包含一种模式(即“baseNP”),它用于形 成一个更复杂的翻译单位,用于翻译。单词“感兴趣”并不直接涉 及用于形成更复杂翻译单位的这种模式。
POS标签和baseNP标识
以下的讨论介绍了用于自动识别英语的baseNP(名词短语)的一 种统计模型,并构成了处理选定的文本以产生树列表的方式之一。所 介绍的方法使用两个步骤:N个最佳语句部分(POS)标签和给予N 个最佳POS序列的baseNP标识。所介绍的模型也集成了词法的信息。 最后,应用Viterbi
算法在整个序列中进行全局搜索,它使得在整个过 程中能够获得线性的复杂度。
发现简单的和非递归的基本名词短语(baseNP),是许多自然语 言处理应用程序(比如部分剖析、
信息检索和
机器翻译)的一个重要 的子任务。baseNP是简单的名词短语,并不递归地包含其它的名词短 语。例如,在以下实例中[…]之内的元素是baseNP,其中NNS、IN、 VBG等为语句部分(POS)标签。Marcus et al.,Building a Large Annotated Corpus of English:the Penn Treebank,Computational Linguistics,19(2):313-330,1993中介绍了POS标签,使其为世人所知。 [Measures/NNS]of/IN[manufacturing/VBG activity/NN] fell/VBD more/RBR than/IN [the/DT overall/JJ measures/NNS]./.
统计方法
在本节中介绍两步法统计模型、参数训练和Viterbi算法,用于搜 索POS标签和baseNP标识最佳序列。在介绍该算法之前,引入贯穿 讨论的某些记号。
让我们把输入语句E分别表示为下列单词序列和POS序列:
E=w1 w2...wn-1wn
T=t1t2...tn-1tn
其中n为语句中的单词数目,ti为单词wi的POS标签。
给定E后,假设baseNP标识的结果是一个序列,其中某些单词 组合成baseNP如下
...wi-1[wi wi+1...wj]wj+1...
对应的标签序列如下:
(a)B=...ti-1[ti ti+1...tj]tj+1...=...ti-1 bi,j tj+1...=n1 n2...nm
其中bi,j对应于某个baseNP的标签序列:[titi+1…tj]。bi,j也可 以被认为是一种baseNP规则。所以,序列B既包含POS标签,又包 含baseNP规则。因此1≤m≤n,ni∈(POS标签集U baseNP规则集)。 这是某个语句带有baseNP记号的第一表达式。有时我们也使用以下 等效形式:
(b)Q=...(ti-1,bmi-1)(ti,bmi)(ti+1,bmj+1)...(tj,bmj)(tj+1,bmj+1)...=q1q2...qn
其中每个POS标签ti与其相对于baseNP的位置信息bmi相关联。 位置信息为{F,I,E,O,S}之一。F、E和I分别表示该单词在某个baseNP 的左边界、右边界,或者某个baseNP内部的另一个位置。O表示该 单词在某个baseNP之外。S标注某个单一单词的baseNP。
例如,上面给定实例的两种表达式如下:
(a)B=[NNS]IN[VBG NN]VBD RBR IN[DT JJ NNS]
(b)Q=(NNS S)(IN O)(VBG F)(NN E)(VBD O)(RBR O)(IN O)(DT F)(JJ I)(NNS E)(.O)
集成的’两步法过程
所介绍方法的原理如下。最可能的baseNP序列B*可以一般地表 示如下:
我们把整个过程分成两步,也就是:
为了减少搜索空间和计算复杂度,我们仅仅考虑N个最佳POS 标签,也就是
所以,我们有:
相应地,算法也由两步组成:使用(2)式确定N个最佳POS标 签,然后使用(3)式从这些POS序列确定最佳baseNP序列。这两步 集成在一起,而不是像在其它方法中那样分开。现在让我们更密切地 查看这两步。
确定N个最佳POS序列
在第一步中算法的目标是在搜索空间(POS网格)之内搜索N个 最佳POS序列。根据贝叶斯法则,我们有
由于P(E)不影响P(T|E)的最小化过程,(2)式变为
我们现在假设,E中的单词是独立的。因此
然后我们使用三字模型作为P(T)的一种近似,也就是:
最后我们有
在搜索N个最佳的Viterbi算法中,P(wi|ti)被称为词法生成(或输 出)概率,P(ti|ti-2,ti-1)被称为隐藏
马尔可夫模型中的跃进概率。Viterbi, Error Bounds for Convolution Codes and Asymptotically Optimum Decoding Algorithm,IEEE Transactions on Information Theory IT-13(2):pp.260-269,April,1967中介绍了Viterbi算法。
确定baseNP
如上所述,给定N个最佳POS序列后,第二步的目标是搜索最佳 baseNP序列。
把E、T和B视为随机变量,根据贝叶斯法则,我们有
由于
,我们有,
因为我们对给定语句E中每个可能的POS序列搜索最佳baseNP 序列,P(E|T)×P(T)=P(E∩T)=常数。不仅如此,从B的定义,在每个搜索 过程期间,我们有
所以,(3)式变为
使用独立假设,我们有
利用P(B)的三字近似,我们有:
最后,我们得到
总而言之,在第一步中,在POS标签过程中应用搜索N个最佳的 Viterbi算法,对于计算的每个POS序列确定路径概率ft如下:
在第二步中,对于每个可能的POS标签结果, 再一次应用Viterbi算法搜索最佳baseNP序列。在这一步所找到的每 个baseNP序列还与路径概率
相关。某个 baseNP序列的总概率由ft α×fb确定,其中α为均衡系数(在我们的实验 中α=2.4)。对于给定的语句E,当我们确定最佳baseNP序列时, 我们也确定了E的最佳POS序列,它对应于E的最佳baseNP。
作为这个过程如何起作用的一个实例,考虑以下文本:“stock was down 9.1 points yesterday morning.”在第一步中,该句的N个最 佳POS标签结果之一是:T=NN VBD RB CD NNS NN NN。
对于这个POS序列,第二步将试图确定baseNP,如图3所示。 虚线中路径的细节在图4中给出。在第二步中计算出它的概率如下(Φ 为虚变量):
P(B|T,E)=p(stock|NN,S)×p(was|VBD,O)×p(down|RB,O)×p(NUMBER|CD,B)
×p(points|NNS,E)×p(yesterday|NN,B)×p(morning|NN,E)×p(.|.,O)
×p([NN]|Φ,Φ)×p(VBD|Φ,[NN])×p(RB|[NN],VBD)×p([CD NNS]|VBD,RB)
×p([NN NN]|RB,[CD NNS])×p(.|[CD NNS],[NN NN])
统计参数训练
在这项工作中,训练和试验的数据是取自Penn Treebank的25个 部分。我们把整个Penn Treebank数据分成两部分,一部分用于训练, 另一部分用于试验。
在我们的统计模型中,我们计算以下四种概率: (1)P(ti|ti-2,ti-1),(2)P(wi|ti),(3)P(ni|ni-2ni-1)和(4)P(wi|ti,bmi)。第一种和第三种参数 分别是T和B的三字概率。第二种和第四种是词法生成概率。利用下 列公式可以从有POS标签的数据计算概率(1)和(2):
由于训练集中的每个语句既有POS标签,又有baseNP边界标签, 它可以转换为两个序列,如上节中介绍的B(a)和Q(b)。使用这 些序列,利用分别类似于(13)和(14)式的计算公式,可以计算出 参数(3)和(4)。
在训练三字模型(3)之前,应当从训练全集提取所有可能的 baseNP规则。例如,提取的baseNP规则包括以下三个序列。
(1)DT CD CD NNPS
(2)RB JJ NNS NNS
(3)NN NN POS NN
……
在Penn Treebank中有超过6000种baseNP规则。训练三字模型 (3)时,我们以两种方式对待这些baseNP规则。首先,给每个baseNP 规则分配一个唯一标识(UID)。这表明,该算法考虑了每个baseNP 规则对应的结构。其次,给所有这些规则分配相同标识(SID)。在这 种情况下,这些规则组合成同一类。然而,baseNP规则的标识仍然与 分配给POS标签的标识不同。
为了使参数平滑,使用了Katz,Estimation of Probabilities from Sparse Data for Language Model Component of Speech Recognize, IEEE Transaction on Acoustics,Speech,and Signal Processing, Volume ASSP-35,pp.400-401,March 1987中介绍的一种方法。为了 预测参数(1)和(3)的概率,建立了一个三字模型。在识别baseNP 期间遇到未知单词的情况下,以下列方式计算参数(2)和(4):
这里,bmj表示附着在ti上所有可能的baseNP标号,tj是为未知 单词wi猜测的一个POS标签。
图5是一张流程图,介绍一个实施例中方法的步骤。这些步骤可 以在任何适当的硬件、软件、固件或者它们的组合中实现。在展示的 实例中,这些步骤是在软件中实现的。在上述跨语言的阅读向导136 ——它形成了浏览器程序132的一部分(见图1)——中,可以发现 这种软件的一个具体实施例。更确切地说,将要介绍的方法可以由某 个浅层分析器来实现,比如图2中显示和介绍的分析器。
步骤500接收选定的文本。实现这个步骤与某个用户选择文本中 要翻译的一个部分有关。通常,用户通过使用一种输入设备比如鼠标 等来选择文本。步骤502把选定文本中的单词划分成片段。将会受到 本领域的技术人员重视的任何适当的划分处理都可以使用。步骤504 获得每个单词的词态学词根。在展示和介绍的实施例中,这一步是由 词态学分析器实现的,比如图2中显示的词态学分析器。在展示的实 例中,词态学分析器配置为处理以英语写成的单词。不过应当重视和 理解,任何适当的语言都可以提供一个基础,在其上可以建立一个词 态学分析器。
步骤506使用语句部分(POS)标签和基本名词短语标识来划分 单词的特征。任何适当的技术都可以使用。在上面的“POS标签和 baseNP标识”一节中,详细介绍了一种示范技术。步骤508对按照特 征划分的单词应用基于规则的短语扩展和模式匹配,以产生树列表。 在上面的实例中,这一步是使用短语扩展模块206和模式或模板匹配 模块208来实现的。步骤510输出树列表,以便进一步处理。
作为树列表的一个实例,考虑图6。其中已经以上面介绍的方法, 处理了语句“The Natural Language Computing Group at Microsoft Research China is exploring research in advanced natural language technologies”。确切地说,树列表展示了语句中已经使用上面介绍的 POS标签和baseNP技术,经过分段、词态学处理和特征划分的各个 单词。例如,考虑元素600。其中,单词“Natural”已经从语句中 和从父元素“natural language”中划分出来。元素600也已经按特 征划分为带有POS标签“JJ”。树上的其它元素也经过类似的处理。
示范单词译文选择器
单词译文选择器142接收树列表并产生所有可能的译文模式。选 择器142使用统计翻译和语言模型对剖析后的翻译单位进行翻译,得 出母语文本中最优的候选单词译文。输出的是最优的候选译文。
图7是一张流程图,介绍一个实施例中方法的步骤。该方法可以 在任何适当的硬件、软件、固件或者它们的组合中实现。在展示和介 绍的实施例中,该方法是在软件中实现的。这种软件的一个实施例可 以包括单词译文选择器142(见图1)。
按照上面介绍的处理产生的树列表在步骤700接收。步骤702从 树列表产生译文模式。在一个实施例中,产生所有可能的译文模式。 例如,对于英语到汉语的翻译,英语名词短语“NP1 of NP2”可能 有两种可能的译文:(1)T(NP1)+T(NP2)和(2)T(NP2)+T(NP1)。 在短语译文中,翻译的短语是一棵句法树,在一个实施例中,所有可 能的译文顺序都受到考虑。步骤704使用翻译模型和语言模型来翻译 剖析后的翻译单位。翻译单位可以包括单词和短语。然后步骤706输 出最优的N个候选单词译文。可以使用统计模型来选择最优的N个候 选单词译文。
示范译文生成器
译文生成器144把最优的N个候选单词译文转换为母语中对应的 短语。然后母语的单词和短语通过UI出现在选定的文本附近。
图8稍微详细地显示了一个实施例中的译文生成器144。为了翻译 最优的候选单词,译文生成器可以利用许多不同的资源。例如,译文 生成器可以包括它在翻译过程中使用的词典模块800。词典模块800 可以包括单词词典、短语词典、不规则词形词典或者通常在自然语言 翻译处理中使用的任何其它词典,这对本领域的技术人员是显而易见 的。本领域的技术人员将会理解这类词典的操作和功能,为简便起见 此处不再更详细地介绍。
译文生成器144可以包括模板模块802,它包含用于翻译处理中 的多个模板。任何适当的模板都可以使用。例如,可以使用所谓的大 短语模板来协助翻译过程。在自然语言翻译中使用的模板,其操作已 知,此处不再更详细地介绍。
译文生成器144可以包括规则模块804,它包含用于使翻译过程 便利的多个规则。规则可以是手工制定的规则,制定它们的人员熟悉 被翻译的特定语言。可以制定规则来涉及属于翻译、剖析、翻译模式 中的统计错误。本领域的技术人员将会理解基于规则翻译的原理。
译文生成器144可以包括用于翻译过程中的一个或多个统计模型 806。这些可以使用的统计模型可以变化范围很广,尤其是对与所需翻 译有关的、给定数目的可能的非母语和母语。这些统计模型可以基于 上面介绍的POS和baseNP统计参数。在需要从英语翻译成汉语的一 个特定实施例中,可以使用以下模型:汉语三字语言模型和汉语交互 信息模型。当然,也可以使用其它模型。
上面介绍的模块和模型可以分别使用,也可以按多种相互组合使 用。
在处理过程中,至此用户已经选择了非母语文本的一部分,要翻 译成母语。选定的文本已经按照上面的介绍进行了处理。在下面紧接 着的讨论中,要介绍的方法和系统以对用户方便和高效的方式把翻译 后的文本呈现给用户。
阅读向导的用户界面
剩余的讨论是针对阅读向导中用户界面134的特性。具体地说, 阅读向导的用户界面134允许用户选择不能确定如何阅读和解释的、 以非母语写成的文本。选定的内容可以是各个单词、短语或者语句。
图9至图13显示了阅读向导的若干示范用户界面,以图形UI (GUI)实现,作为浏览器程序或者其它计算机辅助阅读系统的一部 分呈现给用户。展示的实例显示了设计为帮助中国用户阅读英语文本 的阅读系统。英语文本显示在窗口中。用户可以选择英语文本的某些 部分。为了响应用户的选择,阅读向导把选定的内容翻译成汉语文本, 并把汉语文本呈现在弹出式译文窗口或滚动框中。
图9显示了用户界面900,它包括“非母语”文本中已经突出 显示的一部分。突出显示的文本显示在用户界面的第一区域中。用户 界面的第二区域的形式为译文窗口902,配置为以母语显示至少某些 文本内容翻译后的部分。在这个实例中,突出显示的文本包括短语 “research in advanced natural language technologies”。在这个实例 中,用户已经突出显示了单词“advanced”,阅读系统已经自动确 定该单词组成被突出显示短语的一部分。然后阅读系统在译文窗口902 中自动显示被突出显示短语的最佳译文。通过自动确定包含用户选定 单词的短语然后提供该短语的至少一种译文,不仅向读者提供了该单 词的译文,而且提供了该单词在其中使用的、翻译后的上下文。这样 做的优点在于,它给予读者更多翻译后的信息,这又有助于他们理解 正在阅读的材料。
注意,译文窗口902位于突出显示文本的至少一个部分的附近。 以这种方式
定位译文窗口,为了看见翻译后的文本,用户就不必使其 注意力从突出显示的文本转移很远。这样做的优点在于,它不会令用 户的阅读过程减慢到不期望的程度。也要注意,译文窗口包含一个下 拉箭头904,它可以用于显示选定文本的其它翻译结果。作为一个实 例,考虑图10。其中译文窗口902已经下拉,以显示突出显示短语的 所有译文。
图11显示了用户界面1100,它带有译文窗口1102。注意,阅读 系统自动探测出单词“generated”不在某个短语中,并且只翻译单 词“generated”。阅读系统也能够在译文窗口1102中提供多种最 可能的译文。例如,显示了三种可能的示范译文。在展示的实例中, 显示的译文是与上下文有关的,并按照上下文来排序。所以,在这个 实例中,阅读系统仅仅可以显示该单词最佳的n个译文,而不是该单 词所有可能的译文。图12显示了用户界面1100,其中单词 “generated”的所有可能的译文都在译文窗口1102中呈现给用户。
图13显示了用户界面1300,它带有译文窗口1302,展示了所介 绍实施例的一种特性。具体地说,可以给用户一种选择,他们是需要 翻译包含选定单词的整个短语,还是只需要翻译选定的单词。在这个 实例中,用户已经使其鼠标放置在选择单词“advanced”进行翻译 的位置。由于单词“advanced”组成某个较长短语的一部分,阅读 系统会自动翻译包含着选定单词的短语,然后向用户呈现各种选择, 如上所述。不过在这种情况下,用户已经指示阅读系统,他们仅仅需 要翻译选定的单词。他们能够以任何适当的方式做到这一点,比如举 例来说,当选定单词时按下“Ctrl”键。
结论
上面介绍的若干实施例帮助用户阅读非母语,并能够允许更乐于 使用母语交流的用户快捷方便地广泛阅读非母语的电子文档,而且其 方式促进了集中精力和快速消化有关内容。提供的用户界面在要翻译 文本的近旁具有译文窗口,包含着文本翻译后的译文,可以增加用户 的便利。将译文窗口放在要翻译文本的近旁,用户的双眼不必移动很 远即可确定要翻译的文本。这又减少了用户可察觉的分心,举例来说, 假若为了查看要翻译的文本,用户的目光需要扫视一段距离,这种分 心就很难避免。在某些实施例中,光标翻译处理的优点使得用户交互 进一步增强。利用鼠标移动来选择文本的位置,用户能够进行快速选 择,系统据此自动执行翻译并将翻译后的文本向用户显示。
尽管是以结构特性和/或词态学步骤的特定语言来介绍了本发 明,还是应当理解,在附带的
权利要求书中规定的本发明不必局限于 所介绍的特定特性或步骤。相反,公开这些特定的特性和步骤,是作 为实现要求权利的本发明的优选形式。
相关
申请本申请源于2000年4月24日提交的、序列号为60/199,288的美 国临时申请,并要求其优先权,其公开内容在此特别引用作为参考。 本申请也涉及2000年4月24日提交的、序列号为09/556,229的美国
专利申请,其公开内容在此引用作为参考。