LVLM 的幻觉更具体来说是 misalignment between factual visual content and corresponding textual generation, 即真实的视觉内容和相应的生成的文本不一致. 这篇文章概述了评估幻觉的方法和 benchmark, 从训练数据和模型本身的角度研究了产生幻觉的根本原因, 还有一些其他的问题.
NLU: 自然语言理解
NLG: 自然语言生成
LVLM 是用 LLM 的 NLU 和 NLG 功能来完成视觉语言任务, 主要方式是将视觉特征作为 LLM 的补充输入并将其与文本特征对齐 (MiniGPT4, LLaVA).
从不同的语义维度来看, 幻觉可以分为三类:
目前评估 LVLM 幻觉的方法主要基于模型的认知表现, 包括:
分析表明 LLVM 的幻觉由:
等导致.
目前的缓解方法:
LVLM 的结构包括:
LVLM 的训练包括两个阶段:
幻觉检测困难: 不仅是自然语言理解, 还要进行细粒度的视觉注释, 这些注释要与生成的文本精确地对齐
Intertwined Causes: 除了数据相关的问题 (比如错误的信息, 偏差, 知识边界的限制), 图像数据的质量会加重幻觉(通过加剧 LVLM 的语言先验的错误和统计偏差).
不是很清楚 language prior 是个什么东西?
Compound Mitigation Method: 除了应用 LLM 缓解幻觉的方法如增强数据质量, 优化 encoding, 人类偏好对齐, 针对 LVLM 本身的方法包括 refine 视觉表示(比如提高分辨率, 但带来的是更高的计算代价) 与 改善多模态对齐. 改善 vision-language token 的对齐会显著减少幻觉的产生.
resolution: 分辨率.
目前主要的评估方法有两种:
benchmark 根据评估任务分为 discriminative benchmark (DIS) 和 generative benchmark (GEN).
就是衡量模型输出中幻觉部分的比例.
Handcrafted Pipeline Methods: 手工制作, 具有很强的可解释性. 有 CHAIR (image caption 任务, 量化ground truth 与生成文本之间的差异来评估对象幻觉), CCEval, 还有 FAITHSCORE.
以模型为基础的端到端方法: 可以大致分为两类:
LLM-based evaluation: 用一个 高级的 LLM 评估 LVLM 基于幻觉的内容生成.
这个 rate LVLM generated content based on hallucination 就很奇怪.
LLM 接受集成的视觉信息, 用户指令以及模型回复作为输入, 用 prompt 的方法进行评估和评分.
幻觉数据驱动的模型评估: 做一个有标签的幻觉数据集用来给一个模型做 fine tuning, 以检测幻觉. 比如
旨在评估 LVLM 的幻觉辨别能力. 通常采用 Q&A 模式, 向 LVLM 查询一系列与图像内容相符或者不服的描述, 并评估模型的反应. 有 POPE 和 NOPE.
数据分布不平衡. 比如 Q&A 任务中如果大多数答案是 yes 可能会让 LVLM 一直回答 yes.
数据同质性. MiniGPT-4只能描述图像而不管用户提出的具体的问题, 这是由于缺少 diversified instruction learning; LLaVA 由于训练的视觉信息种类有限, 就很难准确描述局部的视觉关系.
不是很理解这个词, 举的例子也不是很清楚.
所以 instruction data 是什么?
由不可靠的 LLM 生成的长指令包含的对象, 属性和关系与实际图像中所描述的细粒度的内容不对应, 在这种数据上训练会催生幻觉.
LVLM 采用的 Vision Encoder 一般是 CLIP, 它通过对比学习将视觉和文本特征映射到同一空间. 但是 CLIP 本身有局限性, 包括下面两种:
现有的模型处理的图像的分辨率较低.
对比学习主要讲视觉内容与词嵌入对齐, 集中在突出的物体上, 难以捕捉图像的细粒度内容, 包括背景描述, 对象计数和对象关系.
misalignment 可能是导致幻觉的关键因素.
简单的结构如 (MLP) 表征能力可能不强, 阻碍了模态信息的传递.
Q-Fromer 在 BLIP 系列和 MiniGPT-4 中应用较多. 它预先随机设定并随机初始化了 token 的数量, 将这些 token 编码为与文本对齐的视觉特征. 这种限制会导致部分信息丢失.
可能要具体看一下 Q-Former 的原理.
指模型在解码过程中只关注上下文的部分信息. 包括:
随机抽样给解码过程引入了随机性, 在这是为了生成与高似然序列相关的低质量文本并有助于丰富内容. 增加随机性可能也会产生幻觉.
这不跟没说一样?
模型在预训练阶段得到的固有能力和在指令调优阶段施加的扩展需求的不匹配. 这导致 LLM 产生超出它们已经建立的知识的限制的回答.
mitigation: 缓解
就是针对上面的各种问题一一分析可能的缓解方法.
用现成的 LLM 从带注释的 image-text 数据集生成对比的 Q-A 对, 然后在引入的 CIT (对比指令调优) 利用这些对.
构建具有丰富注释的数据集.
优化解码器: 应对上下文注意力不足的问题. 一种方案是视觉对比解码策略, 原图像和做一些修改后的图像分别输入, 得到两个输出, 进行对比, 然后帮助修正模型对先验和偏差的强过度依赖.
没怎么看懂 OPERA 在干什么.
与人类对齐: 还是用 RLHF 比较多.
会通过后处理或者添加附加的模块来对输出进行额外的处理来减轻幻觉, 目前有的工作为 LRUE 和 Woodpecker.
Furure 和 Conclusion 就不看了.