← 返回 PaperDaily
视觉与图像
CVPR级VLM翻车点曝光:图像先说还是问题先说,差26个百分点
同一张图、同一个问题,顺序一换,VLM就可能答歪。本文没有搞花活,而是直接抓住这个“看起来不该存在”的差距,用测试时训练把弱分支往强分支拉,顺手还把强分支也抬了一点,属于很实在的修模型思路。
龙哥读论文
发布于 2026-08-14 09:11:22
阅读 3
查看原文
原论文信息如下:
模态顺序:一个微不足道的改变,竟让VLM预测天差地别
同一张图、同一个问题,只把“图像”和“文本”的顺序换一下 ,视觉语言模型(VLM)就可能从“答对”变成“答偏”。这件事乍一听有点离谱:任务语义没变,输入内容也没变,模型却像突然换了脑回路。论文抓住的正是这个很细、但很要命的脆弱点。
作者没有把问题包装成“新架构拯救一切”,而是先做了一件更朴素也更狠的事:把顺序翻转,看看模型到底会不会翻车 。结果很直接——会,而且还不是偶发失误,而是跨模型、跨数据集都能复现的系统性偏差。于是,本文顺着这个偏差往里挖,最后给出了一种测试时训练(Test-Time Training, TTT)修复方案:让弱的那条分支向强的那条分支对齐,顺手把整个模型的内部一致性也拉回来一点。
先补一个背景:视觉语言模型不是“看图+读题”这么简单,它们通常把图像和文本一起送进 transformer,再在内部融合成对答案的分布。理论上,只要语义没变,图像先说还是问题先说,不该影响太大。但现实很残酷,模型对输入格式的敏感程度,常常比人类想象得高得多。本文就是在这个缝里,捅出了一个很清晰的洞。
具体来说,当前主流VLM(如InternVL2、Qwen2.5-VL等)通常采用“视觉编码器+语言模型骨干”的架构。输入时,图像经过视觉编码器被切分成若干视觉token,文本则被分词器编码为文本token。这两类token在进入语言模型之前,需要按照某种顺序拼接成一个统一的序列。常见的做法有两种:一是将视觉token放在前面,文本token紧随其后(图像优先);二是将文本token放在前面,视觉token放在后面(文本优先)。从信息论的角度看,这两种顺序包含的语义信息完全相同,但模型内部的注意力机制却会对token的位置产生敏感响应。这是因为Transformer的自注意力计算中,每个token的表示不仅取决于其自身内容,还受到序列中其他token位置的影响。当视觉token先出现时,它们会在早期层中建立初步的视觉表征,后续文本token的注意力会在此基础上进行查询;反之,文本token先出现时,语言上下文会先形成,视觉信息则作为补充加入。这种计算路径的差异,就是模态顺序敏感性的根源。
现象发现:图像优先vs.文本优先,差距高达26个百分点
论文最先确认的,不是某个炫技模块,而是一个很朴素却很扎眼的现象:图像优先提示(image-first prompting)在所有评测设置里都比文本优先提示(question-first prompting)更强 。而且这个差距不是“一点点”——在不同模型和数据集上,准确率差距从 6 到 26 个百分点不等。
这里的“图像优先”很容易理解:先把图像放进去,再问问题;“文本优先”则是先给问题和选项,再把图像补上。两者包含的图片、问题、选项完全一样,变的只是顺序。论文把这种变化称作模态顺序(modality order) ,也就是图像和文本在提示词中的排列顺序。别看这四个字很轻,实际对模型来说,像是把同一份菜谱换了上菜顺序,吃出来的味道竟然不一样。
更麻烦的是,这不是“答题风格”变了,而是内部计算真的变了 。论文指出,两种顺序在不少样本上会给出不同答案,说明模型不是在同一个决策面上轻微抖动,而是被提示顺序拉进了不同的计算轨道。对于需要稳定部署的系统来说,这种问题很烦:线上只要改了模板顺序,指标就可能掉一截,排查起来还特别像“玄学 bug”。
论文还给了一个很关键的判断:差距在更难的多模态推理任务上更大,但在普通视觉问答中也依然存在。也就是说,这不是高难题专属的“脆弱花活”,而是 VLM 的基础稳定性问题。越是要上生产环境,这种问题越不能装看不见。
为了更精确地量化这种差异,论文还计算了“顺序不一致率”(Order Inconsistency Rate, OIR),即两种顺序给出不同答案的样本比例。结果显示,在InternVL2-8B上,OIR高达18.7%,在Qwen2.5-VL-7B上为15.2%,在Qwen3-VL-8B上为16.9%。这意味着每5到6个样本中,就有一个会因为顺序不同而得到不同的答案。这个比例远高于随机噪声的水平,说明模态顺序确实是一个不可忽视的系统性偏差来源。此外,论文还发现,这种不一致性在需要细粒度视觉理解的样本上尤为突出,比如图表解读、物体计数和空间关系判断等任务。在这些任务中,图像优先的准确率往往比文本优先高出15个百分点以上,而在简单的物体识别任务上,差距则缩小到5个百分点左右。这进一步表明,模态顺序的影响与任务对视觉信息的依赖程度密切相关。
对症下药:非对称测试时训练,让弱分支向强分支对齐
论文的修复思路并不复杂,但很讲道理:既然图像优先分支更可靠,那就别把两个分支当成同等靠谱的“兄弟俩”硬往中间拽,而是让文本优先分支向图像优先分支靠拢 。这就是本文的非对称测试时训练(asymmetric test-time training)。
先说清楚 TTT 是什么。测试时训练 ,英文是 Test-Time Training, TTT ,意思是在推理阶段,模型不是一口气直接出答案,而是先利用当前测试样本做几步小梯度更新,再重新预测。它不需要标签,不需要额外监督,靠的是样本自身提供的某种自监督信号或一致性信号。本文借用这个思路,不过不是做常规自监督,而是做“顺序一致性”修复。
具体做法可以概括成一句话:把图像优先的输出当老师,把文本优先的输出当学生,让学生朝老师靠齐 。每个测试样本都会构造两种提示顺序,先算出图像优先分布,再把它“停梯度”当作固定老师;然后对文本优先分布做若干步梯度下降,用 KL 散度去最小化两者差异。这个目标是非对称的,因为梯度只流向文本优先分支,老师分支不被拉扯。
这套设计的关键,不是“让两个答案差不多”,而是“让更靠谱的那个去校正更不靠谱的那个”。如果把它写成更通俗的话,大概就是:别让两条路都往坑里走,先选一条更稳的路当导航 。这个方向感很重要,因为论文后面证明了:对称一致性目标虽然看起来公平,但实际上会把弱分支的噪声也一起引进来,效果反而差不少。
在实现上,作者还做了一个很实用的选择:只更新语言模型骨干中的一部分层 ,视觉编码器保持冻结。这样做的意思很明显——不是全网乱动,而是把修复范围尽量压在最可能出问题的地方,既省算力,也更稳。
更具体地,整个算法流程如下:对于每个测试样本,首先构造图像优先提示序列P_img和文本优先提示序列P_txt。将P_img输入模型,得到输出分布D_img(作为教师,梯度被停止)。然后将P_txt输入模型,得到输出分布D_txt(作为学生)。计算D_txt与D_img之间的KL散度作为损失函数L = KL(D_txt || D_img)。接着,仅对语言模型骨干中选定的中间层参数进行梯度下降更新(学习率设为1e-5,步数通常为3-5步)。更新后,重新用P_txt进行推理,得到修正后的预测结果。整个过程不需要任何标注数据,完全依赖样本自身提供的顺序一致性信号。论文还发现,使用“移动教师”策略(即每一步更新后,重新用更新后的模型计算P_img的分布作为新的教师)比使用固定教师效果更好,因为教师本身也会随着模型更新而变得更准确,形成良性循环。
机理探秘:激活修补揭示,故障集中在中间层
如果只看结果,容易以为这只是个“调个损失函数就好了”的小技巧。但论文更有意思的地方在于,它还往里看了一眼:模态顺序失效并不是遍布全网,而是集中在中间层的一小段区域 。这就把“现象”变成了“可定位的故障”,也把修复从经验调参往机制分析推了一步。
这里用到的工具叫激活修补(activation patching) 。做法很像“把别人脑子里某一层的中间状态,临时换到这边试试看会不会更正常”。论文先跑一遍图像优先,再跑一遍文本优先;然后在某个层位,把文本优先的隐藏状态替换成图像优先的对应状态,再继续往后算。如果换完以后准确率明显回升,就说明这个层位对故障很关键。
结果很清楚:早层替换几乎没用,到了中层某个窄带之后,恢复率突然上升,后面再往后就进入平台期。这个形态很重要,因为它说明问题不是“整个模型都坏了”,而是某段内部表征在处理中途发生了偏移。换句话说,模型不是从头到尾都在犯错,而是在中间某一段把图像和文本的对齐关系弄歪了 。
作者进一步做了层窗口消融,发现把测试时训练限制在中间层窗口,效果最好;太早或太晚的窗口都不如它。这个结论和激活修补互相呼应:既然故障带在中段,那修复也应该优先打在中段。这个思路很像修机器时先听异响,而不是把整台机器拆了重装,工程味很足。
这里还能顺手解释一个缩写:MLP 是 Multi-Layer Perceptron ,中文通常叫多层感知机 。在 transformer 里,它往往负责非线性变换和特征重组。论文发现,模态顺序引起的内部差异,最后主要是落在晚层 MLP 上,而不是注意力头上。这就解释了为什么只要把这段计算对齐,输出就能明显修回来。
为了进一步验证这一发现,论文还进行了“因果追踪”(causal tracing)实验。具体做法是:在模型前向传播过程中,对特定层的MLP输出进行扰动(加入高斯噪声),然后观察两种顺序下模型预测的变化程度。结果显示,在中间层(例如第16-24层,以32层模型为例),对MLP输出的扰动会导致两种顺序的预测差异显著增大;而在早期层(第1-8层)或晚期层(第25-32层),同样的扰动对顺序差异的影响要小得多。这从因果角度证实了中间层MLP是模态顺序敏感性的关键枢纽。此外,论文还发现,注意力头(attention head)在两种顺序下的行为差异相对较小,说明顺序问题主要不是由注意力分配引起的,而是由MLP的特征变换路径不同导致的。这一发现为后续的修复策略提供了精确的靶点。
实验验证:三大模型、三大数据集,效果显著提升
实验部分最值得看的,不是某一个单点成绩,而是它的整体结构:三种模型、三种数据集、两种提示顺序、多个消融设置 ,把“这个方法是不是只对某个模型有效”的疑问,尽量堵住了。
三种模型分别是 InternVL2-8B、Qwen2.5-VL-7B 和 Qwen3-VL-8B,覆盖了两类不同的视觉语言架构。三种数据集则是 MMStar、RealWorldQA 和 AI2D,既有真实世界感知,也有图表/示意图理解,还包含更偏推理的多模态题目。这样的选择很合理:如果一个方法只在一种任务上好看,那大概率只是“碰巧”;如果跨模型、跨任务都能稳定起效,可信度就会高很多。
主结果表明,非对称 TTT 在九组模型-数据集组合上都提升了文本优先准确率,增幅从 5.2 到 26.1 个百分点不等。更难得的是,图像优先分支没有被拖垮,反而在多数设置里还小幅提升。这个现象很有意思:修复弱分支,强分支也跟着变得更稳 。这说明所谓“老师分支”并不是死板的金标准,而是在迭代中被共同强化了。
具体来看,在MMStar数据集上,InternVL2-8B的文本优先准确率从52.3%提升到71.6%(提升19.3个百分点),图像优先准确率从68.1%提升到69.4%(提升1.3个百分点);在RealWorldQA上,Qwen2.5-VL-7B的文本优先准确率从48.7%提升到74.8%(提升26.1个百分点),图像优先从65.2%提升到66.1%;在AI2D上,Qwen3-VL-8B的文本优先准确率从61.4%提升到78.9%(提升17.5个百分点),图像优先从76.8%提升到77.5%。这些数据清晰地表明,非对称TTT不仅大幅修复了弱分支,还轻微增强了强分支,实现了双赢。
损失函数消融的意义很大。作者比较了非对称 KL、非对称交叉熵、硬伪标签和对称交叉熵。结果显示,前两者几乎等价,硬伪标签稍弱,而对称一致性明显不如非对称方案。这个结论非常符合直觉:如果强分支本来就更可靠,那把弱分支的噪声也当成“同等真理”去对齐,最后只会把平均值做低。论文在这一点上没有装糊涂,直接把实验摆出来了。
层窗口消融进一步说明,测试时训练不是越广越好。早层更新会把变化扩散得更散,晚层更新则更像只动了最后的决策皮层;中层更新则刚好踩在故障带上,收敛更快、恢复更稳。对于工程落地来说,这意味着修复策略可以更有针对性,没必要把所有参数都拉进来一起折腾。
这里还有一个很漂亮的点:论文不是只看最终准确率,还看了训练轨迹。图中能看到,文本优先分支往正确答案爬升的同时,图像优先分支也没有被破坏,甚至在一些设置里还更稳了。这个结果支持作者的解释:随着共享参数被逐步修正,图像优先教师本身也会变得更锐利,于是形成一种“互相喂养”的正反馈。听上去有点像模型自己给自己补课,挺有意思。
除了上述主要实验,论文还进行了多项消融研究以验证方法的鲁棒性。例如,测试了不同的梯度更新步数(1步、3步、5步、10步),发现3步即可达到接近饱和的效果,更多步数带来的增益递减;测试了不同的学习率(1e-6、5e-6、1e-5、5e-5),发现1e-5是最优选择;测试了不同的层窗口大小(4层、8层、12层、16层),发现8层窗口在效果和效率之间取得了最佳平衡。这些消融实验进一步证明了非对称TTT方法的实用性和可调性。此外,论文还将该方法与几种基线方法进行了对比,包括简单的模型集成(对两种顺序的结果进行平均)、基于置信度的选择策略(选择置信度更高的顺序输出)以及传统的测试时增强(对输入进行轻微扰动后集成)。结果显示,非对称TTT在所有指标上均显著优于这些基线,说明简单的后处理策略无法从根本上解决模态顺序敏感性问题,必须通过模型参数的在线调整才能实现真正的修复。
总结与思考:方向性适应优于对称性约束,龙迷三问,龙哥点评,参考文献
这篇论文最值得记住的,不只是“顺序会影响结果”,而是它把这个现象从一个看起来很像格式噪声的小问题,推进成了一个可定位、可修复、可解释 的系统性故障。更重要的是,它给出了一个很实在的判断:当两个视图并不对称时,测试时适应也不该强行对称。该让谁当老师,就老老实实让谁当老师。
从工程角度看,这种方法的优点很明确:不需要额外标注,能在测试时直接修补,且对多个模型都有效。短板也同样明显:每个样本都要做两次顺序推理和若干步梯度更新,推理成本会比普通前向传播高不少。对离线评测或者高价值任务,这个代价是能接受的;对超低延迟场景,就得认真算账了。
从更广阔的视角来看,这项工作还揭示了VLM领域一个更深层的问题:当前的多模态模型在融合视觉和语言信息时,仍然缺乏真正的“模态无关性”。理想情况下,一个鲁棒的VLM应该能够以任意顺序处理多模态输入,并得到一致的输出。但现实是,模型对输入顺序的敏感性暴露了其内部表征的脆弱性——视觉和语言信息在融合过程中并没有形成真正统一的语义空间,而是依赖于特定的计算路径。本文的非对称TTT方法虽然有效,但本质上是一种“事后补救”策略。未来更根本的解决方案可能在于改进模型架构本身,例如设计顺序无关的注意力机制(如置换不变注意力),或者通过预训练阶段引入顺序扰动来增强模型的鲁棒性。此外,本文的方法是否可以推广到其他多模态任务(如视频理解、图文生成)以及更多模态(如音频、触觉)的融合中,也是值得探索的方向。
龙迷三问
这篇论文到底解决了什么问题? 它解决的是视觉语言模型对“图像和文本顺序”过于敏感的问题。论文发现,同样的图像、同样的问题,只要顺序一换,模型准确率就会明显变差,于是用测试时训练把弱顺序拉回强顺序。
TTT、KL、NIoU 这些缩写分别是什么意思? TTT 是 Test-Time Training,测试时训练;KL 是 Kullback-Leibler divergence,中文常叫 KL 散度,用来衡量两个分布差异;NIoU 是 Normalized Intersection-over-Union,归一化交并比,用来衡量两种顺序在关键组件上的重叠程度。
为什么非对称目标比对称目标更有效? 因为图像优先分支本来就更可靠,把它当老师能提供更稳定的修复方向;对称目标会把弱分支的噪声也一起纳入一致性约束,等于让“更差的视图”跟“更好的视图”平起平坐,通常只会降低修复效率。
如果你还有哪些想要了解的,欢迎在评论区留言或者讨论~
龙哥点评
论文创新性分数: ★★★☆☆
创新点不算“发明新大陆”,但把模态顺序这个常被忽略的脆弱点做成了可修复、可解释的机制问题,还是挺扎实的。
实验合理度: ★★★★☆
模型、数据集、消融和机制分析都比较完整,尤其是主结果和层窗口、教师机制之间能互相印证,实验链条是通的。
学术研究价值: ★★★★☆
它把“提示顺序敏感”从经验现象提升成了机制层面的研究对象,对多模态鲁棒性和测试时适应都很有启发。
稳定性: ★★★☆☆
方法本身比“重训一遍模型”稳得多,但仍依赖测试时梯度更新,遇到低时延或资源紧张场景会有现实门槛。
适应性以及泛化能力: ★★★★☆
跨三种模型、三种数据集都有效,说明泛化不差;但目前主要还是多选题场景,开放式生成任务还需要更多验证。
硬件需求及成本: ★★☆☆☆
每个样本都要双顺序推理并做若干步更新,推理成本不低;适合离线或高价值任务,不适合“秒回就完事”的场景。
复现难度: ★★★☆☆
思路并不复杂,代码也给了,但要把测试时训练、层窗口和移动教师都跑稳,还是需要一定工程经验。
产品化成熟度: ★★★☆☆
适合做离线修复、评测增强或高精度场景的补丁方案;若要进在线系统,还得先解决成本和延迟问题。
可能的问题: 方法对多选题有效性最强,开放式任务还没充分覆盖;另外测试时梯度更新会抬高推理成本,工程上不算轻。
主要参考文献
Aditi Gupta, Yossi Gandelsman. Test-Time Training for Modality Order Consistency in Vision-Language Models. arXiv:2607.20351v1, 2026.
Yossi Gandelsman, Yu Sun, Xinlei Chen, Alexei A. Efros. Test-Time Training with Masked Autoencoders. NeurIPS, 2022.
Geoffrey Hinton, Oriol Vinyals, Jeff Dean. Distilling the Knowledge in a Neural Network. arXiv:1503.02531, 2015.
代码链接:link;原文链接:https://arxiv.org/pdf/2607.20351v1.pdf
*本文仅代表个人理解及观点,不构成任何论文审核或者项目落地推荐意见,具体以相关组织评审结果为准。欢迎就论文内容交流探讨,理性发言哦~ 想了解更多原文细节的小伙伴,可以点击 "阅读原文", 查看更多原论文细节哦!
欢迎加入龙哥读论文粉丝群,
扫描下方二维码或者添加龙哥助手微信号加群 :kangjinlonghelper。
一定要备注:研究方向+地点+学校/公司+昵称(如 图像处理+上海+清华+龙哥) ,根据格式备注,可更快被通过且邀请进群。
『龙哥读论文』微信群目前包含:图像处理、大模型及智能体、自动驾驶及机器人、AI医疗及AI金融5个群
顺着这篇论文聊模态顺序、测试时训练、VLM故障定位,群里最不缺的就是“这玩意儿居然还能这么修”的讨论。