过去几年里,构建视觉-语言模型 (VLM) 的配方一直相对固定。如果你想要一个理解图像和文本之间关系的模型——比如 OpenAI 的 CLIP——你需要收集包含数亿对图像-文本对的海量数据集,并从头开始训练两个神经网络 (一个用于视觉,一个用于文本) 。

这个过程计算成本高昂、极度依赖数据,而且往往导致模型“样样通,样样稀松”。视觉编码器可能还行,文本编码器也过得去,但与专注于单一模态的模型相比,二者都算不上最先进。

但是,如果我们换个思路呢?我们已经拥有了令人难以置信的视觉模型 (如 DINOv2) 和强大的语言模型 (如现代 LLM) 。如果我们不从头开始训练,而是直接让它们“互相认识”,会怎么样?

在论文 “Assessing and Learning Alignment of Unimodal Vision and Language Models” 中,来自 Mila 和蒙特利尔大学的研究人员正是提出了这一点。他们提出了一种方法来衡量这些预训练模型天然对齐的程度,并介绍了一个名为 SAIL (Swift Alignment of Image and Language,图像与语言的快速对齐) 的框架。结果如何?一个在仅使用约 6% 数据的情况下超越 CLIP 的模型,而且在单个 GPU 上仅需 5 小时即可完成训练。

核心问题: 我们真的需要从头开始训练吗?

视觉-语言学习的主流范式是 对比学习 (Contrastive Learning) 。 像 CLIP 这样的模型通过训练,将图像及其对应文本描述的表征在共享向量空间中拉近,同时推开不匹配的配对。

然而,从头开始训练这些模型忽略了一个事实,即我们已经拥有了强大的“单模态”模型:

  • 视觉: 自监督学习 (SSL) 模型 (如 DINOv2) 比 CLIP 的视觉编码器更理解物体几何结构和细粒度细节。
  • 语言: 像 BERT 或现代 LLM 这样的模型,比 CLIP 的文本编码器对句法和复杂推理有更深刻的掌握。

研究人员提出了一个根本性的问题: “这些单模态模型在多大程度上已经对齐了?” 如果它们有效地表征了相同的底层现实,也许我们不需要重新训练它们。也许我们只需要一个轻量级的翻译器来对齐它们的输出。

第一部分: 调查 (对齐探测)

为了回答这个问题,作者引入了一种新的评估方法,称为 对齐探测 (Alignment Probing)

在标准的自监督学习 (SSL) 中,研究人员使用“线性探测 (Linear Probing) ”来测试模型。他们冻结模型,并在其上训练一个线性层,看它是否能对图像进行分类。作者将这一思想调整用于多模态对齐。

图 1. 概念概览: 对齐探测评估两个预训练单模态模型的对齐潜力。

图 1 所示,对齐探测的工作原理是冻结预训练的视觉模型和语言模型。然后,研究人员仅训练一个轻量级的 线性对齐层 , 将其表征映射到共享空间。如果模型对齐良好,这个简单的线性层应该足以在检索任务 (为文本查询找到正确的图像) 上实现高性能。

关键发现 1: 聚类质量比线性可分性更重要

多年来,评估视觉模型的黄金标准一直是 线性可分性 (Linear Separability) (线性分类器区分不同类别的难易程度) 。然而,当研究人员测试各种 SSL 模型 (如 MAE、DINO、iBOT 和 DINOv2) 时,他们发现了一些令人惊讶的事情。

图 8. ImageNet 线性探测准确率与平均检索 R@10 之间的线性对齐探测结果。

图 8 所示,线性可分性 (x 轴) 并不能完美预测视觉模型与语言的对齐程度 (y 轴) 。例如,掩码自编码器 (MAE) 是一个离群点——它的分类得分不错,但对齐性能却很糟糕。

相反,作者发现 聚类质量 (Clustering Quality) (通过 k-NN 性能衡量) 是预测对齐成功与否的更好指标。

图 2. 线性对齐探测结果。左: 视觉模型。右: 语言模型。

图 2 的左侧,你可以看到 k-NN 性能与对齐之间存在紧密的相关性。这表明,要让视觉模型与文本模型“讲同样的语言”,它需要在其特征空间中将语义相似的图像聚类在一起,而不仅仅是分离类别边界。

关键发现 2: CLIP 的文本编码器是瓶颈

研究人员还调查了语言方面。他们发现标准的 CLIP 模型难以进行复杂推理。由于 CLIP 是在来自网络的简短、嘈杂的替代文本 (alt-text) 上训练的,它的文本编码器学会了识别关键词,而不是理解复杂的句子结构。

