7
基于骨架的机器翻译 肖桐 东北大学 机器翻译发展到今天经历了手工书写规则到完全自动学习翻译知识的过程。当今的机器 翻译的系统研发已经完全由统计方法主导。从广义上来说,提升统计机器翻译系统性能主要 涉及三个方面:1)数据:增加系统训练用数据量,提高数据质量;2)建模与计算:构建更 为强大的翻译模型以及语言模型,使用更为先进的机器学习方法;3)知识使用:在机器翻译 中使用更多的先验知识,如句法等。以上三方面的进步也对机器翻译的发展起到了关键的推 动作用。 但是,研究者也发现简单地增加数据或者更新学习方法并没有带来机器翻译结果本质的 变化。许多“老”问题仍然不断地出现在统计机器翻译系统的结果中。虽然,近些年基于神 经网络的端到端方法给机器翻译带来了新的希望,机器翻译的系统输出仍然与人们的期望相 去甚远。在开发更为强大的统计建模方法的同时,很多人不断地提出同一个疑问:能否让机 器翻译系统模仿人的行为进行翻译?实际上,早期基于规则的机器翻译就已经在做类似的事 情,但基于规则的方法过分依赖人工,且泛化能力有限,在今天并没有得到像统计方法这样 广泛的关注和应用。在二十多年的统计机器翻译研究中,有很多研究者不断尝试在机器翻译 中引入不同类型的知识,比如句法,取得了令人瞩目的效果。不过这些工作更加关注如何使 用语言学等知识来指导翻译,仍然没有真正回答:这些知识是否是人在进行翻译中所使用或 者关注的。 人到底是如何进行翻译的?机器翻译能否模拟这个过程?这个问题应该很难在短期内得 到答案。不过可以肯定的是,我们可以在机器翻译系统中融合一些人工翻译的策略,称之为 翻译外部知识。比如,我们自己在翻译一个复杂句子时,通常会先翻译句子的核心结构,如: 主语、核心动词等。这些核心结构的翻译将句子的框架或者骨架确定下来,而其它修饰或者 从属成分的翻译可以通过简单的策略附着在核心成分周围。这个过程有些类似于在翻译带有 多个状语的动词时,我们首先要确定动词的翻译,包括这个动词对应的时态、语态等信息, 之后再翻译状语等部分。上述方法就是一种基于骨架的机器翻译思想,本文将会对相关的方 法、实现技术及实验进行讨论。 1. 何为骨架? 对于一个句子,所谓骨架就是句子的核心结构,它的翻译通常会决定目标语译文的整体 语序。在语言分析中,骨架的概念已经有所涉及,比如,有人认为中文句子的主谓宾结构本 身就是一种句子骨架。当然,机器翻译也可以借鉴这个概念,图 1 给出了一个中文句子的骨 架和它对应的英文翻译过程。系统首先将句子的骨架“成本进一步下降”(红色部分)识别出 来;然后对其进行翻译;最后对其它非骨架成分(蓝色部分)的翻译结果附着在骨架成分翻 译的周围。可以看出通过骨架,我们可以很容易地确定中文句子所对应的英文语序,而非骨 架成分的翻译不需要太复杂的调序,直接考虑其从属的骨架成分即可。为方便起见,在不做 特殊说明的情况下,下面所有例子均描述的是中文到英文的翻译过程,不再赘述。

基于骨架的机器翻译 - qngw2014.bj.bcebos.comqngw2014.bj.bcebos.com/zhuankan/4/20160918_004... · 涉及三个方面:1)数据:增加系统训练用数据量,提高数据质量;2)建模与计算:构建更

  • Upload
    others

  • View
    64

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 基于骨架的机器翻译 - qngw2014.bj.bcebos.comqngw2014.bj.bcebos.com/zhuankan/4/20160918_004... · 涉及三个方面:1)数据:增加系统训练用数据量,提高数据质量;2)建模与计算:构建更

基于骨架的机器翻译

肖桐

东北大学

机器翻译发展到今天经历了手工书写规则到完全自动学习翻译知识的过程。当今的机器

翻译的系统研发已经完全由统计方法主导。从广义上来说,提升统计机器翻译系统性能主要

涉及三个方面:1)数据:增加系统训练用数据量,提高数据质量;2)建模与计算:构建更

为强大的翻译模型以及语言模型,使用更为先进的机器学习方法;3)知识使用:在机器翻译

