机器翻译与自动文摘评价指标 BLEU 和 ROUGE

BLEU和ROUGE是常用的机器翻译和自动文摘评价指标,BLEU基于精确率,而ROUGE基于召回率。BLEU计算不同gram的精确率,ROUGE则计算N-gram召回率和最长公共子序列。两者都有各自的优缺点,在评估模型性能时经常一起使用。
摘要由CSDN通过智能技术生成

机器翻译与自动文摘评价指标 BLEU 和 ROUGE

在机器翻译任务中,BLEU 和 ROUGE 是两个常用的评价指标,BLEU 根据精确率(Precision)衡量翻译的质量,而 ROUGE 根据召回率(Recall)衡量翻译的质量。

1.机器翻译评价指标

使用机器学习的方法生成文本的翻译之后,需要评价模型翻译的性能,这就要用到一些机器翻译评价指标,其中比较常见的评价指标有 BLEU 和 ROUGE。这两个指标具有比较旧的历史,BLEU 是 2002 年提出的,而 ROUGE 是 2003 年提出的。这两种指标虽然存在着一些问题,但是仍然是比较主流的机器翻译评价指标。

一般用 C 表示机器翻译的译文,另外还需要提供 m 个参考的翻译 S1S2, ..., Sm。评价指标就可以衡量机器翻译的 C 和参考翻译 S1S2, ..., Sm 的匹配程度。

2.BLEU

BLEU 的全称是 Bilingual evaluation understudy(双语评估替补,BLEU 的分数取值范围是 0~1,分数越接近1,说明翻译的质量越高。BLEU 主要是基于精确率(Precision)的,下面是 BLEU 的整体公式。

BLEU

  • BLEU 需要计算译文 1-gram,2-gram,...,N-gram 的精确率,一般 N 设置为 4 即可,公式中的 Pn 指 n-gram 的精确率。
  • Wn 指 n-gram 的权重,一般设为均匀权重,即对于任意 n 都有 Wn = 1/N。
  • BP 是惩罚因子,如果译文的长度小于最短的参考译文,则 BP 小于 1。
  • BLEU 的 1-gram 精确率表示译文忠于原文的程度,而其他 n-gram 表示翻译的流畅程度。

2.1 n-gram 精确率计算

假设机器翻译的译文 C 和一个参考翻译 S1 如下:

C: a cat is on the table
S1: there is a cat on the table 

则可以计算出 1-gram,2-gram,... 的准确率

n-gram precision

直接这样子计算 Precision 会存在一些问题,例如:

C: there there there there there
S1: there is a cat on the table 

这时候机器翻译的结果明显是不正确的,但是其 1-gram 的 Precision 为1,因此 BLEU 一般会使用修正的方法。给定参考译文 S1S2, ..., Sm,可以计算 C 里面 n 元组的 Precision,计算公式如下:

n-gram precision

2.2 惩罚因子

上面介绍了 BLEU 计算 n-gram 精确率的方法, 但是仍然存在一些问题,当机器翻译的长度比较短时,BLEU 得分也会比较高,但是这个翻译是会损失很多信息的,例如:

C: a cat
S1: there is a cat on the table 

因此需要在 BLEU 分数乘上惩罚因子

BLEU 分数惩罚因子

3.ROUGE

ROUGE 指标的全称是 (Recall-Oriented Understudy for Gisting Evaluation),主要是基于召回率 (recall) 的。ROUGE 是一种常用的机器翻译和文章摘要评价指标,由 Chin-Yew Lin 提出,其在论文中提出了 4 种 ROUGE 方法:

  • ROUGE-N: 在 N-gram 上计算召回率
  • ROUGE-L: 考虑了机器译文和参考译文之间的最长公共子序列
  • ROUGE-W: 改进了ROUGE-L,用加权的方法计算最长公共子序列

3.1 ROUGE-N

ROUGE-N 主要统计 N-gram 上的召回率,对于 N-gram,可以计算得到 ROUGE-N 分数,计算公式如下:

ROUGE-N

公式的分母是统计在参考译文中 N-gram 的个数,而分子是统计参考译文与机器译文共有的 N-gram 个数。

C: a cat is on the table
S1: there is a cat on the table 

上面例子的 ROUGE-1 和 ROUGE-2 分数如下:

ROUGE-1 ROUGE-2

如果给定多个 参考译文 Si,Chin-Yew Lin 也给出了一种计算方法,假设有 M 个译文 S1, ..., SM。ROUGE-N 会分别计算机器译文和这些参考译文的 ROUGE-N 分数,并取其最大值,公式如下。这个方法也可以用于 ROUGE-L,ROUGE-W 和 ROUGE-S。

ROUGE-N Multi

3.2 ROUGE-L

ROUGE-L 中的 L 指最长公共子序列 (longest common subsequence, LCS),ROUGE-L 计算的时候使用了机器译文 C 和参考译文 S 的最长公共子序列,计算公式如下:

ROUGE-L

公式中的 R_LCS 表示召回率,而 P_LCS 表示精确率,F_LCS 就是 ROUGE-L。一般 beta 会设置为很大的数,因此 F_LCS 几乎只考虑了 R_LCS (即召回率)。注意这里 beta 大,则 F 会更加关注 R,而不是 P,可以看下面的公式。如果 beta 很大,则 P_LCS 那一项可以忽略不计。

3.3 ROUGE-W

ROUGE-W 是 ROUGE-L 的改进版,考虑下面的例子,X 表示参考译文,而 Y1Y2 表示两种机器译文。

ROUGE-W

在这个例子中,明显 Y1 的翻译质量更高,因为 Y1 有更多连续匹配的翻译。但是采用 ROUGE-L 计算得到的分数确实一样的,即 ROUGE-L(XY1)=ROUGE-L(XY2)。

因此作者提出了一种加权最长公共子序列方法 (WLCS),给连续翻译正确的更高的分数,具体做法可以阅读原论文《ROUGE: A Package for Automatic Evaluation of Summaries》。

3.4 ROUGE-S

ROUGE-S 也是对 N-gram 进行统计,但是其采用的 N-gram 允许"跳词 (Skip)",即单词不需要连续出现。例如句子 "I have a cat" 的 Skip 2-gram 包括 (I, have),(I, a),(I, cat),(have, a),(have, cat),(a, cat)。

4.参考文献

Bleu: a method for automatic evaluation of machine translation
ROUGE: A Package for Automatic Evaluation of Summaries

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AI生成曾小健

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值