OPERA: Alleviating Hallucination in Multi-Modal Large Language Models via Over-Trust Penalty and Retrospection-Allocation
目录
1. 引言
2. 相关研究
2.1 多模态大语言模型
2.2 LLM 的幻觉与解决方案
2.3. 语言模型中的解码策略
3. 方法
3.1 MLLM 生成过程
3.2 过度信任惩罚
3.3 回溯-再分配策略
4. 实验
4.1 研究设置
4.2 主要实验结果
1. 引言
多模态大语言模型(MLLMs)在近年来取得了显著进展,使得图像与文本的交互变得更加自然。然而,这些模型仍然面临严重的 幻觉问题,即生成的文本可能包含与输入图像内容不符的信息,例如错误的颜色、数量、位置描述,甚至虚构物体的存在。
当前缓解幻觉的主要方法包括:
- 使用专门的数据进行训练
- 依赖外部知识或模型进行推理
然而,这些方法都需要额外的计算成本和数据标注工作。
为此,本文提出 OPERA(Over-Trust Penalty and Retrospection-Allocation),这是一种解码优化策略,可以在无需额外数据、知识或训练的情况下缓解 MLLM 的幻觉问题。
其核心思想基于自注意力机制的知识聚合模式(knowledge aggregation patterns),即 LLM 在生成新词时过度依赖某些 “总结性标记”(Summary Tokens),导致视觉信息的丢失和错误描述。
如图 2 所示,可辨别出一个重复的模式,其中许多幻觉内容的开始与柱状注意模式之后生成的后续标记一致。值得注意的是,这些柱状注意模式通常表现在缺乏实质性信息量的标记上,例如句号或引号。直观地讲,这种特性揭示了一个奇怪的事实,即表现出柱状注意模式的标记通常具有有限的信息,但对所有后续标记的预测产生了显着的影响。
OPERA主要包含两个策略:
- 过度信任惩罚 (Over-Trust Penalty, OTP):在Beam Search 解码过程中对具有过度信任模式的候选词给予惩罚,减少幻觉内容的出现。
- 回溯-再分配策略 (Retrospection-Allocation, RA):当发现幻觉发生时,回溯到 “总结性标记”,重新选择更合理的词,以消除错误信息。
实验结果表明,OPERA 可以在不同的 MLLM 上显著减少幻觉问题,并在多个评估指标上表现优越。
2. 相关研究
2.1 多模态大语言模型
近年来,MLLM(如 LLaVA-1.5、InstructBLIP、MiniGPT-4、Shikra)的研究发展迅速。它们通常由一个视觉编码器和语言模型组成:
- 视觉编码器(如 CLIP、EVA)提取图像特征;
- 语言模型(如 LLaMA、Vicuna)处理文本并生成描述。
尽管这些模型在理解和描述图像方面取得了突破,但幻觉问题仍然普遍存在。
2.2 LLM 的幻觉与解决方案
幻觉(Hallucination)指模型生成的文本与输入不符,可以分为:
- 对象幻觉(Object Hallucination):描述了图像中不存在的物体。
- 属性幻觉(Attribute Hallucination):错误描述颜色、大小、形状等属性。
- 位置幻觉(Location Hallucination):误判物体的空间位置。
- 关系幻觉(Relation Hallucination):错误描述物体之间的关系。
目前缓解幻觉的方法主要包括:
- 基于训练的数据优化(需要额外标注数据)。
- 融合外部知识(依赖额外知识库)。
- 解码优化策略(如 DoLa,通过层间对比优化解码)。
OPERA 属于解码优化方法,无需额外训练或知识库,能够在推理时减少幻觉。
2.3. 语言模型中的解码策略
贪婪解码(Greedy Decoding)在每个步骤中选择最有可能的下一个单词。贪婪解码虽然快速且计算效率高,但往往会导致重复且变化较少的文本。
集束搜索(Beam Search)在每个步骤中跟踪预定义数量的假设,并对其进行扩展以找到更优化的序列。
Top-k 采样 通过从前 k 个可能的下一个单词中随机选择,为生成过程增加了随机性,从而在输出中引入了多样性,但有时会产生不太连贯的结果。
Top-p(核)采样 是 Top-k 的演变,核采样考虑了累计达到概率 p 的动态单词数量。该方法在随机性和相关性之间实现了平衡,通常比 Top-k 采样产生更连贯、更有趣的输出。
DoLa 解码 是一种最近提出的解码方法,旨在缓解 MLLM 中的幻觉,它对比了成熟层和未成熟层的对数,并将增量重新缩放为输出。
3. 方法
3.1 MLLM 生成过程
MLLM 生成文本的过程可以拆分为:
输入处理:图像通过视觉编码器转换为视觉 Token,与文本 Token 拼接。
前向传播:Transformer 计算隐藏状态,并预测下一个 Token 的概率分布。
解码策略:使用 Greedy、Beam Search、Top-k、Top-p 等方法生成最终文本。
3.2 过度信任惩罚
过度信任惩罚 (Over-Trust Penalty, OTP) 的核心思想:在 Beam Search 过程中,对具有过度信任模式的候选词降低其选择概率,避免错误传播。计算方式:
在注意力矩阵中选取一个局部窗口,衡量知识聚合程度。
ω_{i,j} 表示第 j 个 token 分配给第 i 个 token 的注意力权重。σ 是可配置的缩放因子,避免注意力值太小。
利用局部窗口注意权重 W^k_{t−1},我们可以计算一个简单的度量来描述知识聚合模式的大小。
如图 5 所示,我们对注意力矩阵的下三角进行列乘法,得到一个列分数向量。分数越大表示相应位置存在的模式越强。因此,选择列分数向量的最大值作为知识聚合模式的特征。正式地,
然后将 ϕ(w_{≤t}) 与模型 logit 结合起来以预测下一个标记
考虑到计算效率和惩罚不应使模型偏向不合理的输出,我们选择每个波束的 logit 中的前 N_can 来组成候选集 Y。
3.3 回溯-再分配策略
当幻觉已经发生,OTP 可能无法完全避免,此时需要回溯-再分配策略 (Retrospection-Allocation, RA)。
整个回溯过程如 图6 所示。基于 第 3.2 节,我们可以通过 方程(5) 计算出最大得分的位置坐标 c,从而获得最近解码的多个Token x_{t−l}, . . . , x_{t−1} 的位置坐标集合:
其中,l>r 需要指定,且默认设定 l=k。
给定一个序列 {x0,x1,…,x_{t−1}} 及其最近的坐标集合 C,我们可以检查这些坐标是否一致。具体而言,重叠次数的计算方式如下:
其中,1_{c=s} 是指示函数,当条件为真时返回 1,否则返回 0,Mode(C) 表示计算集合 C 的众数(即最常出现的值)。
如果 N_overlap ≥ r,则执行回溯,并将 s = Mode(C) 作为总结性标记(summary token)的位置。
假设当前序列为 {x0,x1,…,xs,…,x_{t−1}},其中总结性标记 x_s 已经形成了知识聚合模式,我们计划将解码过程回溯到 {x0,x1,…,xs} 并重新选择下一个Token,从候选词集合中剔除之前选择的 x_{s+1}:
由于后续的回溯会比之前的回溯更进一步,我们手动设定回溯位置 s 必须保持单调递增,即不能回溯到更早的 Token。此外,我们设定了最大回溯次数 β,如果 x_s 已经达到了该最大回溯次数,则考虑回溯到更早的 {x0,x1,…,x_{s−1}}。
4. 实验
4.1 研究设置
1)数据集
MSCOCO(图像描述任务)。
VG-100K(用于 GPT-4 辅助评估)。
POPE(评估模型对特定对象的识别能力)。
2)评估指标
CHAIR(Caption Hallucination Assessment):衡量幻觉句子/词的比例。
GPT-4 评估:GPT-4 负责判定生成文本的准确性。
POPE:评估模型对物体的识别能力。
3)基线方法
Greedy Decoding(贪心解码)。
Nucleus Sampling(Top-p 采样)。
Beam Search(束搜索)。
DoLa(层间对比解码)。
4.2 主要实验结果
OPERA 在所有模型上均显著减少了幻觉率。
GPT-4 评估:OPERA 通常能够实现更少的幻觉句子或单词来描述每个图像,例如,在幻觉句子比例 (HSR) 上超过贪婪解码约 30.4%,在幻觉单词比例 (HWR) 上超过 DoLa 约 15.4%。
GPT-4V 评估:如表 3 所示,OPERA 与 Beam search 解码相比,实现了高达 27.5% 的提升,同时保持了答案的详细性。由于 GPT-4V 的感知和推理能力与人类非常接近,因此 GPT-4V 的评估结果在某种程度上从人类的感觉角度反映了其在减少幻觉方面的强大表现。
POPE 评估:如表 4 所示,OPERA 提高了模型对物体的识别能力,F1 分数最高。
文本生成质量:
- 表 5 的结果中,OPERA 总体上可以从各个方面保持生成文本的质量。
- 表 6 显示, OPERA 可以在两个 MLLM 基准测试中保持甚至提高 MLLM 的性能。
论文地址:https://arxiv.org/abs/2311.17911
项目页面:https://github.com/shikiw/OPERA
进 Q 学术交流群:922230617