夕小瑶科技说 原创

 作者 | 谢年年

大模型虽然能力强,但一直饱受“幻觉”问题的困扰,在视觉大模型(LVLMs)中更是如此,生成的文本包含与视觉输入不正确的对象、属性和关系。
比如图中尝试询问模型“小男孩和奶牛正在做什么?”
视觉大模型LLaVA-1.5-13b无法识别男孩正在喂牛。而LLaVA-1.6-34b未能识别衬衫的颜色,并错误判断了男孩和牛之间的空间关系。
对于“详细描述图片内容”的任务,LLaVA-1.5-13b描述图片时错误地提到滑板手旁边还有一个人,且图像右侧边缘附近还有一个滑板。LLaVA-1.6-34b将灰色的岩石识别为临时的坡道,并将滑板描述为黄色和黑色。
今天介绍的这篇文章,是从一个细粒度的角度来识别与缓解LVLMs中的幻觉问题,流程如下图所示:
首先通过GPT4和GPT4V生成一个小型的句子级幻觉标注数据集,然后训练一个幻觉检测模型,再通过该检测模型和重写模型构建偏好数据集,并设计幻觉严重程度感知的DPO训练方式微调视觉大模型,在多个基准上验证了方法的有效性。
论文标题
:

Detecting and Mitigating Hallucination in Large Vision Language Models via Fine-Grained AI Feedback
论文链接

https://arxiv.org/abs/2404.14233

方法

本文的工作包括四个部分,如下图所示。
  1. 细粒度AI反馈机制。 借助专有模型,生成小型的句子级幻觉标注数据集,用于全面检测并缓解幻觉现象。
  2. 基于细粒度反馈的幻觉检测。 使用上述精细AI反馈训练幻觉检测模型。这个模型具备句子级的幻觉检测能力,能够覆盖主要的幻觉类型,如对象、属性和关系等。
  3. 用于构建偏好数据集的检测-重写pipeline。首先通过检测模型识别出句子级幻觉。然后,重写模型会根据将幻觉句子改写为非幻觉版本,构建用于偏好学习的数据集。这种方式大大提高了标注大规模偏好数据集的经济性和效率,为后续的训练缓解模型提供了有力支持。
  4. 幻觉严重程度感知的直接偏好优化(DPO)。本文引入幻觉严重程度感知的直接偏好优化(HSA-DPO),将幻觉的严重程度纳入偏好学习,以优先减轻严重幻觉。

1. 细粒度AI反馈机制

构建细粒度AI反馈数据集

首先构建细粒度AI反馈数据集。其数据来自Visual Genome(VG) 数据集,因为其图像清晰、内容丰富,并且每个图像都附有多个边界框,详细标注了各种对象、每个对象的属性以及它们在图像内容中的空间关系。凭借这些详尽的标注,大视觉语言模型能够对幻觉检测提供更准确的反馈。包括两个任务:
  1. 详细描述生成(Detailed Description Generation),模型需要对视觉内容提供详尽的叙述。从VG数据集中随机选取5000张图像,并获取了详细的对象边界框标注。
  2. 视觉复杂推理(Visual Complex Reasoning),用于评估模型根据图像内容回答复杂问题的能力。随机选择1000个<图像,问题>对。

幻觉响应生成

对于详细的描述生成,给定大视觉语言模型,输入图片,并从RLHF-V的指令集中随机选择一个指令输入到,生成可能包含幻觉的响应。这样可以引入随机性,提高模型识别复杂图像细节的能力。
对于视觉复杂推理,将图像和相关问题输入到,得到1000个可能包含幻觉的响应。
接下来,使用GPT-4或GPT-4V上收集幻觉响应的细粒度反馈。

细粒度幻觉检测

对于详细描述生成,将幻觉响应和关联的口头化物体边界框输入到GPT-4中以生成反馈。这是因为物体边界框提供了比原始图像更准确的内容。对于视觉复杂推理,输入包括原始图像和LVLM生成的幻觉响应。如下图所示:
GPT-4和GPT-4V的反馈包括以下方面:
  1. 句级幻觉及其解释。如果检测到句子中的幻觉,会在句子末尾插入占位符以指示幻觉。本文检测的三种幻觉类型及其对应的占位符包括:
  • <object>(对象幻觉,如感知到实际不存在的物理实体);
  • <relationship>(关系幻觉,如对物体间关系的不准确描述);
  • <attribute>(属性幻觉,如对物体特征的不准确感知)。
    对于每个识别到的幻觉,反馈还会提供解释,说明为何认为它是幻觉,从而提高幻觉检测的可解释性。如下图所示:
  1. 幻觉严重程度评分及其解释。本文呢定义了以下等级:
    • 轻度(1分):幻觉涉及次要细节,对场景的整体描绘影响不大;
    • 中度(2分):幻觉涉及明显的错误,但在场景上下文中仍然保持整体理解;
    • 重度(3分):幻觉引入了重大错误或完全虚构的元素,从根本上改变了观众对场景的理解。
同样,每个评分也必须提供明确的原因。评分过程量化了幻觉的严重程度,促进了描述准确性的细致评估。