中使用更多的先验知识,如句法等。以上三方面的进步也对机器翻译的发展起到了关键的推

动作用。

但是,研究者也发现简单地增加数据或者更新学习方法并没有带来机器翻译结果本质的

变化。许多“老”问题仍然不断地出现在统计机器翻译系统的结果中。虽然,近些年基于神

经网络的端到端方法给机器翻译带来了新的希望,机器翻译的系统输出仍然与人们的期望相

去甚远。在开发更为强大的统计建模方法的同时,很多人不断地提出同一个疑问:能否让机

器翻译系统模仿人的行为进行翻译?实际上,早期基于规则的机器翻译就已经在做类似的事

情,但基于规则的方法过分依赖人工,且泛化能力有限,在今天并没有得到像统计方法这样

广泛的关注和应用。在二十多年的统计机器翻译研究中,有很多研究者不断尝试在机器翻译

中引入不同类型的知识,比如句法,取得了令人瞩目的效果。不过这些工作更加关注如何使

用语言学等知识来指导翻译,仍然没有真正回答:这些知识是否是人在进行翻译中所使用或

者关注的。

人到底是如何进行翻译的?机器翻译能否模拟这个过程?这个问题应该很难在短期内得

到答案。不过可以肯定的是,我们可以在机器翻译系统中融合一些人工翻译的策略,称之为

翻译外部知识。比如,我们自己在翻译一个复杂句子时,通常会先翻译句子的核心结构,如:

主语、核心动词等。这些核心结构的翻译将句子的框架或者骨架确定下来,而其它修饰或者

从属成分的翻译可以通过简单的策略附着在核心成分周围。这个过程有些类似于在翻译带有

多个状语的动词时,我们首先要确定动词的翻译,包括这个动词对应的时态、语态等信息,

之后再翻译状语等部分。上述方法就是一种基于骨架的机器翻译思想,本文将会对相关的方

法、实现技术及实验进行讨论。

1. 何为骨架?

对于一个句子,所谓骨架就是句子的核心结构,它的翻译通常会决定目标语译文的整体

语序。在语言分析中,骨架的概念已经有所涉及,比如,有人认为中文句子的主谓宾结构本

身就是一种句子骨架。当然,机器翻译也可以借鉴这个概念,图 1 给出了一个中文句子的骨

架和它对应的英文翻译过程。系统首先将句子的骨架“成本进一步下降”(红色部分)识别出

来;然后对其进行翻译;最后对其它非骨架成分(蓝色部分)的翻译结果附着在骨架成分翻

译的周围。可以看出通过骨架,我们可以很容易地确定中文句子所对应的英文语序,而非骨

架成分的翻译不需要太复杂的调序,直接考虑其从属的骨架成分即可。为方便起见,在不做

特殊说明的情况下,下面所有例子均描述的是中文到英文的翻译过程,不再赘述。

Page 2: 基于骨架的机器翻译 - qngw2014.bj.bcebos.comqngw2014.bj.bcebos.com/zhuankan/4/20160918_004... · 涉及三个方面:1)数据:增加系统训练用数据量,提高数据质量;2)建模与计算:构建更

(a) 句子骨架部分的翻译(中->英)

(b) 句子非骨架部分的翻译(中->英)

图 1:中文句子骨架实例及翻译过程示例

在机器翻译中,句子骨架有很多种定义方法,可以粗略地分为三类:

1)直接将单语句法分析中的谓词-论元(verb argument)等结构作为句子骨架。这么做的

最大好处是,我们不用纠结如何定义句子骨架,直接利用语言学的相关理论和语义角色标注

系统即可完成句子骨架的识别。

2)通过人工标注数据来定义适合机器翻译的骨架成分。这种方法的基本思路是,直接定

义一套标注体系,之后通过人工标注定义出句子骨架信息,最后利用标注的数据自动学习句

子骨架识别模型。

3)此外,可以不依赖标注数据或者语言学知识,直接让系统在翻译的过程中自动生成并

选择合适的骨架进行翻译。这个过程类似于把骨架看成翻译的一种隐层结构。

上述方法各有优缺点,第一种方法很早就已经得到尝试,但是受限于语义角色标注系统

的性能和单语分析与机器翻译不匹配等问题,这类方法并没有被大规模使用。而且在多数基

于谓词-论元结构的翻译系统中,骨架这个概念并没有太多涉及。上面的第二种和第三种方法

