Bootstrap

《BLEU: a Method for Automatic Evaluation of Machine Translation》翻译

0. 摘要

对机器翻译进行的人工评估虽然全面,但成本高昂。人工评估可能需要数月才能完成,并且涉及无法重复使用的人力劳动。我们提出了一种自动化的机器翻译评估方法,该方法快速、廉价、与语言无关,与人工评估高度相关,并且每次运行的边际成本很低。我们将这种方法作为熟练人类评审员的自动替代,当需要快速或频繁评估时,可以替代他们进行评估。

1. 引言

1.1 理由

对机器翻译(MT)的人工评估权衡了翻译的许多方面,包括翻译的充分性、忠实度和流畅性(Hovy, 1999;White 和 O’Connell, 1994)。Reeder(2001)提供了一个全面的机器翻译评估技术目录及其丰富的文献。大多数情况下,这些不同的人工评估方法都相当昂贵(Hovy, 1999)。此外,它们可能需要数周或数月才能完成。这是一个大问题,因为机器翻译系统的开发者需要监控系统的日常变化效果,以便从中筛选出好的想法并剔除坏的想法。我们相信,机器翻译的进步源于评估,而目前有大量有益的研究思路因评估瓶颈而无法释放。开发者将从一种廉价、快速、与语言无关且与人工评估高度相关的自动评估中受益。在本文中,我们提出了这样一种评估方法。

1.2 观点

如何衡量翻译性能?机器翻译越接近专业人类翻译,效果越好。这是我们提案的核心思想。为了判断机器翻译的质量,我们使用数值指标来测量其与一个或多个参考人类翻译的接近程度。因此,我们的 MT 评估系统需要两个组件:

  1. 数值的「翻译接近度」指标
  2. 高质量人类参考翻译的语料库

我们将接近度指标设计成类似于语音识别领域广泛使用的词错误率指标,适当地修改以适应多参考翻译,并允许在词汇选择和词序上的合理差异。主要思想是使用加权平均的可变长度短语匹配来对比参考翻译。这种方法催生了一系列使用不同加权方案的指标。我们从中选择了一个有前景的基准指标。

在第 2 节中,我们详细描述了基准指标。在第 3 节中,我们评估了 BLEU 的性能。在第 4 节中,我们描述了一项人类评估实验。在第 5 节中,我们将基准指标的性能与人类评估进行了比较。

2. 基准 BLEU 指标

通常,给定一个源句子,存在许多「完美」的翻译,这些翻译在词汇选择或顺序上可能有所不同,即使使用相同的词。然而,人类可以清楚地区分好的翻译和差的翻译。例如,考虑以下两个中文源句子的候选翻译:

例1:

  • 候选1: It is a guide to action which ensures that the military always obeys the commands of the party.
  • 候选2: It is to insure the troops forever hearing the activity guidebook that party direct.

虽然它们看起来是关于同一主题,但质量差异显著。为了比较,这里有三个相同句子的参考人类翻译:

  • 参考1: It is a guide to action that ensures that the military will forever heed Party commands.
  • 参考2: It is the guiding principle which guarantees the military forces always being under the command of the Party.
  • 参考3: It is the practical guide for the army always to heed the directions of the party.

候选 1 与这三个参考翻译共享许多词和短语,而候选 2 则没有。我们将在第 2.1 节中量化这种共享的概念。例如,候选 1 与参考 1 共享「It is a guide to action」,与参考 2 共享「which」,与参考 1 共享「ensures that the military」,与参考 2 和 3 共享「always」,与参考1共享「commands」,以及与参考 2 共享「of the party」(忽略大小写)。相比之下,候选 2 的匹配显著少且程度较低。

显然,只需比较每个候选翻译与参考翻译之间的 n-gram 匹配,一个程序就可以将候选翻译 1 排在候选翻译 2 之前。第 5 节中展示的大量翻译集合的实验表明,这种排名能力是一种普遍现象,而不是几个简单例子的产物。对 于BLEU 实现者来说,主要的编程任务是比较候选翻译的 n-gram 与参考翻译的 n-gram,并计算匹配的数量。这些匹配是位置无关的。匹配越多,候选翻译就越好。为了简化起见,我们首先关注计算单词匹配(unigram matches)。

2.1 修正的 n-gram 精度

