跳转至

Synthetic Data is an Elegant GIFT for Continual Vision-Language Models

会议: CVPR 2025
arXiv: 2503.04229
代码: https://github.com/Luo-Jiaming/GIFT_CL
领域: 多模态VLM
关键词: 持续学习、合成数据、知识蒸馏、灾难性遗忘、VLM适配

一句话总结

用 Stable Diffusion 从类名生成合成图像,通过对比蒸馏 + 图文对齐约束 + 自适应权重固化进行知识蒸馏,仅用每任务 1K 合成图像就超越使用 100K 真实 ImageNet 图像的持续学习方法 ZSCL。

研究背景与动机

领域现状:VLM 持续学习面临灾难性遗忘——在新任务上微调后旧任务性能大幅下降。现有方法如 ZSCL 使用真实 ImageNet 图像做知识蒸馏来缓解遗忘。

现有痛点:(1) 真实数据的获取和存储成本高(ZSCL 需要 100K ImageNet 图像),且有隐私和版权问题。(2) 现有蒸馏方法使用特征距离损失(MSE),但教师模型本身可能有错误,盲目拉近反而传播错误。(3) EWC 等参数正则化方法的 Fisher 信息在训练开始时计算,训练过程中需求可能变化。

核心矛盾:持续学习需要旧知识的"回放"来防遗忘,但获取和存储旧任务数据代价高昂。

本文目标 用零成本的合成数据替代真实数据做持续学习,同时改进蒸馏和正则化策略。

切入角度:直接用类名作为 prompt 让 Stable Diffusion 生成图像,这些合成图像足以覆盖关键视觉概念。配合对比蒸馏保持跨模态对齐结构、图文硬对齐纠正教师错误、自适应 Fisher 更新做参数正则化。

核心 idea:用 1K 合成图像 + 对比蒸馏 + 图文硬对齐 + 自适应 Fisher 正则化,实现比 100K 真实图像更好的持续学习效果。

方法详解

整体框架

每个新任务:从类名池(下游类 + 随机 ImageNet 类)生成 1K 合成图像 → 在新任务数据上微调 CLIP,同时用合成图像做知识蒸馏(教师=前一任务的模型)→ 三种损失协同防遗忘。

关键设计

  1. 对比蒸馏(Contrastive Distillation, CD):

    • 功能:保持教师模型的跨模态对齐结构
    • 核心思路:构建教师/学生的图文相似度矩阵,用 KL 散度对齐两者的行分布(图→文)和列分布(文→图)。比特征 MSE 更好因为它保持了"哪些图文配对应该相近"的全局关系结构而非局部特征值
    • 设计动机:消融显示 CD 比特征 MSE 蒸馏效果好 5+ 个点
  2. 图文对齐约束(Image-Text Alignment, ITA):

    • 功能:纠正教师模型的错误
    • 核心思路:用单位矩阵作为"硬目标"——合成图像与其对应类名的相似度应为 1,与其他类名应为 0。以 \(\beta=0.25\) 的权重将硬目标混入教师软目标中:\((1-\beta) \cdot p_{teacher} + \beta \cdot I\)
    • 设计动机:教师模型在合成数据上可能有误(如教师认为合成"猫"图像也有点像"狗"),ITA 用 ground truth 纠正这些偏差
  3. 自适应权重固化(Adaptive Weight Consolidation, AWC):

    • 功能:动态更新参数重要性估计
    • 核心思路:不同于 EWC 仅在训练开始时计算一次 Fisher 信息,AWC 在每个训练步用蒸馏损失的梯度实时更新 Fisher 信息。这使得正则化随训练过程自适应调整
    • 设计动机:静态 Fisher 无法捕捉训练过程中参数重要性的变化

损失函数 / 训练策略

\(\mathcal{L} = \mathcal{L}_{task} + \lambda_{CD} \cdot \mathcal{L}_{CD} + \lambda_{ITA} \cdot \mathcal{L}_{ITA} + \lambda_{AWC} \cdot \mathcal{L}_{AWC}\)。Stable Diffusion v1.5 生成图像。

实验关键数据

主实验

方法 数据 Transfer↑ Avg↑ Last↑
Zero-shot - 69.4 65.3 65.3
ZSCL 100K ImageNet 68.1 75.4 83.6
MoE-Adapter 真实 68.9 76.7 85.0
GIFT 1K 合成 69.3 77.3 86.0

消融实验

组件 Transfer Δ Avg Δ Last Δ
+CD only +2.5 +7.8 +2.7
+CD+ITA +7.3 +13.6 +8.8
+CD+ITA+AWC +8.3 +14.6 +10.1

关键发现

  • 1K 合成图 > 100K 真实图:GIFT 用百分之一的数据超越 ZSCL,证明合成数据的概念覆盖足以支撑知识蒸馏
  • ITA 贡献最大:加入 ITA 后 Transfer 提升 4.8 个点(从 +2.5 到 +7.3),纠正教师错误至关重要
  • AWC > EWC:自适应 Fisher 更新比静态计算在 Avg 上提升 1+ 个点

亮点与洞察

  • "合成数据做持续学习"挑战了"需要真实数据回放"的传统观念——关键不是图像逼真度而是概念覆盖
  • ITA 的"纠错"思路非常实用——当教师模型有误时,用 ground truth 混入软标签是一种优雅的折中

局限与展望

  • 合成图像的质量和多样性受限于 Stable Diffusion 的能力
  • 类名池的设计是手动的(下游类+随机 ImageNet 类),自动选择更具代表性的类可能更好
  • 仅在 CLIP 分类场景验证,对 VQA/检索等任务未知

相关工作与启发

  • vs ZSCL:ZSCL 用 100K 真实图像做特征蒸馏。GIFT 用 1K 合成图 + 更好的蒸馏策略全面超越
  • vs MoE-Adapter:MoE 引入额外参数,GIFT 不修改模型结构

评分

  • 新颖性: ⭐⭐⭐⭐ 合成数据+对比蒸馏+ITA纠错的组合新颖
  • 实验充分度: ⭐⭐⭐⭐ MTIL两种顺序、详细组件消融
  • 写作质量: ⭐⭐⭐⭐ 方法动机清晰
  • 价值: ⭐⭐⭐⭐ 对隐私敏感/数据受限的持续学习场景有实用意义