文本生成自动评价方法
BLEU ROUGE CIDEr SPICE Perplexity METEOR
1. BLEU
Bilingual Evaluation Understudy,双语评估辅助工具
核心思想
比较候选译文和参考译文里的 n-gram 的重合程度,重合程度越高就认为译文质量越高。unigram用于衡量单词翻译的准确性,高阶n-gram用于衡量句子翻译的流畅性。 实践中,通常是取N=1~4,然后对进行加权平均。
计算公式
其中 表示n-gram,
表示n-gram的权重;
表示短句子惩罚因子(brevity penaty),用
表示最短的参考翻译的长度,
表示候选翻译的长度,则
具体计算方法为:
表示n-gram的覆盖率,具体计算方式为:
关于上述 的计算,说明一下:
是截断计数,其计数方式为:将一个n-gram在候选翻译中出现的次数,与在各个参考翻译中出现次数的最大值进行比较,取较小的那一个。
举个例子:
Candidate: the the the the the the the.
Reference 1: The cat is on the mat.
Reference 2: There is a cat on the mat.
其中,我们取 ,则一元组"the"在Candidate中出现的次数为7,在Reference 1中出现的次数为2,在Reference 2中出现的次数为1,则
主要特点
- n-gram共现统计
- 基于精确率
应用场景
Machine Translation
缺点
只看重精确率,不看重召回率。(详细得说:待补充~) * 存在常用词干扰(可以用截断的方法解决)
- 短句得分较高。即使引入了brevity penalty,也还是不够。
改进
- 截断:改进常用词干扰
- brevity penalty:改进短句得分较高的问题
2. METEOR
Metric for Evaluation of Translation with Explicit ORdering,显式排序的翻译评估指标
核心思想
METEOR 是基于BLEU进行了一些改进,其目的是解决一些 BLEU 标准中固有的缺陷 。使用 WordNet 计算特定的序列匹配,同义词,词根和词缀,释义之间的匹配关系,改善了BLEU的效果,使其跟人工判别共更强的相关性。并且,是基于F值的。
计算公式
其中,
为可调控的参数,
为候选翻译中能够被匹配的一元组的数量,
为候选翻译的长度,
为参考摘要的长度。
为惩罚因子,惩罚的是候选翻译中的词序与参考翻译中的词序不同,具体计算方法为:
说明一下:m依旧是候选翻译中能够被匹配的一元组的数量, 指的是chunk的数量,chunk就是既在候选翻译中相邻又在参考翻译中相邻的被匹配的一元组聚集而成的单位,举个例子:
Candidate: the president spoke to the audience.
Reference: the president then spoke to the audience.
在上述例子中,reference中的6个unigram都可以被匹配,但是其在reference中匹配的对象,却只有"the president" 和 "spoke to the audience"这两个字符串是相邻的,而这两个字符串就是两个chunk。
主要特点
- unigram共现统计
- 基于F值
- 考虑同义词、词干
应用场景
Machine Translation、Image Caption
缺点
- 只有Java实现。
- 参数较多,有四个需要自己设置的参数。
- 需要外部知识源,比如:WordNet,如果是WordNet中没有的语言,则无法用METEOR评测。
3. ROUGE
Recall-Oriented Understudy for Gisting Evaluation,面向召回率的摘要评估辅助工具
核心思想
大致分为四种:ROUGE-N,ROUGE-L,ROUGE-W,ROUGE-S。常用的是前两种(-N与-L) * ROUGE-N中的“N”指的是N-gram,其计算方式与BLEU类似,只是BLEU基于精确率,而ROUGE基于召回率。
- ROUGE-L中的“L”指的是Longest Common Subsequence,计算的是候选摘要与参考摘要的最长公共子序列长度,长度越长,得分越高,基于F值。
计算公式
主要介绍ROUGE-N和ROUGE-L
ROUGE-N:
其中, 表示n-gram,
表示一个n-gram的出现次数,
表示一个n-gram的共现次数。
ROUGE-L:
其中, 表示候选摘要,
表示参考摘要,
表示候选摘要与参考摘要的最长公共子序列的长度,
表示参考摘要的长度,
表示候选摘要的长度。
主要特点
- n-gram共现统计、最长公共子序列
- 基于召回率(ROUGE-N)和F值(ROUGE-L)
应用场景
Text Summarization
缺点
- ROUGE是基于字的对应而非基于语义的对应,不过可以通过增加参考摘要的数量来缓解这一问题。
改进
- ROUGE-S:统计skip n-gram而非n-gram
- ROUGE-W:考虑加权的最长公共子序列
4. Perplexity
困惑度
核心思想
(1)根据参考句子,学习一个语言模型P; (2)根据语言模型P,计算候选句子的得分; (3)根据句子长度对上述得分进行Normalize
计算公式
其中 是候选翻译,N是候选翻译的长度,
是根据参考翻译得到的语言模型,而
则是语言模型对候选翻译计算出的得分。
主要特点
- 基于语言模型(我感觉其实也是n-gram)
- 困惑度越低,翻译质量越好
应用场景
Machine Translation、Language Model
缺点
- 数据集越大,困惑度下降得越快
- 数据中的标点会对模型的PPL产生很大影响
- 常用词干扰
5. CIDEr
Consensus-based Image Description Evaluation,基于共识的图像描述评估
核心思想
把每个句子看成文档,然后计算其 TF-IDF 向量(注意向量的每个维度表示的是n-gram 而不一定是单词)的余弦夹角,据此得到候选句子和参考句子的相似度。
计算公式
其中, 表示候选标题,
表示参考标题集合,
表示评估的是n-gram,
表示参考字幕的数量,
表示基于n-gram的TF-IDF向量。
主要特点
- TF-IDF
- 余弦相似度
应用场景
Image Caption
缺点
- 与ROUGE一样,也只是基于字词的对应而非语义的对应
6. SPICE
Semantic Propositional Image Caption Evaluation,语义命题图像标题评估
核心思想
SPICE 使用基于图的语义表示来编码 caption 中的 objects, attributes 和 relationships。它先将待评价 caption 和参考 captions 用 Probabilistic Context-Free Grammar (PCFG) dependency parser parse 成 syntactic dependencies trees,然后用基于规则的方法把 dependency tree 映射成 scene graphs。最后计算待评价的 caption 中 objects, attributes 和 relationships 的 F-score 值。
计算公式
其中, 表示候选标题,
表示参考标题集合,
表示利用某种方法将一段文本转换成一个场景图(Scene Graph),
表示将一个场景图转换成一系列元组(tuple)的集合,
运算类似于交集,与交集不同的地方在于它不是严格匹配,而是类似于METEOR中的匹配。
下面是一个 的例子:
source text: "A young girl standing on top of a tennis court."
: { (girl), (court), (girl, young), (girl, standing) (court, tennis), (girl, on-top-of, court) }
主要特点
- 使用基于图的语义表示
应用场景
Image Caption
缺点
由于在评估的时候主要考察名词的相似度,因此不适合用于机器翻译等任务。
转载 https://zhuanlan.zhihu.com/p/108630305