我们指标的基石是熟悉的精度测量。要计算精度,需要计算出现在任何参考翻译中的候选翻译词(unigrams)的数量,并除以候选翻译中的总词数。然而,MT 系统可能会过度生成「合理」的词,导致不太可能但高精度的翻译。为了解决这个问题,我们引入了修正的unigram 精度。这涉及计算一个词在任何单个参考翻译中出现的最大次数,将每个候选词的总计数剪切到其最大参考计数,汇总这些剪切后的计数,并除以候选词的总数。

例2:

  • 候选: the the the the the the the.
  • 参考1: The cat is on the mat.
  • 参考2: There is a cat on the mat.

修正的 Unigram 精度 = 2/7。

在例 1 中,候选 1 的修正 unigram 精度为 17/18,而候选 2 的修正 unigram 精度为 8/14。同样,例 2 中的候选的修正 unigram 精度为 2/7,尽管其标准 unigram 精度为 7/7。

修正的 n-gram 精度对于任何 n 的计算方式类似:收集所有候选 n-gram 计数及其对应的最大参考计数,按其对应的参考最大值剪切,汇总,并除以候选 n-gram 的总数。在例 1 中,候选 1 的修正 bigram 精度为 10/17,而候选 2 的修正 bigram 精度为 1/13。在例 2 中,候选的修正 bigram 精度为0。

这种修正的 n-gram 精度评分捕捉了翻译的两个方面:充分性和流畅性。使用与参考相同词(1-grams)的翻译倾向于满足充分性,而更长的 n-gram 匹配则考虑了流畅性。

2.1.1 对文本块的修正 n-gram 精度

为了在多句测试集中计算修正的 n-gram 精度,我们在整个文档的语料库上评估 MT 系统,但我们的基本评估单位是句子。我们逐句计算 n-gram 匹配,汇总所有候选句子的剪切 n-gram 计数,并除以测试语料库中的候选 n-gram 总数,以计算整个测试语料库的修正精度得分,( p n p_n pn )。

p n = ∑ C ∈ { C a n d i d a t e s } ∑ n - g r a m ∈ C C o u n t c l i p ( n - g r a m ) ∑ C ′ ∈ { C a n d i d a t e s } ∑ n - g r a m ′ ∈ C ′ C o u n t ( n - g r a m ′ ) p_n = \frac{\sum_{C \in \{Candidates\}} \sum_{n\text{-}gram \in C} Count_{clip}(n\text{-}gram)}{\sum_{C' \in \{Candidates\}} \sum_{n\text{-}gram' \in C'} Count(n\text{-}gram')} pn=C{Candidates}n-gramCCount(n-gram)C{Candidates}n-gramCCountclip(n-gram)

2.1.2 仅使用修正 n-gram 精度对系统进行排序

为了验证修改后的 n-gram 精度能否区分非常好的翻译和不好的翻译,我们计算了一个(优秀的)人类译者和一个标准(较差的)机器翻译系统的修改精度数值,每个系统对 127 个源语句分别使用了 4 个参考翻译。平均精度结果如图 1 所示。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

区分人类翻译(高精度)和机器翻译(低精度)的强烈信号非常明显。随着从单字精度到四字精度的增加,这种差异变得更加显著。似乎任何单一的 n-gram 精度分数都可以区分出好的翻译和差的翻译。然而,为了有用,该指标还必须能够可靠地区分质量差异不大的翻译。此外,它必须能够区分两个质量不同的人类翻译。后一个要求确保了当机器翻译(MT)接近人类翻译质量时,指标的持续有效性。

为此,我们获得了一份由缺乏母语水平的译者(在源语言中文和目标语言英文上都不具备母语水平)进行的人类翻译。作为对比,我们还获得了一份由母语为英语的译者翻译的相同文档。此外,我们还获得了三个商业系统的机器翻译。这五个「系统」(两个是人类译者,三个是机器系统)与两份专业人类翻译参考进行评分。图 2 显示了平均修正后的 n-gram 精度结果。

在这里插入图片描述

