跳转至

SiLC: Improving Vision Language Pretraining with Self-Distillation

会议: ECCV 2024
arXiv: 2310.13355
代码: 无
领域: Segmentation
关键词: 视觉语言预训练, 自蒸馏, CLIP改进, 密集预测, 局部特征学习

一句话总结

提出SiLC框架,在CLIP式图文对比学习中加入局部到全局的自蒸馏,显著提升密集预测任务(检测、分割)的性能,同时改善分类和检索。

研究背景与动机

以CLIP为代表的图文对比预训练已成为开放词汇视觉理解的标准范式。这类方法通过在海量图文对数据上对齐图像和文本的全局表示,展现了强大的零样本分类和检索能力。后续工作也发现CLIP特征在密集预测任务(如检测和分割)中展示了开放集能力。

然而,一个核心问题是:CLIP的对比目标仅关注图像-文本的全局对齐,并不直接激励模型学习适用于密集预测的图像特征。对比学习的优化目标是拉近匹配的图文对、推远不匹配的对,这主要影响全局表示(CLS token),而局部特征(spatial tokens)的质量并未被直接优化。

与此同时,自监督学习方法(如DINO)通过自蒸馏学到了强大的局部特征,但缺乏语言对齐能力。问题在于:能否将自蒸馏的局部特征学习能力融入CLIP的图文对比框架中?

SiLC正是这个问题的答案——通过在CLIP训练中简单添加一个局部到全局的自蒸馏目标,同时提升全局(分类、检索)和局部(检测、分割)任务的性能。

方法详解

整体框架

SiLC在标准CLIP训练流程的基础上增加了一个自蒸馏分支:(1) 图文对比分支:标准的CLIP对比学习,对齐全局图像和文本表示;(2) 自蒸馏分支:使用EMA教师模型的全局特征监督学生模型的局部特征,学习局部到全局的对应关系。两个分支共享图像编码器,联合训练。

关键设计

  1. 局部到全局自蒸馏(Local-to-Global Self-Distillation):

    • 功能:显著提升模型的局部特征质量
    • 核心思路:维护一个EMA(指数移动平均)教师模型。教师模型处理完整图像,产生全局特征;学生模型处理图像的局部裁剪(crops),产生局部特征。训练目标是让学生的局部特征能预测教师的全局特征。这鼓励局部特征编码全局语义信息
    • 设计动机:DINO的自蒸馏已证明在学习局部对应方面非常有效;将这一机制引入CLIP可以弥补对比学习在局部特征优化上的不足
  2. EMA教师模型:

    • 功能:提供稳定的全局特征作为蒸馏目标
    • 核心思路:教师模型的参数是学生模型参数的指数移动平均,不直接参与梯度更新。EMA更新使教师模型平滑地跟踪学生的训练进度,避免目标不稳定。教师仅处理全局视图(完整图像或大裁剪),计算开销可控
    • 设计动机:直接让局部特征匹配学生自己的全局特征会导致表示坍塌(collapse);EMA教师提供了异步的、稳定的蒸馏目标
  3. 多任务联合训练:

    • 功能:同时优化全局对齐和局部特征质量
    • 核心思路:总损失由两部分组成——图文对比损失(InfoNCE)和自蒸馏损失。两个损失使用适当的权重加和。图文对比分支确保语言对齐能力,自蒸馏分支确保局部特征质量。两者共享编码器,互相促进
    • 设计动机:单独的对比学习或单独的自蒸馏都无法同时满足全局和局部任务的需求;联合训练实现了两者的最佳组合

损失函数 / 训练策略

  • 图文对比损失(InfoNCE):标准的CLIP对比学习损失,对齐图像和文本全局表示
  • 自蒸馏损失(DINO-style):学生局部特征与教师全局特征之间的交叉熵损失
  • EMA更新动量:从0.996开始,余弦衰减到1.0
  • 训练数据:与CLIP相同的大规模图文对数据集

实验关键数据

主实验

数据集 指标 本文 CLIP(基线) 提升
ImageNet 零样本Top-1 SOTA CLIP +1-3%
COCO 零样本检测AP SOTA CLIP +3-5%
ADE20K 零样本分割mIoU SOTA CLIP +5-8%
检索(Flickr30k) R@1 SOTA CLIP +1-2%
少样本分类 平均Acc SOTA CLIP +2-4%

消融实验

配置 关键指标 说明
仅对比学习 密集任务弱 标准CLIP表现
仅自蒸馏 无语言对齐 类似DINO
对比+自蒸馏 全面最优 两者互补
不同EMA动量 较大动量更稳定 0.996-0.999效果相近

关键发现

  • 简单的自蒸馏添加即可显著提升CLIP的密集预测能力
  • 自蒸馏不仅改善密集任务,还同时提升了分类和检索等全局任务
  • SiLC在零样本分类、少样本分类、图文检索、零样本分割、开放词汇检测上全面达到SOTA
  • 方法几乎不增加训练开销(EMA教师仅处理全局视图)

亮点与洞察

  • 核心贡献简洁有力——在CLIP中加入自蒸馏,改进极其简单但效果全面
  • 证明了对比学习和自蒸馏的互补性质,而非竞争关系
  • 全面的SOTA结果覆盖了分类、检索、检测、分割、VQA等多个任务
  • 为视觉语言预训练提供了一个简单有效的改进方向

局限与展望

  • 方法在概念上相对简单,更多是已有技术(CLIP+DINO)的组合
  • 大规模预训练的计算成本仍然很高
  • 自蒸馏的裁剪策略和超参数可能需要针对不同任务进行调节
  • 可以探索更复杂的局部-全局对应关系(如像素级而非patch级)
  • 与其他预训练目标(如MAE)的结合也值得探索

相关工作与启发

  • CLIP: OpenAI的图文对比预训练范式,SiLC的基础
  • DINO/DINOv2: Meta的自蒸馏视觉预训练,提供了自蒸馏的灵感
  • OpenCLIP / SigLIP: CLIP的开源复现和改进
  • 启发:不同预训练范式(对比/自蒸馏/掩码重建)的组合可能比单一范式更强

评分

  • 新颖性: ⭐⭐⭐ 方法是CLIP和DINO的直接组合,创新度有限但组合效果好
  • 实验充分度: ⭐⭐⭐⭐⭐ 实验极其全面,覆盖7类以上的下游任务
  • 写作质量: ⭐⭐⭐⭐ 逻辑清晰,实验分析深入
  • 价值: ⭐⭐⭐⭐ 实用价值高,提供了一种简单有效的预训练改进方案

相关论文