SPICE是一种文本生成的评价方法. SPICE 使用基于图的语义表示来编码 caption 中的 objects, attributes 和 relationships。首先,它将待评价的captions和参考captions通过一种名为概率上下文无关文法(Probabilistic Context-Free Grammar, PCFG)依赖解析器(dependency parser)解析成句法的依赖关系树(syntactic dependencies trees),然后利用基于规则的方法把dependencies tree映射成场景图。具体地,生成依赖关系树之后,通过3个后处理步骤(分别用于简化定量修饰符、解析代词和处理复数名词),然后根据九种简单的语言规则对生成的树结构进行解析,以提取对象、关系和属性,它们共同构成场景图。最后计算待评价的 caption 中 objects, attributes 和 relationships 的 F-score 值。
假设是一条待评价标注,称为候选标注,是一条参考标注。上图中左下角是5条参考标注。通过候选标注生成场景图记为,所有的参考标注组成参考标注集合,通过生成的场景图记为。 表示将一个场景图转换成一系列元组(tuple)的集合。
其中元组的形式为
其中是所有object classes的集合,,表示物体间的关系,表示物体的属性。
计算公式如下:
运算类似于交集,与交集不同的地方在于它不是严格匹配,而是类似于METEOR中的匹配。最后是依据F-score的高低来判断生成的文本的质量。
扩展
METEOR方法
是可调控参数,是候选标注中能够被匹配的一元组的数量,为候选标注的长度,是参考标注的长度。是惩罚因子,惩罚的是候选标注中的词序与参考标注中的词序不同,具体计算方法为:
依旧是候选翻译中能够被匹配的一元组的数量,其中指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。
[1]Schuster, S., Krishna, R., Chang, A., Fei-Fei, L., Manning, C.D.: Generating semantically precise scene graphs from textual descriptions for improved image retrieval. In: EMNLP 4th Workshop on Vision and Language. (2015)
[2]Klein, D., Manning, C.D.: Accurate unlexicalized parsing. In: ACL. (2003)