是更加直接的思路来利用句子骨架进行机器翻译,前者有更多的人工参与成分,但是需要完

成大量的标注工作;后者没有数据标注成本,但是需要自动方法对骨架信息的使用进行控制。

下面将重点介绍这两种方法在机器翻译中的使用情况。

2. 基于骨架的机器翻译模型

2.1 基于词串的骨架翻译模型

一种简单直接的想法是直接在输入的源语言词串上标注骨架信息,之后构建翻译模型。

这么做的好处是,可以把骨架识别问题转化为句子压缩问题,即把输入句子的非骨架部分(词)

删除。比如,对于图 1 中的中文句子“每吨海水淡化处理的成本在 5 元的基础上进一步下降。”,

我们可以判断句子中的每个词是否属于骨架,如果不属于就将其删除,最终得到句子骨架为

“成本进一步下降。”

我们团队使用上述想法实现了一个中文骨架识别系统(Zhang 等人,2013)。该系统使用

Page 3: 基于骨架的机器翻译 - qngw2014.bj.bcebos.comqngw2014.bj.bcebos.com/zhuankan/4/20160918_004... · 涉及三个方面:1)数据:增加系统训练用数据量,提高数据质量;2)建模与计算:构建更

了转录文法将一个句子自动转化为一个化简的句子,即句子骨架。为了完成转录文法的学习,

我们人工标注了一个中文句子骨架语料库。该语料库包含 LDC2003E07 双语数据的 3308 句

中文句子的骨架标注结果,标注 Kappa 值为 0.886。

进一步,我们可以构建基于骨架的翻译模型(Xiao 等人,2014a)。这里我们沿用传统统

计机器翻译中的表示方法,把翻译问题描述为在所有的翻译假设(或推导)中找到模型得分

最高的翻译假设:

𝑑∗ = argmax𝑑𝑔(𝑑) (1)

其中,d 表示翻译推导,g(d)表示 d 所对应的模型得分,可以定义为:

𝑔(𝑑) = 𝑔𝑠𝑘𝑒𝑙(𝑑) + 𝑔𝑓𝑢𝑙𝑙(𝑑) (2)

上述模型将翻译问题拆分为两个子模型,一个是骨架翻译模型𝑔𝑠𝑘𝑒𝑙(𝑑),它根据骨架识别的结

果对句子的骨架成分进行翻译打分;第二个是整句翻译模型𝑔𝑓𝑢𝑙𝑙(𝑑),它就是传统的翻译模型,

比如基于短语的模型。公式(2)描述的是一种线性组合的方式,将骨架翻译和传统的翻译进行

融合。类似于模型插值,这种方法可以在一个较好的基线上引入骨架信息。

对于𝑔𝑠𝑘𝑒𝑙(𝑑)和𝑔𝑓𝑢𝑙𝑙(𝑑)的计算,我们使用了基于短语的模型:

𝑔(𝑑;𝑤,𝑚, 𝑙𝑚) = 𝑤𝑚 ∙ 𝑓𝑚(𝑑) + 𝑤𝑙𝑚 ∙ 𝑙𝑚(𝑑) (3)

其中,m 和 lm 分别表示翻译模型和语言模型,wm和 wlm表示两个模型的权重。整个翻译系统

仍然在短语翻译框架下,易于系统实现。这里唯一需要特殊考虑的是𝑔𝑠𝑘𝑒𝑙(𝑑)中语言模型并不

是在整句的译文上进行计算,而是在句子骨架译文上进行计算,也就是在句子译文的部分词

串上进行。它也可以被理解为一个 skip 语言模型,可以更加容易捕捉译文中核心句子成分之

间的依赖关系。图 2 给出了一个基于上述模型的解码过程。

图 2:基于词串的骨架翻译解码过程实例

2.2 基于句法的骨架翻译模型

基于词串的骨架翻译模型的优点在于模型简单直接。但是,它也有缺点。首先,基于词

Page 4: 基于骨架的机器翻译 - qngw2014.bj.bcebos.comqngw2014.bj.bcebos.com/zhuankan/4/20160918_004... · 涉及三个方面:1)数据:增加系统训练用数据量,提高数据质量;2)建模与计算:构建更

串的骨架翻译模型依赖人工标注的数据训练骨架识别系统,系统性能很大程度上依赖标注标

准的合理性和数据的标注质量。此外,在基于骨架的翻译中,我们也希望引入更多语言学信

息,特别是句法信息来描述句子的结构,而这些在基于词串的模型中并没有太多考虑。

