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,同时用合成图像做知识蒸馏(教师=前一任务的模型)→ 三种损失协同防遗忘。
关键设计¶
-
对比蒸馏(Contrastive Distillation, CD):
- 功能:保持教师模型的跨模态对齐结构
- 核心思路:构建教师/学生的图文相似度矩阵,用 KL 散度对齐两者的行分布(图→文)和列分布(文→图)。比特征 MSE 更好因为它保持了"哪些图文配对应该相近"的全局关系结构而非局部特征值
- 设计动机:消融显示 CD 比特征 MSE 蒸馏效果好 5+ 个点
-
图文对齐约束(Image-Text Alignment, ITA):
- 功能:纠正教师模型的错误
- 核心思路:用单位矩阵作为"硬目标"——合成图像与其对应类名的相似度应为 1,与其他类名应为 0。以 \(\beta=0.25\) 的权重将硬目标混入教师软目标中:\((1-\beta) \cdot p_{teacher} + \beta \cdot I\)
- 设计动机:教师模型在合成数据上可能有误(如教师认为合成"猫"图像也有点像"狗"),ITA 用 ground truth 纠正这些偏差
-
自适应权重固化(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两种顺序、详细组件消融
- 写作质量: ⭐⭐⭐⭐ 方法动机清晰
- 价值: ⭐⭐⭐⭐ 对隐私敏感/数据受限的持续学习场景有实用意义