← 返回论文库
奠基 Groundwork CVPR 2024 · 2023 arXiv:2312.07533 ↗

VILA: On Pre-training for Visual Language ModelsVILA:视觉语言模型的预训练研究

系统研究 VLM 预训练:交错图文数据 + 解冻 LLM + 视觉思维链,显著提升上下文学习与推理。

作者:Ji Lin, Hongxu Yin, Wei Ping, Yao Lu, Pavlo Molchanov, Andrew Tao, Huizi Mao, Jan Kautz, Mohammad Shoeybi, Song Han
机构:NVIDIA / MIT
发布:CVPR 2024
时间:2023-12
视觉-语言模型预训练视觉思维链
原文摘要 · English Abstract

We examine design options for VLM pre-training: (1) freezing LLMs achieves decent zero-shot but lacks in-context learning, which requires unfreezing; (2) interleaved pre-training data is beneficial whereas image-text pairs alone are not optimal; (3) re-blending text-only instruction data boosts both text and VLM tasks. We also find visual chain-of-thought is beneficial.

概要

VILA 研究的是视觉语言模型(VLM)此前被忽视的「预训练」环节:多数工作只关注视觉指令微调阶段,很少系统考察让 LLM 学会理解图像的预训练过程该怎么设计。论文通过控制变量消融,回答了预训练要不要更新 LLM 参数、要用图文对还是图文交错语料、指令微调阶段要不要混入纯文本数据这三个关键问题,并把结论汇总成一套预训练配方。基于该配方训练出的 VILA 模型,在相同 LLM 和指令数据配置下全面超过 LLaVA-1.5,还意外获得了多图推理、更强上下文学习与更好世界知识等能力。

此前 VLM 研究的重心集中在指令微调阶段:如何构造更好的问答/描述数据、如何设计投影层,而对「预训练」——让 LLM 在图文语料上学会理解图像——缺乏系统研究。常见做法是冻结 LLM、只训投影层做提示微调,理由是能避免破坏 LLM 原有文本能力;但这是否会牺牲多模态能力(尤其上下文学习),此前没有受控实验验证过,各家 VLM 做法也互相矛盾。

关键贡献

  • 系统消融了 VLM 预训练阶段是否需要微调 LLM,发现冻结 LLM 会损害深层嵌入对齐与上下文学习能力。
  • 证明交错图文语料(如 MMC4)相比纯图文对更能保持文本能力并促成视觉上下文学习。
  • 提出在视觉指令微调阶段联合训练纯文本指令数据,同时恢复文本精度并提升视觉任务表现。
  • 把上述发现汇总成一套预训练配方,训练出的 VILA 模型全面超越 LLaVA-1.5 等同期方法。
  • 揭示预训练还能解锁多图推理、增强上下文学习与更好世界知识等此前未被注意到的能力。
  • 验证微调 LLM 优于冻结 LLM 加视觉专家或 LoRA 的替代方案,且模型规模更小、更适合边缘部署。

方法详解(完整做法)

总体思路

VILA 研究的是自回归视觉语言模型(VLM)的「预训练」环节:把冻结的视觉编码器和冻结的 LLM 用一个投影层桥接后,先做投影层初始化,再让 LLM 一起在图文语料上继续训练(这才是本文的研究对象),最后再做视觉指令微调。全文通过控制变量的消融实验,逐一回答「投影层要多复杂」「LLM 参数要不要动」「预训练语料该长什么样」「指令微调阶段要不要掺文本数据」,把结论汇总成一套预训练配方,训出的模型 VILA 在同等 LLM 和指令数据下全面超过 LLaVA-1.5。

三阶段训练流程

自回归 VLM 由视觉编码器、投影层、LLM 三部分组成,图像被切成 patch 编码后经投影层映射为「视觉 token」,与文本 token 拼接送入 LLM,统一做下一词预测:

L=−∑tlog⁡pθ ⁣(yt∣y<t, xtext, xvis)\mathcal{L}=-\sum_t \log p_\theta\!\left(y_t \mid y_{<t},\, x_{\text{text}},\, x_{\text{vis}}\right)

训练分三阶段:阶段 0 冻结 ViT 与 LLM、只用图文对初始化投影层;阶段 1(本文的研究重点)在图文语料上继续预训练 LLM 和投影层,成本最高、对模态对齐最关键;阶段 2 再用 FLAN 风格的视觉指令数据做监督微调。本文的所有消融都发生在阶段 1。

LLM 要不要参与训练?——深层嵌入对齐假设

两种做法:冻结 LLM 只训投影层(prompt tuning)看似能保住纯文本能力,但消融显示它的零样本精度不输微调版,四样本(in-context learning)精度却明显更差。作者假设原因是视觉与文本表示只在浅层对齐;用余弦相似度衡量两类嵌入在各层的接近程度:

sim(ev,et)=ev⊤et∥ev∥ ∥et∥\mathrm{sim}(e_v, e_t)=\frac{e_v^\top e_t}{\lVert e_v\rVert\,\lVert e_t\rVert}

微调 LLM 的配置在深层的相似度明显更高,且与 4-shot 精度的提升趋势一致,说明只有放开 LLM 才能把视觉信息对齐到能被上下文学习利用的深层表示——这是为什么本文坚持在预训练阶段更新整个 LLM,而不是只训投影层。

交错图文语料 vs 图文对

预训练语料有两种:MMC4 式的「图文交错」网页文本,和 COYO/LAION 式的「一图一句」短 alt-text 图文对。用后者预训练会让纯文本 MMLU 精度掉 17.2 个百分点,且 4-shot 反而比 0-shot 更差——模型在预训练里从没见过多图上下文,学不会用它。把 MMC4 拆成等价的图文对(MMC4-pairs,丢弃交错结构但保留同样的文本片段)效果同样差,说明真正起作用的不是文本长度,而是「交错」这个结构本身:连续的长文本段提供了比孤立短标题多得多的语言建模信号,训练损失曲线也印证了这一点。

联合指令微调:找回丢失的纯文本能力

交错语料能把 MMLU 的掉分从 17.2% 降到约 5%,但仍未完全恢复。作者发现纯文本能力只是被「暂时压制」而非「彻底遗忘」:指令微调阶段混入约 100 万条 FLAN 纯文本指令数据,就能把 MMLU 精度拉回到与同等文本 SFT 的 Llama-2 相当的水平,同时视觉语言任务精度也进一步提升——文本指令数据补的是「指令遵循能力」,这项能力对视觉任务同样有用,因此是双赢而不是权衡。

规模化 VILA:分辨率、模型规模与数据

在上述消融结论基础上,VILA 把分辨率从 224 提到 336,在 CLIP-L/14 编码器(patch 大小 p=14p=14)下,每张图切分出的视觉 token 数为:

Ntok=(Hp)×(Wp)=(33614)2=576N_{\text{tok}}=\left(\frac{H}{p}\right)\times\left(\frac{W}{p}\right)=\left(\frac{336}{14}\right)^2=576

更高分辨率带来更细粒度的视觉信息,显著提升 TextVQA 这类依赖文字细节的任务;同时把 LLM 从 7B 扩到 13B,预训练语料混合交错数据与图文对到约 5000 万张图,指令微调换用更丰富的 LLaVA-1.5 数据配比。这些改动共同构成最终的 VILA 训练配方。

小结

一句话记住:VILA 的贡献不是新架构,而是把「LLM 要不要一起训」「预训练语料要不要交错」「指令微调要不要掺文本」这三个此前被忽略的预训练设计选择系统消融清楚,并把结论组装成一套可复现的预训练配方。

实验与关键数据

消融统一在 Llama-2-7B/13B + CLIP-L 上进行,用 OKVQA、TextVQA、COCO、Flickr 的 0/4-shot 精度评估视觉能力,用 MMLU 评估文本保持程度;最终配方在 VQAv2、GQA 等 12 个基准对比,结论是三项改动叠加后 VILA 全面优于 LLaVA-1.5。

关键数据

MMBench 综合得分 (VILA-13B)
70.3
vs LLaVA-1.5-13B 67.7(+2.6)
TextVQA 精度 (VILA-7B)
64.4%
vs LLaVA-1.5-13B 61.3%(+3.1)
VisWiz 精度 (VILA-7B)
57.8%
vs LLaVA-1.5-13B 53.6%(+4.2)
预训练语料对 MMLU 的掉分幅度
MMC4 交错语料掉 5.3pt
vs COYO 图文对掉 17.2pt(-11.9pt 差距)
13B 模型 DROP 精度
63.6%
vs Llama-2+SFT 59.2%(+4.4)
336 分辨率下 TextVQA 精度
49.8%
vs 224 分辨率 41.6%(+8.2)

影响与局限

VILA 把视觉语言模型的研究重心从「指令微调」拉回到此前被忽视的「预训练」阶段,用一套可复现的消融方法论确立了后续 VLM 训练的几条基本准则——更新 LLM、用交错语料、联合微调纯文本数据。这些结论被后续开源 VLM 广泛采纳,也是 NVIDIA 后续 VILA 系列模型与 Jetson 端侧部署工作的起点。

局限与不足

受计算预算限制,预训练语料仅约 5000 万张图,远小于 Flamingo、IDEFICS 等使用的十亿级规模,论文自己也承认这是留给后续工作的方向;7B 模型的纯文本 MMLU 精度相比同等文本 SFT 的 Llama-2 仍有小幅下降,说明小模型上的文本能力退化尚未被联合 SFT 完全抵消;此外所有消融结论都建立在 Llama-2 + CLIP-L 这一组固定骨架上,是否能迁移到其他 LLM/视觉编码器组合、以及能否推广到十亿级预训练规模,论文没有验证。