人工智能咨询培训老师叶梓 转载标明出处
大型视觉-语言模型(LVLMs)因其在视觉推理方面的能力而备受瞩目,被视为实现自主操作智能体的重要里程碑。但它在生成文本时容易出现对象幻觉问题,即描述中包含不存在的对象,这严重限制了它们的可靠性和实用性。
为了解决这一问题,新加坡国立大学计算学院的Ailin Deng、Zhirui Chen和Bryan Hooi提出了一种新颖的方法——CLIP引导解码(CGD),旨在在不经过额外训练的情况下,通过CLIP模型在解码时引导模型,增强生成文本与图像的视觉基础,从而有效减轻对象幻觉问题。Figure 1 为方法的原理示意。在解码过程中,与图像具有更高CLIP相似度的候选句子不太可能是幻觉(hallucinated),因此会被选中。在这个示例中,幻觉文本被标记为红色,以便于识别和区分。图中包含几个候选句子,这些句子都是对同一张图像的描述。每个句子旁边可能都有一个CLIP分数,表示该句子与图像内容的匹配程度。分数较高的句子意味着与图像内容更为一致,更有可能是准确的描述。在这种情况下,解码过程会选择这些高分句子,而不是那些分数较低、可能与图像不相关或包含错误信息的句子。
CLIP引导解码
CLIP引导解码(CGD)算法是为了减少在生成过程中出现的幻觉问题。CGD算法利用CLIP模型作为视觉-语言指导,以偏好视觉上有根据的内容。这个算法包含两个主要部分:可靠性评分和引导句子生成。
可靠性评分
在解码的每一步t,对于包含连续句子(s1, ..., st)的候选响应c,定义了一个可靠性得分F(c)。这个得分由两部分组成:一部分是LVLM模型的归一化可能性fθ(c),另一部分是CLIP引导的加权和。具体公式如下:其中,α是一个超参数,用于权衡LVLM模型的归一化可能性fθ(c)和CLIP引导的总和。当α=0时,CLIP引导没有影响,得分函数只考虑模型的可能性得分;当α=1时,表示更倾向于高CLIP得分。
引导句子生成
在生成响应时,研究者希望保持LVLM的生成质量和流畅性,同时减少幻觉。为此,使用可靠性得分函数来优先选择与图像视觉基础良好的响应。在每一步t,维护一个候选集Ct,其中包含最多N个候选者,每个候选者ctj代表到目前为止生成的前t个序列。
生成候选集Ct+1的过程如下:
-
对于Ct中的每个ctj,独立地根据LVLM模型参数θ参数化的条件下分布,采样下一个句子M次,得到新的候选集C′t+1。
-
为了避免候选集的基数呈指数增长,基于句子级别的幻觉评分,从C′t+1中保留前N个候选项,即:其中argtopN返回下标集合中函数F(c)值最高的前N个成员。
这个过程会一直重复,直到所有候选者都达到文件结束标志(EOF),例如达到最大输出长度。最后,选择Ct中得分最高的候选者c*作为输出。
研究者在算法1中总结了CLIP引导解码的整个过程。这个算法在概念上类似于束搜索(beam search),但是在句子级别上进行,允许在完整的句子上应用CLIP评分,而不是在标记级别上的不完整单词或短语。
通过这种方式,CGD算法能够有效地在生成文本时减少幻觉的发生,同时保持文本的质量和流畅性。这种方法的优势在于它不需要额外的训练,可以作为一个即插即用的工具来改善现有LVLMs的生成性能。
实验
实验主要关注两个任务:幻觉评估和开放式视觉问答(VQA)。幻觉评估是研究的重点,而开放式VQA任务则用于更广泛地了解方法的效果。幻觉评估使用了COCO数据集和NoCaps数据集,包括近领域和领域外的数据。实验中随机选择了每个数据集的500个样本,并使用提示“Describe this image in detail”来引导LVLMs生成描述。
研究者们采用了自动化幻觉评估的CHAIR指标,包括CHAIRi(CI)和CHAIRs(CS),来量化生成描述中的幻觉对象比例。此外,还包括了评估生成质量的指标,如平均响应单词数(Avg. Len)、平均覆盖率(Avg. Coverage),以及BLEU、METEOR、ROUGE-L、CIDEr、SPICE和CLIPScore等广泛认可的指标。
CGD方法与六种解码方法进行了比较,包括贪婪解码、Nucleus采样、TopK采样,以及DoLa、VCD和OPERA等最近提出的减少幻觉的解码方法。CGD使用了最新的图像-文本对比模型SigLIP作为CLIP引导模型,并设置了超参数N = 3, M = 3和α = 0.99。实验在GeForce RTX 3090上运行,并报告了三次运行的平均性能。
在COCO和NoCaps数据集上的幻觉评估结果显示(表1),与其他基线方法相比,CGD方法在CHAIR指标上取得了更低的分数,表明其在减少幻觉对象方面更为有效,同时保持了与基线方法相似的响应长度。这表明CGD方法能够在不牺牲生成质量的前提下减少幻觉。
为了评估LVLMs的响应质量,研究者们使用了CIDEr和SPICE等指标来评估COCO数据集上生成的描述。结果显示,CGD方法在这些指标上与其他方法表现相当,突显了CGD方法在减少幻觉的同时保持文本生成效用的能力。
除了评估幻觉,研究者们还在MM-Vet开放式VQA基准上测试了CGD算法。结果显示,CGD方法在大多数任务上超过了贪婪解码基线,例如在识别和OCR任务上。然而,在空间意识任务上表现不佳,这可能归因于CLIP模型在关系理解上的局限性。研究者们指出,通过数据筛选或特征融合技术来增强视觉-语言模型,可能会进一步提升CGD方法的性能。
为了进一步理解句子可能性和CLIPScore在CGD方法中的作用,研究者们进行了消融研究。通过控制α参数,研究者们分析了在没有句子可能性或CLIP引导的情况下的性能。结果表明,没有CLIP引导的性能接近贪婪解码,而句子可能性在减少幻觉方面的有效性相对有限,这证实了CLIP引导在减轻幻觉中的主导贡献。
研究者们还研究了CGD方法对最大候选数N和采样次数M的敏感性。实验结果表明,即使在减少最大候选数和采样次数的情况下,CGD方法仍然优于基线。性能随着N和M的增大而提高,这表明拥有更多的选择和更大的候选预算有助于模型避免幻觉。在效率方面,CGD方法与VCD相当,比OPERA更有效,并且提供了更好的幻觉减轻效果。随着N和M的增大,推理成本上升,表明效率和效果之间的权衡。
由于大多数LVLMs采用了OpenAI的CLIP模型作为视觉编码器,研究者们探讨了使用相同的CLIP模型作为CGD方法中的引导模型是否能够增强幻觉减轻。实验结果表明,即使使用LLaVA-1.5中的视觉编码器,CGD方法仍然超过了基线方法。这表明现有的视觉-语言对齐的微调过程可能会在一定程度上损害原始视觉能力,而CGD方法通过直接检查LVLMs的输出来重新校准视觉和语言之间的对齐。
Table 3 和 Table 4分别展示了在幻觉评分中对句子似然性和CLIPScore的消融研究,以及对超参数N和M的敏感性分析。
这些实验结果展示了CGD方法在减少幻觉和保持生成质量方面的优势,并揭示了CLIP引导在幻觉减轻中的重要作用。同时,它们也表明了通过调整超参数和使用不同的CLIP模型可以进一步提高CGD方法的性能。
论文链接:https://arxiv.org/abs/2402.15300