针对上述问题,进一步的想法是在句法模型的基础上使用骨架信息,而且骨架的识别最

好不依赖人工标注。因此,我们团队又探索了一种新的模型——句法骨架翻译模型(Xiao 等

人,2016)。该模型的思想非常简单:我们分别用传统的层次短语系统和树到串系统抽取翻译

规则,这样就得到了一个层次短语规则集,和带有源语言句法标记的树到串规则集。使用(Xiao

等人,2014b)中的方法,可以将这两种规则集都统一到同步上下文无关文法的框架下。由于

树到串规则可以更好地捕捉句子上层结构,并帮助机器翻译进行长距离调序,因此我们使用

树到串规则构建句子上层的句法骨架;层次短语规则本质上还是非语言学句法的翻译模型,

因此可以帮助系统处理非骨架成分的局部翻译结果。但是,这里的问题是如何将树到串规则

和层次短语规则集成在一个框架中,同时保证句子上层可以由树到串规则“拼装”出句法骨

架。为了解决这个问题,对于每一条树到串规则,我们定义了一种泛化操作,这种操作会将

规则右手端的部分非终结符泛化成 X,即与层次短语系统相兼容的规则。泛化后的规则被称作

“半句法”规则。这类规则可以“连接”树到串规则和层次短语规则,保证在“半句法”规

则之上使用树到串规则,在“半句法”规则之下使用层次短语规则。这样一个翻译推导的上

层就由句法规则组成,下层由层次短语规则组成。图 3 给出了一个句法骨架的翻译实例及其

所对应的规则。

图 3:基于句法的骨架翻译实例

实际上上述模型的一个最大的优点在于我们并不需要人工定义什么是骨架,而是让翻译

系统自己学习、选择最适合翻译任务的句法骨架结构信息。而句法信息的使用程度也是可以

通过参数进行控制的,比如可以设置句法骨架所对应树的深度。这样就可以在机器翻译中更

加合理地使用句法信息,而非简单的“全用”或者“全不用”。

3. 实验

根据(Xiao 等人,2014a)的工作,我们首先使用基于词串的骨架翻译模型进行了实验。

翻译系统在 270 万句中英双语平行数据上进行训练。表 1 给出了不同系统在 NIST 中英数据上

的 BLEU 及 TER 结果。其中 baseline 表示基于短语的基线系统(NiuTrans),SBMT 表示使用骨

架的系统。为了研究骨架识别准确性对翻译质量的影响,我们在开发和测试集上分别使用了

人工和自动的骨架识别结果。可以看出人工和自动骨架识别的差别对翻译性能影响不大。整

Page 5: 基于骨架的机器翻译 - qngw2014.bj.bcebos.comqngw2014.bj.bcebos.com/zhuankan/4/20160918_004... · 涉及三个方面:1)数据:增加系统训练用数据量,提高数据质量;2)建模与计算:构建更

体来看引入骨架信息对机器翻译系统有一定帮助,比如,BLEU 可以提高 0.7 个点左右。此外,

我们还进行了另外一组实验,将骨架翻译模型𝑔𝑠𝑘𝑒𝑙(𝑑)中的语言模型去掉(对应表 1 中最后一

行-skellm)。可以看出,𝑔𝑠𝑘𝑒𝑙(𝑑)中使用的语言模型对翻译性能有较大影响,进而也说明了该模

型中骨架翻译可以帮助系统捕捉一些长距离约束,补充传统 n-gram 语言模型的不足。

表 1:基于词串的骨架翻译系统 BLEU 及 TER 结果

进一步,我们实验了基于树的骨架翻译模型的效果(Xiao 等人,2016)。表 2 给出了不同

系统在汉英、英汉的 newswire 和 web 数据上的 BLEU 结果。在源语言端,我们分别使用了标

准的 CTB/PTB 树和经过二叉化后的句法树。我们使用了层次短语系统(Hier.)和树到串系统

(Tree-to-String)作为基线。为了与其它基于句法的方法进行对比,我们在树到串系统的基础

上额外构建了两个基线系统,它们分别使用句法软约束作为特征(+ source syn.features)和

SAMT 规则(+ source syn.SAMT rules)。可以看出,使用句法骨架可以带来翻译性能的显著提升。

为了进一步分析句法信息的使用程度,表 3 给出了不同任务上我们的系统使用不同类型翻译