2. 基于细粒度反馈的幻觉检测

将幻觉性的回复分割成单独的句子,并将其与三元组配对,其中、和分别表示幻觉、对幻觉的解释和幻觉严重程度的分数。对于非幻觉的句子,、和分别设置为。基于句子级别的训练数据集
由于幻觉数据与非幻觉数据的比例显著影响检测模型的性能。作者在测试了多种数据比例,最终设定了幻觉与非幻觉数据的比率为1:1.2。训练细粒度的幻觉检测模型:

3. 基于细粒度反馈的幻觉缓解

用于构建偏好数据集的检测-重写pipeline

构建用于缓解幻觉的偏好数据集通常需要昂贵的标注,本文提出一种“ Detect-then-Rewrite”方法自动构建数据。
这个pipeline包括幻觉检测模型 和一个重写模型。给定一个包含幻觉的响应,检测模型识别出一组幻觉。然后,使用 和 作为输入提示,模型 𝑀𝑤 将 𝑦ℎ 重写为非幻觉的响应 𝑦𝑡。本文选择开源的大视觉语言模型 LLaVA作为重写模型。

幻觉严重程度感知的直接偏好优化

在DPO中,学习目标被转化为一种创新的监督学习方式,奖励函数 本质上与策略,模型 和参考模型 相关联。形式上,DPO中的奖励函数表达为
其中, 表示缩放因子, 代表分母函数。因此,可以通过以下目标直接在偏好数据上优化策略模型:
其中, 表示上下文 与对应的非幻觉性回答 和幻觉性回答 的配对样本。在 DPO 训练过程中,策略模型  的参数会更新,而参考模型 的参数保持不变。
为了在偏好学习中考虑幻觉的严重程度,作者引入了幻觉严重性感知直接偏好优化 (HSA-DPO)。将检测模型生成的不同严重程度分数分配给幻觉性回答 。具体来说,HSA-DPO 中的动作分数的公式为:
这个动作分数包括计算由检测模型提供的幻觉严重程度分数的长度加权平均值,从而减轻由片段长度引入的任何偏见,并排除基于片段长度的奖励黑客行为的可能性。因此,

实验

幻觉检测任务

下表展示了在幻觉检测基准MhaluBench上的主要实验结果:
▲Image-to-Text方面的MhaluBench实验结果。
本文提出的检测模型H-DER在MhaluBench上的平均表现达到最先进的水平,优于GPT-4V和Gimini。具体来说,在claim级别,H-DER在Mac. F1分数上比UNIHD高出4.7%,比GPT-4V Self-Check 2-shot高出8.1%。这种改进在段落级别也是一致的。
其次,在构建的细粒度检测数据集上,H-DER在二分类中达到88.2%的F1分数,细粒度分类中的准确率为74.3%,优于GPT-4V 2-shot和LLaVA-1.6-34b 2-shot。如下表所示:

幻觉缓解任务

如上表所示,HSA-DPO在Object Halbench上实现了最先进的结果,甚至超过了GPT-4V。
其次,HSA-DPO在Object HalBench中的CHAIRS幻觉减少了76.3%,在AMBER中的Hal幻觉减少36.1%,超越了强大的闭源模型。
第三,经过偏好学习后,HSA-DPO仍能保持其多模态能力,这在MMHal-Bench和LLaVA Bench的测试中的Overall指标上得到了体现。
第四,与在大规模AI反馈或人工标注数据上训练的模型相比,本文提出的模型在幻觉缓解方面也表现出更好的效果,这证明了使用细粒度AI反馈在大模型中检测和缓解幻觉的有效性。

偏好数据大小的影响

作者研究了不同偏好数据集大小对Object HalBench的影响。如下图所示,随着偏好数据集大小的增加,HSA-DPO的幻觉发生率下降。此外,当训练数据集的大小达到8k时,本模型在CHAIRS和CHAIRi上都超过了GPT-4V。

不同基座模型的影响

为了评估不同基础模型的效果,作者在广泛使用的LVLM——Qwen-VL-Chat上训练HSA-DPO。利用提出的管道构建了一个包含6k个样本的偏好数据集,用于训练Qwen-VL-Chat。同时,还与Silkie进行了比较,Silkie也是基于Qwen-VL-Chat训练,但使用了80k个粗细粒度的偏好数据集。本文的方法取得了较好的效果。

对不同幻觉类型的影响力

为了评估对不同幻觉类型(如对象、属性和关系)的效果,作者在Amber基准上进行了实验,并报告了在不同幻觉类型(存在(对象存在)、属性、状态、数量、动作和关系)上的F1分数。配备LLaVA-1.5的HSA-DPO在所有六种幻觉类型上都优于LLaVA-1.5。

结语

本文提出了一种利用细粒度AI反馈检测和缓解大视觉语言模型(LVLMs)中的幻觉的方法。通过层层递进的步骤,实现了不错的效果。该方法除了本文提到的详细描述生成、视觉复杂推理两大任务外,也可以扩展到其他视觉语言任务,应该也会有不错的表现。
继续阅读
阅读原文