Seeing or Knowing? Visual Context Sensitivity in Multimodal Large Language Models
Jiaang Li, Chengzu Li, Zhaochong An, Yifei Yuan, Xi Liu, Serge Belongie, Vésteinn Snæbjarnarson
cs.CV
2026-07-29
多模态模型答错不全是看不清图:重建探测显示反常细节 93% 还留在最终层。瓶颈在用不在看,一个 steering vector 无需指令就把可控性从 14.7% 拉到 37.7%。
给多模态大模型看一张和它先验冲突的图(比如一只七条腿的猫),它常常按先验答。两种解释一直在打架:H1 是感知失败,视觉编码器在语言模型看到之前就把反常细节丢了;H2 是利用失败,细节其实留下来了,只是模型没有一套可靠策略,决定什么时候该信图、什么时候该信先验。大多数修法(换更好的编码器、灌更多视觉数据)默认 H1 是对的。这篇把两者拆开测,发现瓶颈在 H2。
两套诊断。
第一套是图像重建探测。借鉴 Metaquery,从冻结 MLLM 最终层的图像 token 出发,用一个可训练的六层双向 connector 加 SANA 解码器把图重建出来。connector 只在真实图像上训练,绝不碰反事实样本,这样它没法把先验漏进来。拿 VLMs-are-Biased 的反事实子集来测。
第二套是可控视觉上下文敏感度(CVCS),把文本里的 CCS 框架搬到视觉上。每个 WhatIfVis 样本把一张反事实图配上一句对齐的文字陈述,同一个问题在两种意图下各问一次:一种「只看图」(ctx),一种「忽略图、回想世界知识」(pri)。PairAcc 要求模型在同一个样本上把两种意图都答对才算过。
WhatIfVis 基准有 3,049 条人工核验的反事实样本,覆盖五个粗粒度维度:时空、颜色、计数、大小、重量。再配合激活补丁和一个学到的 steering vector 做机制定位。
重建探测先给结论:反常属性在三个模型上都保留了 93.4%-97.8%(人工一致度 κ=0.84),重建图在指标上离反事实原图更近、离真实图更远。感知这一关没问题。
但模型的可控性很差:
| 设置 | 宏观 PairAcc |
| vanilla(无 SFT) | 14.7% |
| SFT(只训时空,其余四项 OOD) | 52.7% |
| steering vector(不给意图指令) | 37.7% |
| 随机秩一投影(对照) | 5.9% |
SFT 在时空上训练,却泛化到颜色、大小等另四项,说明它教的是「听图调度」这个通用能力,而非某个任务的套路。颜色和时空能逼近 80%,计数和重量抗迁移,因为它们要的不是直接读图,得把视觉线索拼起来推理(「哪个更重」并不写在像素里)。
激活补丁把视觉与先验的权衡定位到网络中上一层一条窄带上,深度随架构而定(Qwen3.5-9B 在第 13-21 层,Gemma-4-E4B 在第 20-27 层,最宽的带也只占 12 层)。在这条带里学一个秩一方向向量,推理时直接拨它,不用任何意图指令,可控性就从 14.7% 拉到 37.7%。
还有一个扎眼的非对称:同样的内容,文字里好执行得多。图是 14.7%,文字是 43.4%,而且这个差距随模型变大而拉大(Qwen3.5 从 18 个点扩到 55.8 个点)。拆开看,这个亏空几乎全出在「该信图时不信图」(图上 ctx 意图 45.7%,文字 73.9%),「该忽略图时」两边几乎一样(68.9% 对 69.5%)。
这篇把瓶颈挪了位置。在它测的这些粗粒度属性上,MLLM 把视觉证据编码进来了,缺的是一个能在视觉和先验之间可靠切换的开关。所以杠杆是一个可控的视觉与先验切换,不一定非得靠更好的视觉编码器,甚至能靠推理时一个学到的向量驱动,连提示词都不用改。对做视觉 grounding 的 agent 团队,「同样的内容文字里好执行、图里难,而且越大越难」是个实在的提醒。
只测了视觉编码器能稳定抓到的粗粒度属性(计数、颜色、大小、重量、时空)。纹理、小物体这些编码器本就容易丢的细粒度信息没碰,在那上面 H1 仍可能是主因。计数和重量抗 SFT 迁移,因为它们要超出直接可见做推理。steering vector 的 37.7% 仍明显低于 SFT 的 52.7%,而且是按模型在校验集上调过的。只看了三个家族、六个指令微调模型,对其他架构的泛化没验证。