文本摘要评估 - BLEU与ROUGE

时间:2016-06-27 03:02:43

标签: nlp text-processing machine-translation rouge bleu

使用两个不同的摘要系统(sys1和sys2)和相同的参考摘要的结果,我用BLEU和ROUGE评估它们。问题是:sys1的所有ROUGE分数都高于sys2(ROUGE-1,ROUGE-2,ROUGE-3,ROUGE-4,ROUGE-L,ROUGE-SU4 ......)但是sys1的BLEU分数较低比起sys2的BLEU得分(非常多)。

所以我的问题是:ROUGE和BLEU都是基于n-gram来衡量系统摘要和人类摘要之间的相似之处。那么为什么评价结果会有差异呢?还有ROUGE和BLEU解释这个问题的主要区别是什么?

任何意见和建议将不胜感激!谢谢!

3 个答案:

答案 0 :(得分:21)

一般来说:

Bleu测量精度:人工参考摘要中出现机器生成的摘要中的单词(和/或n-gram)多少。

召回胭脂措施人参考摘要中的单词(和/或n-gram)在计算机生成的摘要中出现了多少。

当然 - 这些结果是互补的,正如精确与召回的情况一样。如果您在人类参考文献中出现的系统结果中有很多单词,那么您将获得高Bleu,如果您在系统结果中出现的人类参考文献中有很多单词,您将获得高级的Rouge。

在您的情况下,似乎sys1具有比sys2更高的Rouge,因为sys1中的结果始终包含来自人参考的更多单词,而不是来自sys2的结果。但是,由于您的Bleu得分显示sys1的回忆率低于sys2,这表明sys2结果中出现的字数与sys2相比没有那么多。

例如,如果你的sys1输出的结果包含来自引用的单词(upping the Rouge),而且还有很多引用并不包括的单词(降低Bleu),这可能会发生。看起来,sys2给出的结果是输出的大多数单词确实出现在人类参考文献中(upping the Blue),但也缺少了人类参考文献中出现的结果中的许多单词。

顺便说一句,有一些叫做简短惩罚的东西,这非常重要,已经被添加到标准的Bleu实现中。它会惩罚比参考的一般长度更短的系统结果(更多地了解它here)。这补充了n-gram度量行为,实际上惩罚的时间长于参考结果,因为分母越长,系统结果越长。

你也可以为Rouge实现类似的东西,但这次惩罚的系统结果更长比一般参考长度更小,否则会使他们获得人为的更高的Rouge分数(因为结果,你在参考文献中出现一些单词的几率就越高。在Rouge中,我们除以人类参考的长度,因此我们需要额外的惩罚来获得更长的系统结果,这可能会人为地提高他们的Rouge分数。

最后,您可以使用 F1度量来使指标协同工作: F1 = 2 *(Bleu * Rouge)/(Bleu + Rouge)

答案 1 :(得分:1)

  

ROUGE和BLEU都基于n-gram来衡量系统摘要和人类摘要之间的相似之处。那么为什么评价结果会有差异呢?还有ROUGE和BLEU解释这个问题的主要区别是什么?

存在ROUGE-n精度和ROUGE-n精度调用。引入ROUGE {3}的论文中的原始ROUGE实现计算了两者,以及得到的F1分数。

来自http://text-analytics101.rxnlp.com/2017/01/how-rouge-works-for-evaluation-of.htmlmirror):

ROUGE回忆:

enter image description here

ROUGE精度:

enter image description here

(引入ROUGE {1}的论文中的原始ROUGE实现可能会执行更多内容,例如词干。)

与BLEU不同,ROUGE-n的精确度和召回很容易解释(见Interpreting ROUGE scores)。

ROUGE-n精度和BLEU之间的区别在于BLEU引入了简短惩罚项,并且还计算了几个n-gram大小的n-gram匹配(与ROUGE-n不同,只有一个选择了n-gram大小)。 Stack Overflow不支持LaTeX,因此我不想进入更多公式来与BLEU进行比较。 {2}清楚地解释了BLEU。

参考文献:

答案 2 :(得分:0)

ROGUE和BLEU都是适用于创建文本摘要任务的一组度量。最初需要BLEU进行机器翻译,但它完全适用于文本摘要任务。

最好通过示例了解概念。首先,我们需要像这样的摘要候选者(机器学习创建摘要):

  

猫在床底下被发现

以及黄金标准摘要(通常由人创建):

  

猫在床底下

让我们找到unigram(每个单词)情况的精度和召回率。我们使用单词作为指标。

机器学习摘要有7个单词(mlsw = 7),黄金标准摘要有6个单词(gssw = 6),重叠单词的数量再次为6(ow = 6)。

机器学习的召回率是:ow / gssw = 6/6 = 1 机器学习的精度为:ow / mlsw = 6/7 = 0.86

类似地we can compute的精确度和召回分数在分组的字母组合,二元组,n元语法上……

对于ROGUE,我们知道它既使用了查全率又使用了精确度,还使用了F1分数,即F1分数的谐波平均值。

对于BLEU,它的also use精度与查全率成对,但是使用了几何均值和简洁度惩罚。

细微的差异,但重要的是要注意它们都使用精确度和召回率。