BLEU:另一个时代被误解的指标

但至今仍在人工智能研究中使用

蓝色的墙—— 图片来自

GPT-3, 耳语, 棕榈, NLLB, 水果馅饼以及许多其他模型都使用 BLEU 度量进行了评估,以证明它们在某些任务中具有优越性。

但 BLEU 到底是什么?它是如何工作的?

在本文中,我们将回顾 20 年前,揭示 BLEU 诞生并使其成为一个非常成功的指标的主要原因。我们将通过一些示例来了解 BLEU 的工作原理。我还将强调该指标的主要限制,并提供有关如何使用它的建议。

本文被认为是 BLEU 的介绍,但对于那些习惯而不是需要使用 BLEU 的经验丰富的 NLP/AI 从业者来说也可以是一个很好的提醒。

2001 年,Kishore Papineni、Salim Roukos、Todd Ward 和 Wei-Jing Zhu 共同撰写的 IBM 研究报告中首次描述了 BLEU。他们发表了 描述它的科学论文 一年后,在 ACL 2002 上,该文章被引用的次数要多得多,而且很容易找到。

BLEU 最初被提议作为评估机器翻译 (MT) 的自动指标。

2001 年,机器翻译系统仍然主要是手动评估,或者使用较旧的自动指标,例如 WER(字错误率)。 WER 是一种受 Levenshtein 距离启发的度量标准,至今仍用于评估语音识别系统。对于机器翻译评估,WER 可以被视为 BLEU 的祖先。 BLEU的作者表述如下:

我们根据语音识别社区使用的非常成功的单词错误率指标来设计我们的紧密度指标

与 WER 一样,BLEU 是衡量 文本与人类生成的参考文本有多接近,例如参考翻译。

翻译是一项具有多个正确解决方案的任务,BLEU 的作者设计了他们的指标,以便它可以处理多个参考翻译。这在当时并不新鲜,因为 WER 已经转变为“mWER”来处理多个引用。据我所知,它是由 阿尔沙维等人。 (1998) 来自 AT&T 实验室。

值得注意的是,在介绍 BLEU 的整篇论文中,作者始终假设其指标使用多个参考翻译。他们简要讨论了仅在某些情况下使用单一参考翻译才是正确的:

我们可以使用带有单个参考翻译的大型测试语料库,前提是这些翻译并非全部来自同一译者。

相比之下,现在大多数研究论文都使用 BLEU 单一参考,通常来自 来历不明,和 各种任务,即不仅仅是翻译。

自 2001 年以来,BLEU 至少可以说是一个非常成功的指标。这部分是由于其 廉价的计算成本BLEU 分数的再现性, 与人工评估相反,人工评估的结果可能会因评估者和评估框架的不同而有很大差异。

BLEU 现在是 几乎 100% 的机器翻译研究论文中使用 并已很大程度上扩展到其他自然语言生成任务。

更准确地说,BLEU 评估翻译的 n 元语法的效果如何 匹配 n 元语法 来自一组参考翻译,同时 如果机器翻译较短或较长,则对其进行惩罚 比参考译文。

一些定义:

An 正克 是一个标记序列。我们还在这里定义一个 象征 是由空格任意分隔的字符序列。例如,“令牌不是单词”这句话。通常会被标记为“标记不是单词”。我们将在本文后面详细讨论代币化的极其重要的作用。

为了了解 BLEU 的实际效果,我借用了 BLEU 论文中的一个中文句子(作者未提供)翻译成英文的例子。我们有以下 2 个由机器翻译生成的翻译:

图片作者

以及人类提供的以下3个参考翻译:

图片作者

我们想要用 BLEU 回答的问题是:

哪个翻译与给定的参考翻译最接近?

我突出显示了两个候选翻译中参考翻译所涵盖的所有 n 元语法。

图片作者

候选 1 从参考翻译中覆盖了更多的 n 元语法,并且由于其长度(标记数量)也与参考翻译的长度合理匹配,因此它将获得比候选 2 更高的 BLEU 分数。这里 BLEU 是正确的,因为候选 1确实比候选人 2 更好。

通过这个例子,我们可以看到 BLEU 的一些明显的局限性。不考虑评估翻译的含义。 BLEU 仅搜索与参考翻译的标记完全匹配的内容。

例如, ”确保候选 2 中的“”不在参考翻译中,但是“确保“ 是。自从 ”确保” 与 “ 并不完全相同确保”,尽管含义很接近,但 BLEU 并没有奖励它。

当我们仔细观察标点符号时,情况可能会更糟。例如,候选 2 以“.” 但该期间附加到“直接。” 形成一个单一的令牌。 “直接。” 不是参考翻译的标记。候选人 2 不会因正确包含该时期而获得奖励。

这就是为什么 BLEU 通常是根据被标记化以分割包含标点符号的标记的翻译来计算的。我们将在下一节中进一步讨论它。

