Anytime Continual Learning for Open Vocabulary Classification¶
会议: ECCV2024
arXiv: 2409.08518
代码: GitHub
领域: model_compression
关键词: continual learning, open vocabulary, CLIP, online learning, feature compression
作者: Zhen Zhu, Yiming Gong, Derek Hoiem (UIUC)
一句话总结¶
提出 AnytimeCL 框架,通过部分微调 CLIP 最后一个 transformer block 并动态加权融合微调模型与原始模型的预测,实现任意时刻接收样本、任意标签集推理的开放词汇持续学习。
背景与动机¶
- 传统持续学习在离散标签空间上操作,新增标签/任务会改变问题定义,增加学习难度
- 开放词汇设定下,分类是连续特征与标签嵌入的比较,学习仅是在已有问题上的改进,更适合持续改进
- 即使 CLIP 在互联网规模数据上训练,在很多具体任务上性能仍不理想
- 先前方法 Zhu et al. 使用线性分类器 + 层次聚类,需存储全部训练样本,且 AIM 加权策略仅考虑样本是否来自已见类别,早期阶段表现不佳
- 核心需求:系统能在任意时刻高效接收新样本更新,并能在任意标签集上进行推理
核心问题¶
- 如何在仅收到部分类别训练数据时,仍能对完整标签集进行准确预测?
- 如何以毫秒级速度高效整合每个新训练样本?
- 如何在持续学习过程中不丢失开放词汇能力,避免灾难性遗忘?
- 如何压缩中间层特征以降低存储和计算开销?
方法详解¶
整体架构¶
系统包含两个模型:冻结的原始 CLIP 模型和可微调模型(仅微调最后一个 transformer block)。两个模型对同一图像分别产生预测概率 \(P_o(y|x)\) 和 \(P_t(y|x)\),最终预测通过在线逐类加权融合:
部分微调策略¶
- 仅微调 CLIP ViT 的最后一个 transformer block(decoder),保持文本标签嵌入固定
- 微调部分以原始权重初始化
- 保持标签嵌入固定有助于特征与文本模态保持相关性,减少对已见标签的过拟合
- 收到新样本时,将其与存储样本组成类别平衡的 mini-batch(大小 B=32),执行单步更新
类别平衡采样¶
对于 batch size B 和已见标签集 \(\mathcal{Y}_t\),均匀选择 \(\min(B-1, |\mathcal{Y}_t|)\) 个类别,再从每个类别中均匀采样等量实例。实验表明类别平衡采样和均匀采样效果相近,均优于 FIFO 等复杂策略。
"Other" 正则化损失¶
引入"以上都不是"选项来处理真实标签不在候选集中的情况:
其中 "other" 仅用一个可学习的 bias 项建模,\(\beta=0.1\)。该正则化稳定了开放词汇训练过程。
Online Class-wise Weighting (OCW)¶
核心创新之一。使用指数移动平均(EMA,衰减 \(\eta=0.99\))在线估计每个标签上两个模型的准确率:
关键设计:在模型更新之前,用当前样本更新准确率估计,避免了训练样本对微调模型准确率的有偏估计。两个模型的权重按其估计准确率比例分配:
对于微调模型未见过的标签,\(\alpha_t(y)=0\),完全使用原始模型预测。
注意力加权 PCA 特征压缩¶
- 部分微调需存储中间层特征(50 个 768 维 token),每样本约 153KB
- 全局 PCA 或 VQ-VAE 压缩效果差(网络已学到高效表示)
- 逐图像 PCA:对每张图像的 token 计算 PCA 向量,仅存储 5 个 PCA 向量及系数
- CLS 注意力加权:用 CLS token 与各 patch token 的注意力作为 PCA 权重
- 量化:进一步将浮点值量化为 8/16 位无符号整数
- 最终实现 30 倍压缩(153KB → 5KB),精度损失 < 1%
实验关键数据¶
设置:8 个目标任务(CIFAR100, SUN397, FGVCAircraft 等)+ 3 个新颖任务(ImageNet, UCF101, DTD),共 226,080 训练样本,1,034 类。
| 指标 | 场景 | AnytimeCL vs. 前 SOTA |
|---|---|---|
| 所有阶段 | Data Incremental | 每阶段均优于 CLIP+LinProbe (AIM) |
| 所有阶段 | Class Incremental | 每阶段均优于前方法,早期优势尤其明显 |
| 所有阶段 | Task Incremental | 持续优于前方法,在线/离线均有提升 |
| Transfer | MTIL Task Inc. | 69.4(零遗忘,与 CLIP 持平) |
| Avg. | MTIL Task Inc. | 77.0(+11.7 vs. CLIP) |
特征压缩对比(CIFAR100):
| 方法 | 存储/样本 | 时间/batch | 准确率 |
|---|---|---|---|
| 完整图像 | 150.5 KB | 43.9 ms | 77.8% |
| 完整特征 | 153.6 KB | 25.6 ms | 77.8% |
| Per-instance PCA + CLS权重 + 量化 | 5.3 KB | 13.9 ms | 77.5% |
扩展性:用 DINOv2 替换微调模型后,在后期阶段表现更陡的提升曲线,且保持零样本性能。
亮点¶
- 真正的 "anytime":毫秒级整合新样本,支持 data/class/task incremental 三种场景
- OCW 加权策略精巧:利用更新前样本无偏估计模型准确率,比 AIM 在早期阶段优势显著
- 固定标签嵌入 + 部分微调:简单有效地保持开放词汇能力,零遗忘
- 30 倍特征压缩:逐图像注意力加权 PCA 是新颖且实用的思路,兼顾存储、速度和隐私
- 系统设计完整:从训练、推理到存储全链路考虑,支持联邦学习等扩展场景
局限性 / 可改进方向¶
- 仅验证了分类任务,未扩展到检测、分割等更复杂任务
- 树聚类的可扩展性实验规模有限,缺少百万级样本的验证
- 特征压缩的隐私保护程度未做定量分析(是否可从压缩特征反推原图)
- 仅使用 ViT-B/32 backbone,未验证更大模型(ViT-L 等)的表现
- 单步更新的学习率需根据离线训练超参缩放,对新任务类型的泛化性需进一步验证
与相关工作的对比¶
| 方法 | 开放词汇 | 在线更新 | 特征压缩 | 动态加权 |
|---|---|---|---|---|
| WiSE-FT / ZSCL | ✓(但泛化逐步退化) | ✗ | ✗ | 固定权重混合 |
| Zhu et al. (AIM) | ✓ | ✓ | ✗ | AIM(仅考虑是否已见类) |
| CLS-ER | ✗ | ✓ | ✗ | EMA 权重平均 |
| AnytimeCL | ✓(零遗忘) | ✓(毫秒级) | ✓(30x) | OCW(逐类动态) |
核心优势在于 OCW 在早期训练阶段的鲁棒性——当仅有少量类别有样本时,AIM 会错误地将样本路由到微调模型,而 OCW 根据实际准确率分配权重。
启发与关联¶
- OCW 动态加权思路可推广到任意多专家模型的融合,不限于两个模型
- 逐图像 PCA 压缩思路对联邦学习中特征通信有直接应用价值
- "other" 正则化损失对开放集识别任务有借鉴意义
- 部分微调 + 固定标签嵌入的范式可应用于 open-vocabulary detection/segmentation
- 与 complementary learning systems 理论的对应关系值得在更大规模上验证
评分¶
- 新颖性: ⭐⭐⭐⭐ — OCW 和注意力加权 PCA 压缩是好的创新点,整体方法组合得当
- 实验充分度: ⭐⭐⭐⭐ — 三种持续学习场景 + 灵活推理 + 丰富消融实验,但缺少大规模验证
- 写作质量: ⭐⭐⭐⭐ — 动机清晰,方法描述完整,图表信息丰富
- 价值: ⭐⭐⭐⭐ — 提出了实用的开放词汇持续学习框架,离实际部署仍有距离但方向正确