每一个 n-gram 统计数据都暗示了相同的排名:H2(人类译者2)优于H1(人类译者1),而 H1 和 S3(机器/系统 3)之间的质量有很大差距。S3 似乎优于 S2,而 S2 又优于 S1。值得注意的是,这与我们稍后讨论的人类评审员对这些「系统」分配的排名顺序完全一致。尽管任何单一的 n-gram 精度都提供了充足的信号,但将所有这些信号合并成一个单一的数值指标会更加稳健。

2.1.3 结合修正的 n-gram 精度

我们应该如何结合不同 n-gram 大小的修正精度呢?对这五个系统来说,修正精度的加权线性平均得出了令人鼓舞的结果。然而,如图 2 所示,修正 n-gram 精度随着 n 的增加大致呈指数衰减:修正单字精度远大于修正双字精度,修正双字精度又远大于修正三字精度。一个合理的平均方案必须考虑到这种指数衰减;对修正精度的对数进行加权平均满足了这一要求。

BLEU 使用均匀权重的对数平均,这相当于使用修正 n-gram 精度的几何平均值。通过实验,我们发现使用最大 n-gram 阶数为4时,与单语人类评判的相关性最好,尽管 3-gram 和 5-gram 也给出了相似的结果。

2.2 句子长度

候选翻译不应过长或过短,评价指标应强制执行这一点。在某种程度上,n-gram 精度已经实现了这一点。n-gram 精度会对候选翻译中出现但在任何参考翻译中都不存在的多余词语进行惩罚。此外,如果一个词在候选翻译中出现的频率超过其在参考翻译中的最大出现次数,修正精度也会受到惩罚。这奖励了适当使用词语的次数,并惩罚了超过参考翻译中出现次数的使用。然而,仅靠修正 n-gram 精度不足以强制执行适当的翻译长度,正如下面这个简短且荒谬的例子所示。

例子3:
候选翻译: of the
参考翻译1: It is a guide to action that ensures that the military will forever heed Party commands.
参考翻译2: It is the guiding principle which guarantees the military forces always being under the command of the Party.
参考翻译3: It is the practical guide for the army always to heed the directions of the party.

由于这个候选翻译与适当长度相比太短,人们预期会发现夸大的精度:修正单字精度是 2/2,修正双字精度是 1/1。

2.2.1 召回率的问题

传统上,精度与召回率配对使用以克服此类与长度相关的问题。然而,BLEU 评估指标考虑了多个参考翻译,每个参考翻译可能使用不同的词汇来翻译相同的源词。此外,一个好的候选翻译只会使用(召回)这些可能选择中的一个,而不会使用全部。实际上,召回所有选择会导致糟糕的翻译。

以下是一个例子。

例子4
候选翻译1: I always invariably perpetually do.
候选翻译2: I always do.
参考翻译1: I always do.
参考翻译2: I invariably do.
参考翻译3: I perpetually do.

第一个候选翻译从参考翻译中召回了更多的词,但显然比第二个候选翻译差得多。因此,简单地计算所有参考词汇的召回率并不是一个好的衡量标准。诚然,可以通过对齐参考翻译来发现同义词,并基于概念而不是词汇来计算召回率。但是,考虑到参考翻译在长度、词序和句法上存在差异,这样的计算是复杂的。

2.2.2 句子简短惩罚

候选翻译比参考翻译更长的情况已经通过修正的 n-gram 精度度量得到了惩罚:因此无需再次惩罚它们。因此,我们引入了一个乘法的简短惩罚因子。有了这个简短惩罚,一个高分的候选翻译现在必须在长度、词汇选择和词序上与参考翻译匹配。需要注意的是,这个简短惩罚和修正的 n-gram 精度长度效应都不直接考虑源文本的长度;相反,它们考虑的是目标语言中参考翻译的长度范围。

我们希望当候选翻译的长度与任何参考翻译的长度相同时,简短惩罚为 1.0。例如,如果有三个参考翻译,长度分别为 12、15 和 17 个词,而候选翻译简短为 12 个词,我们希望简短惩罚为1。我们将最接近的参考句子长度称为「最佳匹配长度」。

还有一个考虑因素:如果我们逐句计算简短惩罚并取平均值,那么短句子的长度偏差会被严厉惩罚。因此,我们在整个语料库上计算简短惩罚,以允许句子层面上有一些自由度。我们首先通过对语料库中每个候选句子的最佳匹配长度求和来计算测试语料库的有效参考长度 r。我们选择简短惩罚为 r/c 的指数衰减,其中 c 是候选翻译语料库的总长度。