为了简单起见,我不会讨论 BLEU 背后的方程。如果您有兴趣自己计算 BLEU,我邀请您阅读 BLEU 论文,其中所有方程都得到了充分的启发和解释。

我们看到 BLEU 非常严格,因为令牌应该与参考翻译中的令牌相同才能算作匹配。这就是标记化发挥非常重要作用的地方,但 经常被误解 作用。

标记化给出了一些 灵活性 到 BLEU。

例如,让我们再看看候选人 2:

一是确保部队永远听党指挥的活动指南。

但这一次,我们应用简单的标记化规则来将标点符号与单词分开。我们获得:

一是确保部队永远听党指挥的活动指南。

注意 ”.” 已与 “ 分离直接” 隔一个空格。这是唯一的区别。候选 2 现在与参考翻译中又匹配了一个标记。这个令牌是“.”。这看起来并不重要,因为这只是又一个标记,但这是一个非常常见的标记。这种标记化将对几乎所有句子产生影响,从而显着提高 BLEU 分数。

有无限数量的可能的标记化。例如,以下法语句子是英语的翻译,我对其应用了 5 种不同的标记器。 注:我用过 摩西 (开源,LGPL 许可证)和 圣蓝 (开源,Apache 许可证 2.0).

图片作者

这些是相同的句子,但由于它们的标记方式不同,因此它们将匹配参考翻译中的不同标记。所有这些标记化都会产生不同的 BLEU 分数,而翻译保持不变。

这就是为什么无法比较根据标记化不同或未知的翻译计算的两个 BLEU 分数的原因。

这是 经常被忽视 在当今的科学论文中。

您可以将标记化视为 BLEU 的参数。如果更改参数,就会更改度量。 无法比较两个不同指标的分数。

2001 年 BLEU 提出时,机器翻译的质量有很大差异。

为了让您了解这种差异,我尝试重新创建 2000 年代的法语到英语机器翻译系统。为此,我训练了一个基于单词的统计机器翻译系统。我用它做了 摩西。我将这个系统称为“统计 MT (2001)”。

然后,我使用普通 Transformer 模型训练了神经机器翻译系统。我用它做了 玛丽安 (开源,麻省理工学院许可证)。我将这个系统称为“神经 MT (2022)”。

他们生成的翻译如下。 注意:我突出显示了与参考翻译匹配的 n 元语法。

图片作者

正如预期的那样,统计机器翻译生成的翻译没有多大意义,尤其是在句子末尾。与神经机器翻译相比,它涵盖的参考翻译中的 n 元语法更少。另一方面,神经机器翻译生成的翻译看起来很完美(没有上下文),但它与参考翻译并不完全相同,因此会受到 BLEU 的惩罚。

2001 年,机器翻译系统生成的翻译通常毫无意义,而且存在明显的语法错误。他们因不匹配特定参考翻译而受到应有的惩罚。如今,神经机器翻译通常会生成非常流畅的翻译,尤其是对于法语-英语等“简单”语言对。他们经常会找到正确的翻译,但由于有很多可能的正确翻译,找到用作参考的确切翻译可能只是偶然。

这就是我们达到 BLEU 极限的地方,即使翻译正确,BLEU 也只会奖励完全匹配的内容。

BLEU 多年来一直引导着机器翻译研究的进展。在 NAACL 2018 上,BLEU 的作者获得了 经过时间考验的奖项.

BLEU 仍在人工智能的许多领域中使用,但只是出于习惯。现在,它在很大程度上优于自然语言生成任务的许多其他评估指标,包括机器翻译,例如 chrF, 布鲁尔特COMET.

尽管如此,BLEU 仍然是 非常好的诊断工具.

由于 BLEU 具有众所周知的行为,即我们知道特定翻译任务期望的 BLEU 级别,因此它可用于快速发现机器翻译系统的训练管道或其数据处理中的错误和其他问题。

无论如何,BLEU 不应该用于短文本。在实践中,机器翻译从业者总是对包含 1,000 多个句子的文本运行 BLEU。 BLEU 旨在评估文档翻译。它不应该被用来评估句子翻译。

至于 BLEU 的实现,许多都是公开的。 Hugging Face 有自己的实现 评估库. NLTK 还实现了 BLEU。还有 多蓝珀尔 摩西项目中的脚本。请注意,所有这些 BLEU 实现都是不同的,不会产生可比较的结果。我个人的建议是使用原来的实现 圣蓝 因为该工具旨在保证 BLEU 分数的可重复性和可比性。

如果您计划在下一份工作中使用 BLEU,请不要忽视测试结果的统计显着性的必要性。

支持我工作的最佳方式是使用我的链接成为 Medium 会员:

如果您已经是会员并想支持这项工作,只需 跟我来中.

BLEU:来自另一个时代的被误解的指标,通过 https://towardsdatascience 从来源 https://towardsdatascience.com/bleu-a-misunderstood-metric-from-another-age-d434e18f1b37?source=rss—-7f60cf5620c9—4 重新发布。 com/提要

–>

时间戳记:

更多来自 区块链顾问