图 3. Winoground 结果。比较 CLIP 与 DINOv2 搭配各种文本编码器的效果。

图 3 展示了在 Winoground 基准测试上的结果,该测试旨在考察模型是否能区分诸如“小孩在咬狗”与“狗在咬小孩”这样的句子。标准的 CLIP 模型 (前三个柱状图) 在这里表现不佳。然而,当研究人员将视觉模型 (DINOv2) 与强大的预训练语言模型 (如 NV2) 配对时,性能飙升。

结论是什么? 单模态模型本质上是对齐良好的。我们不需要重新训练骨干网络;我们只需要一种更好的方法来连接它们。

第二部分: 解决方案 (SAIL)

基于这些见解,作者推出了 SAIL: Swift Alignment of Image and Language (图像与语言的快速对齐)

SAIL 是一个高效的迁移学习框架。SAIL 不会在数百个 GPU 上花费数周时间训练庞大的模型,而是冻结那些重量级组件 (视觉和文本骨干网络) ,专注于训练它们之间高度优化的连接。

图 7. 训练框架对比。SAIL 实现了高效训练、语言兼容的视觉特征以及对齐评估。

正如 图 7 强调的那样,与 LiT (锁定图像文本调优) 或 ShareLock 等先前的方法不同,SAIL 同时针对三件事进行了优化: 高效训练、创建语言兼容的特征以及评估对齐潜力。

SAIL 流程

该架构优雅而简单。由于骨干网络是冻结的,图像和文本数据可以被 预编码 (pre-encoded) 。 你只需通过 DINOv2 和语言模型运行一次数据集,保存嵌入 (embeddings) ,然后仅使用这些嵌入来训练对齐层。

图 4. SAIL 流程。数据经过预编码,允许超大批量大小和低显存占用。

这个技巧 (如 图 4 所示) 使得 SAIL 能够在 单个 A100 GPU 上支持巨大的批量大小 (高达 32,768) 。

“秘方”: 三项优化

作者并没有只使用标准的线性层。他们进行了消融研究,找到了完美的对齐配方。

1. 对齐层: GLU SAIL 使用 门控线性单元 (GLU) , 而不是简单的线性投影或标准的 MLP (多层感知机) 。

表 1. 对齐层上的消融实验结果。

表 1 显示了这一选择的影响。从线性基线 (第 0 行) 转变为 GLU 架构 (第 2-3 行) 显着提升了检索性能。相比僵化的线性变换,非线性有助于更有效地将视觉和语言的复杂流形映射到共享空间中。

2. 损失函数: Sigmoid vs. InfoNCE 大多数对比模型使用 InfoNCE (Softmax) 损失。SAIL 将其替换为 Sigmoid 损失

\[ \mathcal { L } ( \mathcal { I } , \mathcal { T } ) = - \frac { 1 } { | \mathcal { B } | } \sum _ { i = 1 } ^ { | \mathcal { B } | } \sum _ { j = 1 } ^ { | \mathcal { B } | } \log \frac { 1 } { 1 + e ^ { z _ { i j } ( - t \hat { \mathbf { x } } _ { i } \cdot \hat { \mathbf { y } } _ { j } + b ) } } , \]

公式 1: Sigmoid 损失函数

为什么要用 Sigmoid?它将每一对图像-文本视为独立的二分类问题 (“这些匹配吗?是/否”) 。这消除了在整个批次中进行全局归一化的需要,减少了计算开销,并使模型对“困难负样本 (hard negatives) ”更加敏感。

3. 高质量数据与多正样本损失 最后,作者解决了数据质量问题。网络数据是嘈杂的。由现代多模态 LLM 生成的合成字幕详细且准确,但可能缺乏多样性。SAIL 结合了两者。

他们使用了一种 多正样本损失 (Multi-Positive Loss) 函数:

\[ \mathcal { L } _ { \mathrm { M u l t i - P o s } } = \mathcal { L } ( \mathcal { I } , \mathcal { T } ) + \mathcal { L } ( \mathcal { I } , \mathcal { T } ^ { \mathrm { H Q } } ) , \]

公式 2: 多正样本损失函数

对于每张图像,模型学习同时与原始网络字幕 (\(\mathcal{T}\)) 和高质量合成字幕 (\(\mathcal{T}^{HQ}\)) 对齐。这赋予了模型两全其美的优势: 网络概念的广度和合成描述的精度。

