从模型架构上减少 MLLMs 幻觉,核心思路是:让生成端不能只依赖语言先验,而必须持续、细粒度地访问视觉证据。已有研究指出,VLM/MLLM 在生成较长文本时会逐渐降低对视觉输入的依赖,语言先验增强,这与幻觉高度相关。(arXiv1)
1. 强化视觉编码器:减少"看不清导致乱说"
很多幻觉来自视觉特征本身不充分,例如小目标、数字、局部属性、遮挡物没有被编码清楚。架构上可以改为:
- 使用高分辨率 / 动态分辨率 ViT,避免固定 resize 后丢失细节;
- 引入 AnyRes、多尺度 patch、窗口注意力 Window Attention;
- 对图表、文档、视频加入专门的空间/时间编码。
例如 Qwen2.5-VL 采用动态分辨率处理、原生动态分辨率 ViT、Window Attention,并支持目标框/点定位、文档解析和长视频事件定位,这类设计能减少由于细粒度视觉信息缺失导致的幻觉。(arXiv2)
适合解决: 小目标幻觉、文字/OCR 幻觉、图表理解幻觉、视频时间事件幻觉。
2. 引入对象级视觉 token:从"整图理解"变成"对象证据理解"
传统 MLLM 常把整张图切成 patch token,再送入 LLM。问题是:LLM 很难稳定知道"哪个词对应哪个物体"。改进方式是增加对象级结构:
text
Image
├── Global visual tokens
├── Object tokens: bbox / mask / class / attributes
├── OCR tokens
└── Relation tokens: left-of / inside / holding / occluded-by
也就是在 ViT 之外加入检测器、分割器、OCR、scene graph 模块,把图像转成更结构化的视觉证据。这样模型回答"有几个人""谁拿着杯子""左边是什么物体"时,不是靠语义猜测,而是先查询对象集合。
推荐结构:
text
Detector / Segmentor / OCR
↓
Object-centric visual memory
↓
Cross-attention / grounding module
↓
LLM answer with region evidence
但要注意:单纯加入 grounding 目标不一定总能降低开放式生成中的物体幻觉,有研究指出,在更真实的开放 caption 场景下,细粒度 object grounding 的效果可能有限,因此最好和注意力校准、反事实负样本、验证模块一起使用。(arXiv3)
3. 改进视觉-语言连接器:不要只用简单 MLP projector
很多 MLLM 使用:
text
Vision Encoder → Linear/MLP Projector → LLM
这种连接方式简单,但容易出现三个问题:
- 视觉 token 被压缩过度;
- 空间位置信息弱化;
- LLM 生成时更偏向语言先验。
可以改成更强的融合结构:
| 改进模块 | 作用 |
|---|---|
| Cross-Attention Adapter | 让文本 token 主动查询视觉 token |
| Q-Former / Resampler | 从图像中抽取任务相关视觉 query |
| Region-aware Projector | 保留 bbox、mask、patch 的空间关系 |
| Gated Fusion | 动态控制视觉/文本信息权重 |
| Spatial Position Encoding | 强化位置、数量、相对关系理解 |
建议: 对于回答必须依赖图像的问题,加入 visual gate:
text
h_t = LLM_state
v_t = CrossAttention(h_t, visual_tokens)
gate = sigmoid(W[h_t, v_t])
h'_t = h_t + gate * v_t
这样可以让模型在生成每个 token 时动态判断是否需要视觉证据。
4. 注意力校准:防止视觉 token 被忽略或注意力塌缩
幻觉常见原因之一是 decoder 的注意力集中到少数 summary token、文本 token 或无关视觉 token 上。OPERA 观察到 MLLM 的幻觉与 self-attention 中的知识聚合模式有关,并提出 over-trust penalty 与 retrospection-allocation 来缓解幻觉。(CVF Open Access4)
架构上可以加入:
- Visual Attention Monitor:监控生成 token 对视觉 token 的 attention;
- Attention Re-scaling:当视觉注意力过低时增强视觉 token;
- Attention Sink Suppression:抑制固定位置 token 被过度关注;
- Hallucination Head Pruning:识别并弱化容易诱发幻觉的注意力头。
已有研究从因果归因角度识别 LVLM 中的 "hallucination heads",并提出自适应关闭或针对性微调来降低幻觉。(OpenReview5)
5. 增加视觉验证器 / 反思分支:生成后必须被图像证据检查
可以把 MLLM 从单通路生成改为"双阶段架构":
text
Stage 1: Candidate Generator
生成初始回答 / caption / reasoning
Stage 2: Visual Verifier
拆分回答中的 claim
对每个 claim 回查图像
输出 supported / unsupported / uncertain
Stage 3: Corrector
删除或修改 unsupported claim
Woodpecker 就是类似思想:先抽取关键概念,再构造问题,进行视觉知识验证、视觉 claim 生成和幻觉修正;它是训练无关的后处理式框架,可接入不同 MLLM。(arXiv6)
这种结构特别适合:
- 医疗影像;
- 自动驾驶感知;
- 商品识别;
- 机器人视觉问答;
- OCR/票据解析;
- 工业质检。
因为这些场景不允许模型"说得像真的",必须能回查证据。
6. 检索增强型 MLLM:让模型查询外部视觉/知识库
对于开放知识型问题,图像本身可能不足以回答。例如"这是什么型号的芯片""这张图中的设备参数是多少"。这时应加入 Multimodal RAG:
text
Image / Region / OCR
↓
Visual retriever + Text retriever
↓
Relevant image-text evidence
↓
Grounded generation
Active Retrieval-Augmented LVLM 提出根据图像层级结构选择检索目标、过滤可靠结果,并在低置信度时触发检索,用于降低 LVLM 幻觉。(arXiv7) 多模态 RAG 综述也指出,MRAG 通过把文本、图像、视频等证据引入检索与生成流程,可以增强事实 grounding、减少幻觉。(arXiv8)
架构建议:
text
MLLM
├── Internal visual memory
├── OCR memory
├── Object / region index
├── External knowledge base
└── Evidence selector
回答时强制输出:
json
{
"answer": "...",
"evidence": [
{"type": "bbox", "region": [x1,y1,x2,y2]},
{"type": "ocr", "text": "..."},
{"type": "retrieval", "source": "..."}
],
"confidence": 0.82
}
7. 不确定性建模:让模型学会"不确定"
很多幻觉来自模型不会拒答。架构上可以增加 uncertainty head:
text
LLM hidden state
├── token generation head
├── visual grounding head
└── uncertainty / abstention head
当模型发现视觉证据不足时,输出:
- "图中无法确认";
- "该区域分辨率不足";
- "需要更清晰图像";
- "无法判断该物体是否存在"。
这比强行回答更可靠。对于部署系统,可以设置:
text
if grounding_score < threshold:
answer = "无法确认"
elif verifier_score < threshold:
answer = "需要人工复核"
else:
answer = normal generation
8. 推荐的低幻觉 MLLM 架构
可以设计成下面这种结构:
text
输入图像 / 视频
↓
多尺度视觉编码器
├── Global ViT tokens
├── High-resolution crop tokens
├── Object / bbox / mask tokens
├── OCR tokens
└── Temporal tokens
↓
视觉-语言融合层
├── Cross-attention
├── Region-aware projector
├── Visual gate
└── Attention calibration
↓
LLM Decoder
├── Grounded generation
├── Visual evidence attention monitor
└── Uncertainty head
↓
Claim Verifier / RAG / Corrector
↓
最终回答 + 证据 + 置信度
9. 不同幻觉类型对应的架构改法
| 幻觉类型 | 典型表现 | 架构改进 |
|---|---|---|
| 物体幻觉 | 图中没有狗却说有狗 | object tokens、检测器、视觉验证器 |
| 属性幻觉 | 红色说成蓝色 | 高分辨率视觉编码、局部 crop token |
| 数量幻觉 | 3 个说成 5 个 | object counting head、scene graph |
| OCR 幻觉 | 文本识别错误 | OCR branch、document encoder |
| 关系幻觉 | A 在 B 左边说反 | spatial encoding、relation tokens |
| 知识幻觉 | 根据图像猜品牌/型号 | Multimodal RAG |
| 长文本幻觉 | 描述越长越乱 | visual attention calibration、claim verifier |
| 视频幻觉 | 错误描述动作顺序 | temporal encoder、tracking token、absolute time encoding |
10. 最实用的落地组合
要做一个实际低幻觉 MLLM,我建议优先采用:
text
动态分辨率视觉编码器
+ 检测/分割/OCR 前端
+ 对象级视觉 token
+ Cross-Attention 视觉融合
+ Visual Attention Calibration
+ Claim Verifier
+ Uncertainty Head
+ 可选 Multimodal RAG
其中最关键的三个模块是:
- 对象级 grounding:让回答能对应到 bbox/mask;
- 视觉注意力校准:防止生成时忽略图像;
- 视觉验证器:生成后逐条检查 claim。
总结:减少 MLLM 幻觉,不能只靠更大的 LLM,而要让架构从"图像辅助语言生成"变成"视觉证据约束下的生成"。
参考链接:
1: https://arxiv.org/abs/2403.14003?utm_source=chatgpt.com "2403.14003 Multi-Modal Hallucination Control by Visual ..."
2: https://arxiv.org/abs/2502.13923?utm_source=chatgpt.com "Qwen2.5-VL Technical Report"
3: https://arxiv.org/abs/2406.14492?utm_source=chatgpt.com "Does Object Grounding Really Reduce Hallucination of Large Vision-Language Models?"
4: https://openaccess.thecvf.com/content/CVPR2024/papers/Huang_OPERA_Alleviating_Hallucination_in_Multi-Modal_Large_Language_Models_via_Over-Trust_CVPR_2024_paper.pdf?utm_source=chatgpt.com "OPERA: Alleviating Hallucination in Multi-Modal Large ..."
5: https://openreview.net/forum?id=Bjq4W7P2Us\&utm_source=chatgpt.com "Understanding and Mitigating Hallucination in Large Vision ..."
6: https://arxiv.org/abs/2310.16045?utm_source=chatgpt.com "Woodpecker: Hallucination Correction for Multimodal Large Language Models"
7: https://arxiv.org/abs/2408.00555?utm_source=chatgpt.com "Alleviating Hallucination in Large Vision-Language Models with Active Retrieval Augmentation"
8: https://arxiv.org/abs/2504.08748?utm_source=chatgpt.com "A Survey of Multimodal Retrieval-Augmented Generation"