2.3 BLEU 细节

我们取测试语料库修正精度分数的几何平均值,然后将结果乘以一个指数形式的简短惩罚因子。目前,在计算精度之前进行的唯一文本规范化操作是大小写折叠。

首先,我们计算使用长度为 N 的 n-gram 和正权重 ( w n w_n wn)(权重和为1)得到的修正 n-gram 精度 ( p n p_n pn) 的几何平均值。接下来,设候选翻译的长度为 (c),有效参考语料库长度为 (r)。我们计算简短惩罚因子 (BP):

B P = { 1 if  c > r e ( 1 − r / c ) if  c ≤ r BP = \begin{cases} 1 & \text{if } c > r \\ e^{(1 - r/c)} & \text{if } c \leq r \end{cases} BP={1e(1r/c)if c>rif cr

然后,BLEU 分数计算公式为:

BLEU = B P ⋅ exp ⁡ ( ∑ n = 1 N w n log ⁡ p n ) \text{BLEU} = BP \cdot \exp \left( \sum_{n=1}^{N} w_n \log p_n \right) BLEU=BPexp(n=1Nwnlogpn)

在对数域中,排名行为更为明显:

log ⁡ BLEU = min ⁡ ( 1 − r c , 0 ) + ∑ n = 1 N w n log ⁡ p n \log \text{BLEU} = \min\left(1 - \frac{r}{c}, 0\right) + \sum_{n=1}^{N} w_n \log p_n logBLEU=min(1cr,0)+n=1Nwnlogpn

在我们的基线中,我们使用 (N = 4) 和均匀权重 ( w n w_n wn = 1/N)。

3. BLEU 评估

BLEU 指标的范围是从 0 到 1。除非候选翻译与参考翻译完全一致,否则很少有翻译能获得 1分。出于这个原因,即使是人类译者也不一定能得满分。需要注意的是,每句参考翻译越多,得分就越高。因此,在评估中,即使是「粗略」的比较,也必须谨慎对待不同数量的参考翻译:在一个包含大约 500 句(40 篇一般新闻报道)的测试语料库上,一名人类译者对四个参考翻译的得分为 0.3468,对两个参考翻译的得分为 0.2571。表1 显示了五个系统在该测试语料库上对两个参考翻译的 BLEU 得分。

在这个指标上,机器翻译系统 S2 和 S3 非常接近。因此,出现了几个问题:

在这里插入图片描述

  • BLEU 指标的差异是否可靠?
  • BLEU 得分的方差是多少?
  • 如果我们选择另一组随机的 500 句,是否仍然认为 S3 优于 S2?

为了回答这些问题,我们将测试语料库分成 20 个包含 25 句的块,分别计算这些块上的BLEU 指标。这样,我们就有了每个系统的 20 个 BLEU 指标样本。我们计算了均值、方差和配对 t 统计量,这些结果显示在表 2 中。t 统计量比较了表中每个系统与其左邻系统的得分。例如,S1 和 S2 的配对 t 统计量为 6。

需要注意的是,表 1 中的数字是基于 500 句的总体 BLEU 指标,但表 2 中的均值是基于 25句块的 BLEU 指标的平均值。正如预期的那样,对于每个系统,这两组结果非常接近,仅因有限块大小效应而略有不同。由于配对 t 统计量为 1.7 或以上时具有 95% 的显著性,系统得分之间的差异在统计上非常显著。25 句块上的报告方差作为像 500 句语料库这样的大型测试集方差的上限。

我们需要多少参考翻译?我们通过随机选择四个参考翻译中的一个作为每个40个故事的单一参考,模拟了一个单一参考的测试语料库。通过这种方式,我们确保了一定的风格变化。系统保持了与多个参考翻译相同的排名顺序。这一结果表明,我们可以使用一个具有单一参考的大型测试语料库,前提是这些翻译不是全部来自同一个译者。

4. 人类评估

我们有两组人类评审。第一组称为单语组,由 10 名以英语为母语的评审组成。第二组称为双语组,由 10 名以中文为母语且在过去几年中生活在美国的评审组成。这些人类评审中没有一位是专业翻译员。人类评审对我们 5 个标准系统的中文句子子集进行了评估,这些句子是从我们的 500 句测试语料库中随机抽取的。我们将每个源句子与其 5 个翻译配对,总共形成 250 对中文源句和英文翻译对。我们准备了一个包含这些翻译对的网页,这些翻译对被随机排序,以分散每个源句子的五个翻译。所有评审都使用同一个网页,并按照相同的顺序查看句子对。他们对每个翻译进行评分,评分范围从1(非常差)到5(非常好)。单语组的评审仅根据翻译的可读性和流畅性进行判断。

正如预期的那样,有些评审比其他评审更宽松,而有些句子比其他句子更容易翻译。为了考虑评审和句子之间的固有差异,我们比较了每个评审在各系统中对同一句子的评分。我们对按其总体平均得分排序的相邻系统进行了四次成对 t 检验比较。

4.1 单语组配对判断

图3 显示了两个连续系统得分之间的平均差异及其 95% 置信区间。我们可以看到,S2 比 S1好很多(在 5 分制上平均意见得分差异为 0.326),而 S3 被认为稍好一些(差异为0.114)。这两个差异在 95% 置信水平上都是显著的。人类评审 H1 比最好的系统要好得多,但略逊于人类评审 H2。这并不令人惊讶,因为 H1 既不是中文母语者也不是英文母语者,而 H2 是英语母语者。同样,人类译者之间的差异在 95% 置信水平上也是显著的。

在这里插入图片描述

4.2 双语组配对判断

图 4 显示了双语组的相同结果。他们同样发现 S3 略优于 S2(在 95% 置信水平上),尽管他们认为人类翻译之间的差异要小得多(在 95% 置信水平上不可区分),这表明双语评审更倾向于关注翻译的准确性而非流畅性。

在这里插入图片描述

5. BLEU与人类评估

图 5 显示了单语组评分相对于 5 个系统的 BLEU 得分的线性回归。高达 0.99 的相关系数表明 BLEU 得分很好地反映了人类的判断。特别有趣的是,BLEU 得分能够很好地区分 S2 和S3,尽管它们非常接近。图 6 显示了双语组的相应回归结果,相关系数为 0.96。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在这里插入图片描述

我们现在将最差的系统作为参考点,比较其余系统相对于最差系统的 BLEU 得分和人类评审得分。我们对这 5 个系统的 BLEU 得分、单语组和双语组得分进行了线性归一化处理(根据5 个系统的最大和最小得分范围)。归一化后的得分如图 7 所示。该图展示了 BLEU 得分与单语组得分之间的高度相关性。特别值得注意的是,BLEU 对 S2 和 S3 之间小差异以及 S3 和 H1 之间较大差异的估计非常准确。图中还突出了机器翻译系统与人类译者之间的相对较大差距。

此外,我们推测双语组在评估 H1 相对于 H2 时相当宽容,因为单语组发现他们的翻译在流畅性上存在相当大的差异。

在这里插入图片描述

6. 结论

我们相信,BLEU 将通过帮助研究人员迅速聚焦于有效的建模思路,加速机器翻译研发周期。我们这一信念得到了最近一项统计分析的支持,该分析研究了 BLEU 与人类评判在从四种截然不同的语言(阿拉伯语、中文、法语、西班牙语)翻译成英语时的相关性,这四种语言代表了三种不同的语言家族(Papineni等,2002)。BLEU 的优势在于,它通过在测试语料库上平均化单个句子的评判误差,而不是试图精确预测每个句子的人类评判,从而与人类评判高度相关:量变引起质变。

最后,由于机器翻译和摘要都可以看作是从文本上下文生成自然语言的过程,我们认为 BLEU 可以被改编用于评估摘要或类似的自然语言生成任务。

7. 碎碎念

借助 ChatGPT 的帮助,又大致的对 BLEU 评分的论文做了一次梳理,ChatGPT 真香!

  • 我可以否认一样东西,但不一定非得诋毁它,或者剥夺别人相信的权利。

  • 你可以阴郁,可以懒散,可以不时地计较,过分敏感,可以有些不知足,暴躁,嫉妒,小气,但要记得拷问自我,必须追求善良,尽力坦荡,永远正直。

  • 在你还年轻的时候,你的选择没有对错之分,所有的选择都是对的,对于选择的结果,只是好与更好的差别。

;