实验结果: 以小博大

SAIL 的结果令人印象深刻,特别是考虑到资源上的巨大差异。作者在包含约 2300 万 对样本的合并数据集上训练了 SAIL。相比之下,标准的 CLIP 模型通常在 4 亿 对样本上进行训练。

1. 击败最先进的高效方法

首先,让我们看看 SAIL 与 ShareLock 等其他“高效”训练方法相比如何。

图 9. 方法对比。SAIL 显示出优于 ShareLock 的持续性能提升。

图 9 可视化了架构差异。ShareLock 使用共享的 MLP,而 SAIL 为每个模态使用独立的 GLU。结果是在各个基准测试中性能持续更高。

2. 检索与复杂推理

检索任务 (使用文本搜索图像) 是对齐的终极测试。

表 3. 标准检索、复杂推理和以视觉为中心的任务结果。

表 3 中,请看 SAIL-L-NV2 (在 23M 样本上训练) 与 CLIP-L (在 400M 样本上训练) 的对比。

  • MSCOCO 文本到图像 (T2I): SAIL 达到 48.6% , 而 CLIP 为 43.0%
  • Winoground (复杂推理) : SAIL 以 15.0 的组得分占据主导地位,相比之下 CLIP 仅为 8.75

这证实了使用预训练的大型语言模型 (NV2) 作为文本编码器,相比 CLIP 的“词袋”式理解,提供了卓越的推理能力。

3. 视觉细微差别与粒度

对 CLIP 的一个批评是它经常忽略细节。它可能认出一只“狗”,但错过了具体的品种或毛发的纹理。因为 SAIL 使用了 DINOv2 (在像素级理解方面非常出色) ,它保留了这种粒度。

图 5. 来自 MMVP 的 150 对图像的图像-图像余弦相似度分布。

图 5 显示了 MMVP 基准测试 (包含具有细微差异的图像对) 上的相似度得分分布。CLIP (橙色) 倾向于将不同的图像评为高度相似——它对细微差别“视而不见”。SAIL (绿色) 反映了 DINOv2 (蓝色) 的行为,将得分拉开,表明它可以成功区分视觉上相似但语义上不同的图像。

4. 开放词汇分割

这种细粒度的视觉理解直接转化为诸如分割 (识别属于特定对象的像素) 之类的密集预测任务。

表 4. 与基于 CLIP 的方法相比的开放词汇语义分割 mIOU 结果。

表 4 所示,SAIL 在分割基准测试 (ADE20K, VOC20) 上优于 CLIP 和特定的改编版本 (如 MaskCLIP) 。通过将 DINOv2 的补丁 (patch) 级特征与文本对齐,SAIL 允许进行精确的“零样本”分割,而无需针对该任务进行任何特定训练。

对多模态 LLM 的启示

最后,作者表明 SAIL 不仅仅是一个独立的模型;它可以作为多模态大型语言模型 (MLLM,如 LLaVA) 更好的“眼睛”。

通常,MLLM 使用 CLIP 作为其视觉编码器。作者在 LLaVA-1.5 中用 SAIL 视觉编码器 (DINOv2 + 对齐层) 替换了 CLIP。

图 6 和表 5. 将 SAIL 的视觉编码器用于 MLLM。

表 5 显示,SAIL-L 视觉编码器 (第 2 行) 比标准 DINOv2 (第 0/1 行) 提升了性能,并在 7 项任务中的 5 项上击败了 CLIP-L 基线 (第 3 行) 。这证明 SAIL 将 DINOv2 的“原始”视觉特征转化为 LLM 容易理解的“语言兼容”特征。

结论

这篇论文的发现代表了我们构建视觉-语言模型思维方式的重大转变。

  1. 不要重造轮子: 我们不需要从头开始训练视觉和语言骨干网络。强大的单模态模型已经是“柏拉图式的朋友”——它们只需要一点点推动 (对齐) 就能成为伴侣。
  2. 质量 > 数量: 利用预训练的推理能力和高质量的合成字幕,我们可以用比 CLIP 少 94% 的数据 实现 SOTA 性能。
  3. 民主化: 你不再需要超级计算机来训练基础 VLM。有了 SAIL,单个 A100 GPU 和几个小时就足够了。

随着我们的前进,像 SAIL 这样的框架预示着 AI 的模块化未来,我们可以不断换入最好的视觉和语言组件,以以前所需能源和数据的一小部分构建越来越强大的多模态系统。