Coursera 笔记

Module 03 · Sequence Models & Attention Mechanism

Bleu Score (Optional)BLEU 分数(可选)

Coursera ↗

在机器翻译(Machine Translation, MT)中,一个常见的挑战是给定一个法语句子,可能有多个等同的英语翻译,这些翻译都是该法语句子的正确翻译。那么,如果有多个翻译结果,如何评价一个机器翻译系统的好坏呢?与图像识别等领域不同,图像识别通常只有一个正确答案,我们可以通过准确率来衡量。而在机器翻译中,存在多个合理答案时,如何衡量其准确性呢?这种情况下,通常使用 BLEU 分数 来进行评估。

什么是 BLEU 分数?

BLEU(Bilingual Evaluation Understudy)分数是一种自动评估机器翻译质量的指标。它的工作原理是:如果机器翻译的结果与人类参考翻译结果足够相似,就会得到较高的 BLEU 分数。实际上,BLEU 分数是用来自动评估机器翻译系统输出结果质量的一个“替代品”,可以避免每次都需要人工评估每个翻译结果。

BLEU 由 Kishore Papineni, Salim Roukos, Todd Ward, 和 Wei-Jing Zhu 提出的,并成为机器翻译领域的一个重要标准。


BLEU 分数的计算方法

示例:法语句子与参考翻译

假设你有一个法语句子:

法语句子:Le chat est sur le tapis
参考翻译:The cat is on the mat

然而,这个法语句子也可以有多种不同的翻译。例如,另一位人类翻译者可能会翻译为:

另一参考翻译:There is a cat on the mat

这两种翻译都非常合理,且都是正确的。

BLEU 分数的基本计算过程

基本思路:

  • BLEU 分数的基本思路是:给定机器翻译的输出,检查它所生成的单词是否出现在参考翻译中。
  • 如果机器翻译的输出与参考翻译中的单词有较高的重合度,那么机器翻译得分就会较高。

计算精度(Precision):

精度是指机器翻译输出中,有多少单词出现在至少一个参考翻译中。比如,如果机器翻译输出是“the the the the the”,那么这实际上是一个很差的翻译,但是计算精度时,系统会检查每个单词是否出现在参考翻译中。假设“the”在所有参考翻译中都出现过,那么精度就很高,但这并不能反映出翻译的质量。


修改过的精度度量

为了避免机器翻译系统输出重复单词时过度计算精度,BLEU 分数采用了 修改精度(modified precision)的概念。每个单词最多只会被计算一次,基于它在参考翻译中出现的最大次数。例如,假设“the”在参考翻译中最多出现 2 次,那么无论机器翻译输出多少次“the”,我们都会将其计为 2 次。

例子:

假设机器翻译输出了 7 个“the”单词,而参考翻译中“the”最多只出现 2 次,那么修改后的精度就是:


引入N-gram评估

为了更加全面地评估翻译的质量,BLEU 分数不仅仅考虑单个单词,还会考虑 N-gram,即多个相邻的单词组合,通常包括:

  • Unigrams(单个词)
  • Bigrams(双词组)
  • Trigrams(三词组)
  • 更长的 N-gram(例如四元组等)

Unigrams(单词)精度

Unigrams 指的是单个单词的精度。通过计算机器翻译输出中的单词和参考翻译中单词的匹配情况来得到精度。

例如,假设机器翻译的输出为:

  • 机器翻译输出:“the cat is on the mat”

参考翻译为:

  • 参考翻译 1:“The cat is on the mat”
  • 参考翻译 2:“There is a cat on the mat”

计算 unigram 精度时,首先检查机器翻译输出的每个单词是否在参考翻译中出现:

  • "the"(出现在参考翻译中)
  • "cat"(出现在参考翻译中)
  • "is"(出现在参考翻译中)
  • "on"(出现在参考翻译中)
  • "the"(再次出现在参考翻译中)
  • "mat"(出现在参考翻译中)

此时,所有单词都出现在参考翻译中,因此精度为 1.0。

Unigram 精度公式:


Bigrams(双词组)精度

Bigrams 是指连续两个单词的组合。在计算 bigram 精度时,我们不仅仅关注单个单词,而是关注两个单词是否在参考翻译中有出现。

例如,机器翻译输出为:

  • 机器翻译输出:“The cat is on the mat”

可能的 bigrams(双词组)为:

  • “The cat”
  • “Cat is”
  • “Is on”
  • “On the”
  • “The mat”

然后我们将这些 bigrams 与参考翻译中的相应 bigrams 进行比较,并计算它们的精度。


最终的 BLEU 分数公式

最终的 BLEU 分数 是由多个 N-gram 的修改精度综合得出的。具体而言:

  • 计算过程中通常会使用 1-gram, 2-gram, 3-gram, 和 4-gram 的精度(即P1, P2, P3, P4)。

然后将这些 N-gram 的修改精度取 平均值,得到一个数值。公式为:

这部分计算得到的 BLEU 分数是基于修改精度的加权平均。

Brevity Penalty(BP):

在 BLEU 评分中,还考虑了 简短翻译惩罚(Brevity Penalty, BP)。如果机器翻译的句子比参考翻译短,那么 BLEU 分数会受到惩罚。该公式为:

应用 BLEU 分数的场景

BLEU 分数广泛应用于机器翻译、图像标注等多个领域。比如在图像标注(Image Captioning)中,可以使用 BLEU 分数来评估自动生成的图像描述与人工描述的相似度。

结语

BLEU 分数为机器翻译等文本生成任务提供了一种高效、自动化的评估方式。尽管 BLEU 分数并非完美,但它为评估系统的输出质量提供了一个实用的参考。

总之,BLEU 分数的革命性意义在于,它为机器翻译领域提供了一个单一的、量化的评估标准,帮助推动了整个领域的发展。希望这段视频能让你对 BLEU 分数的工作原理有一个清晰的了解!