VersaViT: Enhancing MLLM Vision Backbones via Task-Guided Optimization¶
会议: ECCV2026
论文: ECCV 原文
领域: 多模态 VLM
关键词: 视觉骨干、多任务学习、后训练、深度估计、指代分割
一句话总结¶
VersaViT 用语言、几何和像素定位三类监督联合后训练同一个 MLLM 视觉骨干,使 Qwen2-VL-ViT 的 ADE20k 冻结线性探测从 33.6 提升到 49.6 mIoU,同时将统一评测配置下的 OpenCompass 均分从 64.8 提升到 66.4。
研究背景与动机¶
多模态大语言模型(MLLM)通常由视觉编码器、视觉语言投影层和大语言模型(LLM)组成。 视觉编码器先把图像转换为特征,再由语言模型回答问题或生成描述,因此其训练质量常被整个系统的问答能力代表。 但能说出“图中有一辆车”,不等于特征保留了车轮边界、遮挡关系和物体前后距离。 这些局部结构恰好决定语义分割、单目深度估计等经典视觉任务的表现。 CLIP 式预训练与文本中心的指令微调提供强语义信号,却不必在每个像素上要求空间精确性。 本文因此不再只问 MLLM 答得好不好,而是直接检验其视觉骨干能否成为通用视觉基础模型。
作者用冻结骨干的线性探测审视 Qwen-VL 系列,发现问答能力并未自动转化为高质量稠密表示。 更有区分力的证据来自训练目标消融:仅追加 VQA 与描述训练时,OpenCompass 从 64.8 升到 66.1,ADE20k 却从 33.6 降到 32.0,NYUv2 RMSE 从 0.541 增至 0.557。 这并不能证明架构容量绝不是瓶颈,但明确说明继续沿用语言监督可能加重表示偏向。 如果只增加一个强分割解码器,下游成绩也可能来自解码器,而不是骨干本身得到改善。 本文要解决的正是这个归因问题:训练时用专用任务头提供梯度,评测时再冻结骨干检查特征是否真正迁移。
VersaViT 选择保留原有视觉 Transformer,而不是再串联一个完整视觉编码器。 图像描述与问答保住语义表达,深度估计迫使特征编码空间几何,指代分割则把文本语义落实到局部像素。 这三种监督不需要来自同一张具备全部标注的图像,而通过独立数据流共同更新共享骨干。 核心 idea:让不同粒度的任务损失共同塑造同一个视觉表示,以恢复语言中心训练没有充分约束的几何与像素细节,而不是用额外视觉骨干弥补它。
方法详解¶
整体框架¶
输入是分别来自问答/描述、深度、指代分割数据流的图像,以及各任务需要的文本或监督标签。 共享骨干初始化自 Qwen2-VL-7B 的视觉编码器;方法构建阶段的语言模型是 Qwen3-1.7B。 骨干产生逐层视觉特征,语言与分割分支主要使用末层特征,深度分支抽取分布在不同层的三组特征。 训练先做“投影对齐预热”,再让“三粒度任务监督”通过“交替累积更新”共同改造骨干。 产物是可接不同下游头的视觉骨干,而不是要求每次推理都运行全部三个任务的固定系统。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
Input["图文对 + 初始骨干"] --> Warmup["投影对齐预热"]
Warmup --> Supervision["三粒度任务监督<br/>语言 / 深度 / 指代分割"]
Streams["独立数据流<br/>文本 / 伪深度 / 掩码"] --> Supervision
Supervision --> Update["交替累积更新"]
Update --> Backbone["更新后的共享骨干"]
Backbone --> Deploy["推理:仅接所需任务头"]
图中的监督与更新发生在训练阶段,深度伪标签和分割数据构建模型并非推理时必须附带的组件。 尤其要区分:主实验中的 VQA 接入测试另外使用 Qwen3-8B,并全程冻结待比较的视觉骨干。 这让语言模型配置在两种骨干间保持一致,但不意味着直接拿后训练时的 1.7B 语言模型就能复现表 2 的分数。
关键设计¶
1. 投影对齐预热:先学会把视觉特征交给语言模型
新视觉语言接口若尚未对齐,直接同时修改骨干和语言模型,可能让接口适配与表示学习纠缠在一起。 作者首先冻结视觉骨干与 Qwen3-1.7B,只训练中间的 MLP 视觉投影层。 投影层把末层视觉特征变成语言模型可使用的图像嵌入,再与文本嵌入连接为输入序列。 训练目标是根据图像和之前的文本 token 预测下一个 token 的自回归交叉熵。 这一步是接口预热,并不直接宣称改善冻结骨干的空间特征。
预热数据兼顾自然图文和 OCR,避免接口只适配自然照片中的物体描述。 原文表 1 列出的 Pixmo-cap、IDL-WDS、SA-1B-InternVL 规模分别为 0.6M、4.7M、4.1M。 预热完成后,这条语言分支继续承担语义约束,而不在转入像素任务后被丢弃。 因此后续几何学习不是对原有问答目标的替代,而是在已建立的视觉语言接口上增加互补约束。
2. 三粒度任务监督:让语义、几何与定位约束同一份特征
问答与图像描述分支使用末层视觉特征,经 MLP 投影接入 Qwen3-1.7B,保留正常的生成式语言训练。 其意义不只是多一个评分项目,而是避免骨干为了深度或轮廓完全放弃语言可读的高层语义。 深度分支则从骨干逐层输出中均匀抽取三组特征,输入 DPT 头形成整幅图像的深度预测。 选择跨层特征让解码器能够利用不同抽象层次,而不是只依靠最终语义表示。 这是一条辅助训练路径;冻结线性探测用的是末层 patch 特征,不能与这个 DPT 头的直接预测混为一谈。 深度目标来自 Depth Anything V2 生成的伪标签,而非人工逐像素采集的深度真值。 深度损失结合尺度与平移不变项及多尺度梯度匹配,前者处理相对深度的不确定尺度,后者约束局部变化和边缘。 缓存中的梯度公式排版存在错位,且缺少补充材料;这里保留其确定的机制,不猜补精确实现。
指代分割分支需要图像、目标描述和对应掩码,让骨干知道“所说的对象具体占据哪些像素”。 它用 Qwen3-Embedding-8B 离线提取描述的文本嵌入,再由提示编码器转换为提示特征。 掩码解码器联合末层视觉特征、提示特征与输出 token 预测目标掩码,不需要让生成式 LLM 逐像素输出文本。 文本嵌入提取是离线步骤,不能把这个 8B 嵌入模型误写成每个训练批次都联合优化的语言解码器。 已有指代分割数据可直接使用;只有掩码的数据通过 Describe Anything 补描述。 只有框与类别的数据先由 SAM 根据框产生掩码,再使用生成描述或现有类别名补齐文本。 分割损失同时使用像素级二元交叉熵与 DICE,使局部分类和整体区域重叠都受到监督。 这些任务头允许各自输出形式不同,但“吸收任务冲突”是作者的解释,不代表论文引入了显式梯度冲突消除算法。
3. 交替累积更新:无需三重标注,也让三类梯度一起影响骨干
实际数据不是每张图同时具有问答、深度和指代掩码,而是三个任务独立采样。 每次依次取一个任务批次,经过共享骨干及对应任务头,计算该任务的损失并累积梯度。 等三个任务都处理完,才执行一次集体参数更新,而不是每个任务立即把前一任务的更新覆盖掉。 在这一阶段,视觉骨干、相应任务头、视觉投影和生成式 LLM 都解除冻结。 不同损失最终通过共享参数相遇,专用头则保留各任务适合的预测形式。 任务权重控制的是进入联合目标的监督比例,不是根据输入动态选择专家的路由分数。
原文的联合目标可以直接写为:
其中语言项对应问答与描述的自回归损失,深度项合并尺度/平移不变与梯度损失,分割项合并 BCE 与 DICE。 表 5 的均衡配置把三项权重都列为 0.33;并没有使用复杂的在线权重优化器。 提高深度权重确实能改善深度,但不必然得到最好的问答或分割,因此“通用骨干”仍涉及目标选择。 与训练相比,下游推理只保留所需路径:问答接投影与 LLM,深度接深度头,指代分割接文本条件的掩码头。 若部署分割服务,仍须为新描述提供相应文本表示;“离线嵌入”不能被理解为无需文本条件。
一个完整示例¶
设训练中依次遇到一张需要描述的街景、一张带伪深度的室内照片,以及一张标注了“左边的车”的图像。 这是说明数据流的示例,不是论文新增的定量实验,也不要求三张图具有相同内容。 街景批次通过末层视觉特征和语言模型计算描述损失,提示骨干保留物体与场景语义。 室内批次使用三个层级特征与 DPT 预测深度,并对齐 Depth Anything V2 的伪标签,强调空间结构。 车辆批次将目标描述的嵌入与图像特征送入掩码头,用对应掩码约束对象边界和语言定位。 三批梯度累积后一起更新;模型并不是先生成深度,再把深度送入分割,最后让问答读取分割答案。 完成后可以移除这些辅助训练路径,冻结骨干并训练一个线性分割头,以检验空间信息是否进入了视觉表示本身。
损失函数 / 训练策略¶
预热使用 batch size 1024、学习率 \(10^{-3}\),训练 1 epoch,且仅更新视觉投影。 联合阶段同样训练 1 epoch;视觉编码器、视觉投影和文本解码器学习率为 \(10^{-5}\),其余可训练参数为 \(10^{-4}\)。 模型支持动态分辨率;这与表 3 分割线性探测固定使用 \(560\times560\) 分辨率并不矛盾。 VQA/描述联合训练使用表 1 的 14.0M FineVision 数据,深度与分割另有各自的多源数据流。 论文未在所给正文中完整列出所有内部损失系数、深度头取层索引及补充评测配方,复现时不能凭经验替作者填值。 评测问答时另外训练 Qwen3-8B 接口:第一阶段只训投影,第二阶段训投影与 LLM,两个阶段都冻结视觉骨干。 因此主结果支持“视觉表示可以迁移”,而不是宣称无需任何下游适配就能直接完成所有任务。
实验关键数据¶
主实验¶
下表摘录原文表 2(第 9 页)和表 3(第 10 页),基线均为 Qwen2-VL-ViT。 OpenCompass 为接入同一 Qwen3-8B 配方后的八项均分;稠密任务为冻结骨干线性探测,分割分辨率为 \(560\times560\)。 分割指标是 mIoU,深度指标是 RMSE;变化列为绝对差,不是相对提升百分比。
| 评测 | 指标与方向 | 基线 | VersaViT | 绝对变化 |
|---|---|---|---|---|
| OpenCompass | 八项均分,越高越好 | 64.8 | 66.4 | +1.6 |
| ADE20k | mIoU,越高越好 | 33.6 | 49.6 | +16.0 |
| Cityscapes | mIoU,越高越好 | 57.6 | 74.5 | +16.9 |
| Pascal VOC | mIoU,越高越好 | 67.5 | 86.6 | +19.1 |
| NYUv2 | RMSE,越低越好 | 0.541 | 0.473 | -0.068 |
| KITTI | RMSE,越低越好 | 3.735 | 3.136 | -0.599 |
改善并非每个 VQA 子项都同向:表 2 的 MMB 从 78.2 降到 78.0,AI2D 从 79.4 降到 79.1;MMVet 则从 58.7 升到 62.6。 表 3 的 DINOv3-7B/16 在 ADE20k 达到 55.9、NYUv2 RMSE 为 0.309,仍优于 VersaViT;VOC 为 86.6,二者相同。 这些模型规模与预训练不同,不能把该表解读成严格同算力排名。
消融实验¶
原文表 4(第 11 页)逐步加入监督,OpenCompass 仍报告均分,NYUv2 为 RMSE,ADE20k 为 mIoU。 它直接检验“只靠更多语言训练是否足够”,而不是只展示完整模型比原始模型好。
| 后训练任务 | OpenCompass,越高越好 | NYUv2,越低越好 | ADE20k,越高越好 |
|---|---|---|---|
| 不追加后训练 | 64.8 | 0.541 | 33.6 |
| 仅 VQA 与描述 | 66.1 | 0.557 | 32.0 |
| VQA 与描述 + 深度 | 66.3 | 0.495 | 35.1 |
| VQA 与描述 + 深度 + 指代分割 | 66.4 | 0.473 | 49.6 |
在已有语言与深度监督之上加入指代分割,ADE20k 增加 14.5 点,NYUv2 RMSE 再降低 0.022,显示收益并不限于新增任务本身。 但这不是完整因子消融:缺少“仅深度”“仅分割”和“语言+分割”等配置,不能唯一分解各任务的独立贡献。 表 5 的权重消融中,深度权重为 0.50、另外两项为 0.25 时,NYUv2 达到 0.455,但 OpenCompass 为 65.7;均衡配置是折中而非所有列最优。
关键发现¶
- 表 7(第 12 页)的 35M 单任务数据基线为 66.2 / 0.547 / 34.7,完整模型为 66.4 / 0.473 / 49.6,顺序对应 OpenCompass / NYUv2 / ADE20k。它削弱“纯粹多喂数据”的解释,但不等价于完全配平算力和标注来源。
- 表 8(第 12 页)给出的 NAVI Recall 为 39.27 到 41.64,SPair Recall 为 17.05 到 26.99。精确差值为 2.37 与 9.94,正文的 2.3 与 10 是较粗表述。
- 表 9–10(第 13 页)要区分训练边界:深度无专用微调的 DA-2K 准确率为 91.3%,专用微调后为 94.2%;RefCOCO 结果是在该系列数据集上继续微调后得到,并非零样本分割。
亮点与洞察¶
- 最有价值的是把“问答好”与“视觉特征好”拆开验证。冻结骨干线性探测比直接换强解码器更能说明稠密信息确实被保留。
- 任务头是向共享表示注入约束的训练工具,不要求所有输出服从文本生成形式。这让深度和掩码使用各自合适的空间损失。
- 独立数据流降低了全标注样本的要求。读者可借鉴这一点补充缺失能力,但仍须检查伪标签质量与数据偏差。
局限与展望¶
- 作者强调低成本和轻量头,但所给正文未报告完整 GPU 时长、显存或伪标签制作成本。Qwen3-1.7B 的训练以及两个大型模型的数据/文本预处理也不能忽略。
- “任务头吸收冲突”是解释性主张,正文没有梯度冲突的直接测量。更严格的研究可以比较梯度相似度与参数更新方向,这是读者建议而非本文结果。
- 深度教师、SAM 与 Describe Anything 都会引入各自偏差;表 7 也没有彻底隔离额外教师知识的作用。不能据此声称该方法不依赖教师监督。
- 作者提出把该训练方式前移到 MLLM 预训练阶段,但目前主要证据来自后训练。大规模早期联合训练的稳定性和收益仍待验证。
- 缓存只包含正文与参考文献,没有补充材料;深度公式排版、部分实现细节和完整 VQA 适配配方无法在本材料中完全核实。
相关工作与启发¶
- Qwen2-VL / Qwen2.5-VL(原文 [66] / [1]):提供初始视觉骨干和语言中心训练背景。VersaViT 不是另造问答架构,而是修正其视觉表示的监督粒度。
- DINOv3(原文 [54]):提供强稠密表示及冻结探测参照。本文缩小部分差距,但 ADE20k 和深度并未全面超过它。
- DUNE / UNIC(原文 [50] / [51]):主要从冻结视觉教师蒸馏表示;VersaViT 通过任务输出监督塑造骨干,但其深度伪标签仍来自教师,两者不是完全互斥。
- Depth Anything V2 / SAM(原文 [78] / [29]):分别支撑深度伪标签和框到掩码的构建。应把这些模型视为监督来源,不误当成推理时串接的额外视觉骨干。
评分¶
- 新颖性: 3/5。核心是清晰的问题诊断和多粒度后训练组合,而非新的网络结构或优化算法。
- 实验充分度: 4/5。覆盖问答、稠密探测及迁移,但任务组合与成本归因仍不完整。
- 写作质量: 4/5。主线和消融明确,部分正文结论比表格更概括,实施细节依赖补充材料。
- 价值: 4/5。为同时需要语言语义与像素精度的视觉骨干提供了可迁移的训练思路。