推导的比例,其中 fully-syn.、non-syn.、partially-syn.分别表示完全由句法规则组成的推导、完

全由非句法规则组成的推导、同时包含句法和非句法规则组成的推导。可以看出,机器翻译

系统非常“喜欢”混合使用句法和非句法规则,这也体现了不同类型规则对翻译都有贡献,

单一考虑一种模型并不是最好的方案。此外,从表 3 中也可以发现英到中翻译系统更加“喜

欢”句法规则,这可能是由于英文语法更加规范,英文句法分析的准确性相对较高,因此可

以更大程度地发挥句法的优势。

表 2:基于树的骨架翻译系统 BLEU 结果

表 3:骨架翻译中不同类型翻译推导的比例

最后我们也分析了若干基于树的骨架翻译实例。图 4 给出了两个中文句子翻译为英文的

结果,其中 Hier 和 S-to-T 分别表示层次短语和树到串系统,SYNSKEL 表示句法骨架翻译系统。

可以看出,句法骨架模型可以使用上层句法结构构建句子的核心结构,同时使用层次短语进

Page 6: 基于骨架的机器翻译 - qngw2014.bj.bcebos.comqngw2014.bj.bcebos.com/zhuankan/4/20160918_004... · 涉及三个方面:1)数据:增加系统训练用数据量,提高数据质量;2)建模与计算:构建更

行局部片段相对灵活的翻译。从某种意义上说,它可以同时发挥句法和层次短语系统的优势,

让每种模型干自己所擅长的事情。

图 4:句法骨架翻译实例

4. 结论

本文分析并介绍了基于骨架的机器翻译方法。重点讨论了基于串和基于树两种骨架翻译

模型及其实验结果。实际上,骨架信息为机器翻译提供了额外的知识,使用骨架信息可以帮

助机器翻译系统来模拟人的翻译策略,进而生成更加合理的翻译结果。从机器翻译研究的角

度来看,深入使用先验知识仍然是机器翻译中非常有潜力的方向,特别是如何在基于神经元

网络的翻译系统中使用句法、句子骨架等知识是未来重要方向之一。

[1] Chunliang Zhang, Minghan Hu, Tong Xiao and Jingbo Zhu . 2013. Chinese Sentence

Compression: Corpus and Evaluation. In Proc. of Chinese Computational Linguistics (CCL) and

Natural Language Processing Based on Naturally Annotated Big Data, Beijing, China.

[2] Tong Xiao, Jingbo Zhu and Chunliang Zhang. A Hybrid Approach to Skeleton-based Translation.

2014a. In Proc. of the 52st Annual Meeting of the Association for Computational Linguistics

(ACL, short papers), Baltimore, USA.

[3] Tong Xiao, Adrià de Gispert, Jingbo Zhu and Bill Byrne. 2014b. Effective Incorporation of Source

Syntax into Hierarchical Phrase-based Translation.In Proc. of the 25th International Conference

on Computational Linguistics, Dublin, Ireland.

[4] Tong Xiao, Jingbo Zhu, Chunliang Zhang and Tongran Liu. 2016. Syntactic Skeleton-based

Translation.In Proc. of the thirtieth AAAI conference, Phoenix, USA.

Page 7: 基于骨架的机器翻译 - qngw2014.bj.bcebos.comqngw2014.bj.bcebos.com/zhuankan/4/20160918_004... · 涉及三个方面:1)数据:增加系统训练用数据量,提高数据质量;2)建模与计算:构建更

肖桐,东北大学计算机科学与工程学院副教授,中国中文信息学会首届优秀博士论文提名奖

获得者,NiuTrans 团队技术负责人。2012 年博士毕业于东北大学,并先后在日本富士施乐公

司、微软亚洲研究院进行访问学习。2013-2014 赴英国剑桥大学开展博士后研究。作为技术负

责人主持开源统计机器翻译系统的研发,曾主持多套机器翻译评测(比赛)系统的研发,并

在国内机器翻译评测 CWMT 和国际专利机器翻译评测 NTCIR PatentMT 中取得优异成绩。主要

从事基于句法的统计机器翻译、语言建模方面的研究。在人工智能及自然处理语言领域重要

期刊及会议 AI、JAIR、TASLP、TALIP、AAAI、ACL、EMNLP、COLING 发表论文 20 余篇。社会学

术兼职包括:中国中文信息学会青年工作委员会委员、中国中文信息学会信息检索与内容安

全专业委员会委员等。