18.4 翻译结果的可干预性 615
18.4 翻译结果的可干预性
交互式机器翻译体现了一种用户的行为“干预”机器翻译结果的思想。实际上,
在机器翻译出现错误时,人们总是希望用一种直接有效的方式“改变”译文,最短
时间内达到改善翻译质量的目的。比如,如果机器翻译系统可以输出多个候选译文,
用户可以在其中挑选最好的译文进行输出。也就是,人为干预了译文候选的排序过
程。另一个例子是翻译记忆(Translation Memory,TM)。翻译记忆记录了高质量的源
语言-目标语言句对,有时也可以被看作是一种先验知识或“记忆”。因此,当进行机
器翻译时,使用翻译记忆指导翻译过程也可以被看作是一种干预手段
[1181, 1182]
。
虽然干预机器翻译系统的方式很多,最常用的还是对源语言特定片段翻译的干
预,以期望最终句子的译文满足某些约束。这个问题也被称作基于约束的翻译(Constraint-
based Translation)。比如,在翻译网页时,需要保持译文中的网页标签与源文一致。
另一个典型例子是术语翻译。在实际应用中,经常会遇到公司名称、品牌名称、产
品名称等专有名词和行业术语,以及不同含义的缩写,比如,对于“小牛翻译”这
个专有名词,不同的机器翻译系统给出的结果不一样:“Maverick translation”、“Calf
translation
”、“
The mavericks translation
”等等,而它正确的翻译应该为“
NiuTrans
”。
对于这些类似的特殊词汇,机器翻译引擎很难翻译得准确。一方面,因为模型大多
是在通用数据集上训练出来的,并不能保证数据集能涵盖所有的语言现象。另一方
面,即使是这些术语在训练数据中出现,它们通常也是低频的,模型不容易捕捉它
们的规律。为了保证翻译的准确性,对术语翻译进行干预是十分有必要的,对领域
适应等问题的求解也是非常有意义的。
就词汇约束翻译(Lexically Constrained Translation)而言,在不干预的情况下让
模型直接翻译出正确术语是很难的,因为术语的译文很可能是未登录词,因此必须
人为提供额外的术语词典,那么我们的目标就是让模型的翻译输出遵守用户提供的
术语约束。这个过程如图18.3所示。
源文
小牛翻译的总部在哪里?
译文
Where is the headquarters
of NiuTrans?
“小牛翻译”=“NiuTrans”
图 18.3 词汇约束翻译过程
在统计机器翻译中,翻译本质上是由短语和规则构成的推导,因此修改译文比
较容易,比如,可以在一个源语言片段所对应的翻译候选集中添加希望得到的译文。
而神经机器翻译是一个端到端模型,翻译过程本质上是连续空间中元素的一系列映
射、组合和代数运算。虽然在模型训练阶段仍然可以通过修改损失函数等手段引入
约束,但是在推断阶段进行直接干预并不容易,因为我们无法像修改符号系统那样