ROUGE(面向召回率的摘要评估替代指标)是一系列自动评估指标,旨在评估机器生成的摘要和翻译的质量。它于2004年由南加州大学信息科学研究所的Chin-Yew Lin和Eduard Hovy提出。该指标系列通过将候选文本(机器生成的摘要)与一个或多个参考文本(通常为人工撰写的摘要)进行比较,并衡量词汇重叠程度,特别强调召回率(参考内容中有多少出现在候选文本中)。虽然早期指标如BLEU(于2002年为机器翻译开发)侧重于精确率,但ROUGE对召回率的侧重使其特别适用于摘要任务,因为在此类任务中,捕捉源文本中的所有要点至关重要。
ROUGE仍然是自然语言处理(NLP)中用于基准测试和开发摘要系统的标准工具之一,包括基于现代大型语言模型构建的系统。它被纳入DUC(文档理解会议)等主要共享任务中,并一直是人工评估的比较基准。尽管它存在已知的局限性,但其计算透明且简单,使其成为研究和工业界中常见的一线指标。
核心变体
ROUGE包含多种不同的指标,每种指标衡量文本重叠的不同方面。最常用的变体包括:
- ROUGE-N:衡量候选文本与参考文本之间n-gram(N个单词的连续序列)的重叠。ROUGE-1使用一元组(单个单词),ROUGE-2使用二元组(两个单词的序列),而ROUGE-3和ROUGE-4使用较少。ROUGE-N的公式是重叠n-gram的数量除以参考文本中n-gram的总数。ROUGE-1和ROUGE-2是最常报告的变体,经常出现在GEM基准测试和学术论文等排行榜上。
- ROUGE-L:基于最长公共子序列技术。它找出候选文本和参考文本中均出现的最长单词序列,该序列按顺序出现但不一定连续。此指标捕捉句子级结构并惩罚重新排序。ROUGE-L包括基于最长公共子序列(LCS)的召回率、精确率以及F值(两者的调和平均值)。
- ROUGE-W:ROUGE-L的加权版本,对连续匹配给予更多权重。它使用较少,但在短语级顺序对流畅性重要的任务中可能很关键。
- ROUGE-S:基于跳跃二元组的指标,允许句子顺序中的任意单词对,无论它们之间的距离如何。这捕捉了宽松的单词顺序。常见版本是ROUGE-SU,它额外包含一元组。ROUGE-S通常用于较长的摘要。
- ROUGE-SU:将ROUGE-S与一元组匹配相结合,当参考文本使用候选文本的同义词时很有用,并提供平衡的视角。
召回率、精确率和F值
虽然ROUGE的原始设计侧重于召回率,但该指标也可以计算为精确率(候选文本中匹配n-gram的数量与候选文本中总n-gram数量的比率)和F1分数(召回率和精确率的调和平均值)。标准脚本通常返回三组数字:ROUGE-1-R(召回率)、ROUGE-1-P(精确率)和ROUGE-1-F(F1)。实践者通常报告F1值作为单一汇总指标。然而,一些论文仅报告召回率,遵循原始定义,这可能具有误导性,因为生成冗长、啰嗦摘要的系统往往在召回率上得分更高。这是同时检查精确率和F1的关键动机。
计算示例
考虑一个参考摘要:“The cat sat on the mat”。候选摘要:“The cat is on the mat.”。对于ROUGE-1,使用词元(通常应用词干提取以将每个单词还原为其词根形式),重叠的一元组是'the'、'cat'、'on'、'mat'(注意'the'在两者中都出现,'sat'未出现)。如果去除停用词(停用词包括the、a、on),数字会改变。但正式地,ROUGE-1召回率 = (4) / (5个参考一元组:'the'、'cat'、'sat'、'on'、'the'计一次) = 4/5 = 0.8。精确率 = 4/5(候选文本有5个一元组:'the'、'cat'、'is'、'on'、'mat')= 0.8。F1 = (20.80.8)/(0.8+0.8) = 0.8。此示例展示了词汇重叠,但在同义词上失败('sat'与'was'会被忽略)。因此,也使用词干提取(Porter词干提取器),它基于规则将'sat'还原为'sat',但处理并不总是可靠。
历史与演变
ROUGE于2004年在一篇题为“Automatic Evaluation of Summaries Using N-gram Co-Occurrence Statistics”的论文中提出,该论文发表于第36届计算语言学协会年会论文集。Hovy和Lin为文档理解会议开发了它,该会议始于2001年,是自动摘要的年度评估。随着时间的推移,ROUGE成为自动摘要的标准自动参考集,后来被美国国家标准与技术研究院(NIST)用于文本分析会议。
该指标的谱系源于早期工作。它建立在文本相似性可通过单词重叠衡量的想法之上,这可以追溯到信息检索中的早期方法,如词袋模型。但ROUGE标准化了在此设置中对召回率的使用。
后来的变体和改进努力包括引入词干提取和停用词列表处理,以及多种工具包的可用性。最常见的实现是Perl脚本,作为ROUGE包的一部分,由Lin开发,至今仍托管在SourceForge上。更现代的Python库,如“py-rouge”和Google的“rouge_score”包中的“Rouge Score”,提供了更高效的实现,使其能够处理当代系统的大规模文本输出。
在现代NLP中的使用
在现代序列到序列系统时代,ROUGE一直是评估设置中不可或缺的一部分。对于翻译,它是BLEU的补充。对于摘要,它是主力指标。对于抽取式系统(从输入中复制句子),它们容易获得高分;对于生成式深度学习模型,它们再现重要内容,但可能在词汇重叠上得分较低。
诸如Paice和Savoy的工作,或最近比较神经方法的论文,包括来自Google DeepMind的CLIFF系统或OpenAI的GPT模型的改进,都包含ROUGE值。ROUGE也用于问答和文档简化等任务,由于参考的随意性。
其使用并非没有批评。研究表明,ROUGE与人工判断仅中等相关,尤其是对于生成式摘要。缺乏语义同义词匹配和释义检测是一个主要缺点。由于它纯粹是词汇层面的,一个与参考同样好但不匹配确切单词的释义会获得显著较低的ROUGE分数。这导致了其他评估指标的发展,如BERTScore(2019年),它使用神经Transformer (architecture)模型的嵌入,以及METEOR,它结合了词干提取和同义词处理。
尽管如此,ROUGE仍被用作默认指标,因为它廉价、确定性高且易于理解。许多模型卡和研究报告发布ROUGE值,同时结合更新的指标。
在研究和基准测试中的应用
大型公共摘要数据集,如CNN/DailyMail(从Map、AMF获取)以及其他数据集如Xsum和BillSum,许多论文都报告了这些结果。沿着这一路线,在Large language model时代,比较模型和人工撰写摘要的研究使用了ROUGE和FAR。2003年的DUC系列仅包含一个或两个参考;现代实践通常使用多个参考,ROUGE也通过最大值或平均值聚合分数。
实际考虑
使用ROUGE时,有几个标准技巧会影响分数:
- 词干提取:通常使用Porter词干提取器来规范化不同的词形(cats -> cat)。
- 停用词去除:一些流程排除高频词,如'the'、'a',以减少噪声,但这可能降低分数。
- 长度:ROUGE对摘要长度敏感。长摘要自然具有高关注度。通常,不能跨数据集使用它。
- 多个参考:使用多个参考质量(R1)往往会提高分数,因为覆盖了更多不同的n-gram。
- F值:如前所述,T1报告可能使用1-2或全部,但一致性很重要。
回顾与未来方向
尽管年代久远,ROUGE不会消失。它具有与困惑度类似的持久性,或者可以说在语言建模中是一个更简单的指标。在过去一年中,有工作提出了修改以更好地处理顺序和事实,或使用模型进行蕴含判断,但这些成本较高。
ROUGE提供了一种一致、可解释的方式来检查候选文本是否遗漏参考内容,并且它仍然是文本理解任务中Sequence-to-Sequence (Seq2Seq)模型评估的标准部分。研究社区将其作为基础,并添加指标作为补充。
未来在人工结果处理和创造性摘要方面的研究可能使其过时,但该分数本身很可能作为简单的基线指标继续存在。