简介
想象一下教一个孩子识别狗。一旦他们学会了,你再教他们识别猫。理想情况下,学习关于猫的知识不应让他们忘记狗的样子。这就是 持续学习 (Continual Learning, CL) 的本质。人类天生擅长这一点;然而,人工神经网络却并非如此。当深度学习模型按顺序在新的数据类别上进行训练时,它们往往会遭遇“灾难性遗忘 (Catastrophic Forgetting)”——它们会为了新任务优化权重,从而覆盖掉旧任务所需的权重。
当处理 视频 时,这个问题会变得更加棘手。与静态图像不同,视频包含复杂的时间动态 (运动、序列、持续时间) 。视频增量类别学习 (Video Class-Incremental Learning, VCIL) 旨在解决这个问题: 我们如何训练一个模型,让它今天识别“打篮球”,下周识别“游泳”,下个月识别“弹吉他”,而不会忘记之前的活动?
传统的解决方案通常涉及存储旧数据 (这会引发隐私和内存问题) 或无限扩展模型架构 (计算成本高昂) 。一个更新、更优雅的解决方案是 提示学习 (Prompt Learning) , 即我们保持一个大型预训练模型冻结不变,并学习轻量级的指令 (提示) 来引导它。
然而,现有的提示方法有一个缺陷: 它们通常是 确定性的。它们试图为一个任务学习一组固定的提示。但视频是多样化的。“游泳”的视频可能因角度、泳池或光线的不同而大相径庭。单一的提示往往不足以表达这种分布。
在这篇文章中,我们将深入探讨一篇新论文: “Learning Conditional Space-Time Prompt Distributions for Video Class-Incremental Learning” (学习用于视频增量类别学习的条件时空提示分布) 。 研究人员提出了一种名为 CoSTEP 的方法。他们不学习固定的提示,而是教一个 扩散模型 根据特定的输入视频生成提示的 分布。这使得模型能够为每一个视频实例生成独特、定制的提示,从而实现了最先进的结果。
背景: 提示技术的演变
要理解 CoSTEP 为何具有革命性,首先需要了解它在 AI 提示技术谱系中的位置。
灾难性遗忘的挑战
在标准的增量类别学习 (CIL) 设置中,模型按顺序接收任务。任务 1 可能是“动物”,任务 2 是“车辆”,依此类推。如果你在任务 2 上微调整个模型,权重会发生偏移以最小化车辆识别的误差,从而破坏已经学到的动物模式。
从重演缓冲区到提示词池
早期的解决方案使用“重演缓冲区 (rehearsal buffer)”,即保存一些动物的样本,以便在训练车辆时混合使用。虽然有效,但在隐私要求严格 (如医院数据) 或内存受限的场景中,这属于“作弊”行为。
这引出了 基于提示的 CIL 。 在这里,我们使用一个巨大的视觉 Transformer (ViT)——比如 CLIP——它已经知道如何“看”世界。我们冻结这个巨大的大脑。为了教它新任务,我们要做的不是改变它的大脑,而只是改变输入的“问题”或提示。
如下图所示,L2P 和 DualPrompt (图 1a) 等早期方法使用的是 提示词池 (Prompt Pool) 。 模型看到图像,提取查询键,并从一组可学习的向量库中查找最匹配的提示。后来的方法如 CODA-Prompt (图 1b) 对此进行了改进,使用确定性的 提示生成器 动态创建提示。

确定性方法的问题: 看上图中的 (a) 和 (b)。它们是确定性的。如果输入特征相似,提示也会相似或相同。这对于静态图像来说还可以,但视频是复杂的。同一类别的两个视频可能截然不同。固定大小的池或确定性生成器往往无法捕捉视频数据丰富多样的分布。它们难以泛化到未来的任务,因为它们过拟合了训练期间看到的特定示例。
CoSTEP 解决方案: 看图 1 中的 (c)。这就是我们今天要分析的方法。CoSTEP 不是挑选提示或直接计算提示,而是对概率分布 \(p(\mathbf{P}|\hat{\mathbf{E}})\) 进行建模——即给定视频特征 \(\hat{\mathbf{E}}\) 时提示 \(\mathbf{P}\) 的概率。通过从该分布中采样,模型可以生成多样化、信息丰富的提示,从而更好地覆盖视频表示的“空间”。
核心方法: CoSTEP
CoSTEP 框架建立在两大支柱之上:
- 时空提示学习 (Space-Time Prompt Learning): 一种无需繁重时间模块即可将视频数据编码为提示的巧妙方法。
- 提示扩散 (Prompt Diffusion): 使用扩散模型 (类似于 DALL-E or Stable Diffusion 背后的技术) 来生成这些提示。
让我们分解一下这个架构。

如图 2 所示,训练分为两个逻辑阶段 (尽管它们协同工作) 。首先,我们需要知道 什么 是好的提示 (阶段 1) 。然后,我们训练一个扩散模型从纯噪声中生成那些好的提示 (阶段 2) 。
支柱 1: 时空提示学习 (“目标”)
标准的视觉 Transformer (ViT) 是在图像而非视频上预训练的。它们很好地处理空间特征 (帧里有什么) ,但在时间特征 (事物如何随时间移动) 方面表现挣扎。
以前的方法试图通过添加复杂的时间注意力模块或仅仅平均帧特征 (这会破坏时间顺序) 来解决这个问题。CoSTEP 采用了一种更简单、更优雅的方法,利用 帧网格 (Frame Grid) 。
帧网格策略
CoSTEP 不按顺序处理帧,而是采样两种类型的上下文:
- 空间上下文 (\(N_{sp}\)): 高分辨率帧,用于理解外观。
- 时间上下文 (\(N_{tp}\)): 更多数量的帧,用于理解运动。
关键在于,时间帧被下采样并堆叠成一个与单张图像大小匹配的网格。这使得预训练的图像 ViT 能够将时间序列当作单张“空间”图像来处理。这“欺骗”了预训练图像模型,使其利用现有的空间注意力机制来执行时间推理。这不涉及骨干网络的新参数,却有效地捕捉了不同帧之间局部补丁的关系。

如图 3 所示,视频被处理成嵌入 \(\hat{\mathbf{E}}\)。这些嵌入充当提示生成的条件。
支柱 2: 提示扩散 (“生成器”)
这是论文中最具创新性的部分。目标是学习提示的分布。为此,作者使用了 去噪扩散概率模型 (Denoising Diffusion Probabilistic Model, DDPM) 。
直觉
把“完美提示”想象成一个清晰的信号。扩散模型的工作原理是将那个清晰的信号逐渐添加干扰 (噪声) ,直到它变得无法辨认。然后,训练一个神经网络进行逆向操作: 观察干扰并预测以前的清晰信号是什么。
如果我们训练一个网络来去除噪声,我们最终可以给它 纯 噪声,它会“幻觉”出一个有效的提示。在 CoSTEP 中,这种幻觉是由视频特征 \(\hat{\mathbf{E}}\) 引导 (作为条件) 的。
数学框架
1. 前向过程 (添加噪声) : 我们从一个“干净”的提示 \(\mathbf{P}_0\) 开始。我们在 \(T\) 个步骤中逐渐添加高斯噪声。在任何步骤 \(t\),噪声提示 \(\mathbf{P}_t\) 可以描述为原始提示和噪声 \(\epsilon\) 的混合物。

我们可以使用方差调度 \(\bar{\alpha}_t\) 直接跳转到任何噪声阶段 \(\mathbf{P}_t\):

2. 逆向过程 (训练去噪) : 我们想要训练一个网络 (U-Net) 来预测被添加的噪声 \(\epsilon\)。如果我们要预测噪声,我们就可以减去它以回到干净的提示。扩散损失函数 \(\ell_{diffusion}\) 衡量预测的噪声与实际添加的噪声有多接近。

在这里,\(\epsilon_{\theta}\) 是尝试预测噪声的神经网络,其条件是当前的噪声提示 \(\mathbf{P}_t\)、时间步长 \(t\),以及至关重要的 视频特征 \(\hat{\mathbf{E}}\) 。
3. 推理 (生成提示) : 训练完成后,我们如何对新视频进行分类?
- 使用冻结的 ViT 提取视频特征 \(\hat{\mathbf{E}}\)。
- 生成随机高斯噪声 \(\mathbf{P}_T\)。
- 使用训练好的扩散网络,利用逆向公式,一步步迭代去噪:

这产生了一个专为 这个 视频构想的干净提示 \(\mathbf{P}_0\)。
4. 最终目标: 模型使用组合目标进行训练。它必须最小化扩散损失 (学习生成提示) 和分类损失 (确保这些提示实际上有助于正确分类视频) 。

该方程最大化了给定视频和生成提示时正确标签 \(y_i^k\) 的概率。
实验与结果
理论听起来不错,但它有效吗?作者在标准的视频动作识别基准上测试了 CoSTEP: UCF101、HMDB51 和 Something-Something V2 (SSv2) 。
定量性能
结果总结在下面的表 1 中。需要关注的指标是:
- Acc (平均准确率): 越高越好。它衡量模型识别迄今为止学到的所有任务类别的能力。
- 最先进水平 (SOTA) 比较: CoSTEP 与 L2P、DualPrompt 以及之前最好的视频方法 ST-Prompt 进行了比较。

表 1 的关键要点:
- 统治力: CoSTEP 在 所有 设置下都达到了最高的准确率。
- 差距: 在 HMDB51 (5 个任务) 上,CoSTEP 击败 ST-Prompt 超过 1.5%。在 SSv2 (一个严重依赖时间运动的数据集) 上,改进是一致的,证明了时空网格的有效性。
表 2 显示了在不同分割 (vCLIMB) 上的结果,侧重于 BWF (向后遗忘) 。 BWF 越低意味着模型记住旧任务的能力越好。

表 2 的关键要点:
- CoSTEP 的遗忘率极低 (约 2%) ,显著低于 PIVOT 和其他竞争对手。扩散过程起到了强大的正则化作用,防止模型覆盖过去的知识。
为什么它效果更好? (消融实验)
作者进行了消融实验,以证明是 扩散 和 帧网格 起到了关键作用。
扩散是必要的吗? 表 3 将 CoSTEP 与确定性方法 (L2P, DAP) 和其他生成式方法 (GANs, VAEs) 进行了比较。

CoSTEP 不仅优于确定性方法,也优于 VAE 和 GAN 等其他概率方法。这表明扩散过程比这些替代方案更好地捕捉了视频提示的复杂、高维分布。
帧网格是必要的吗? 作者测试了移除空间或时间组件的情况。

如表 6 所示,简单的“平均池化 (Mean-pooling)” (平均帧) 或“最大池化 (Max-pooling)”产生的结果显著低于 CoSTEP 的“帧网格 (Frame grid)”。这验证了堆叠帧允许图像 ViT 有效推断补丁之间时间关系的假设。
可视化学习到的提示
数字虽好,但看到潜在空间更好。作者使用 t-SNE (一种降维技术) 可视化了 CoSTEP 生成的提示与确定性 CODA-Prompt 生成的提示。
跨任务分离: 在图 5 中,每种颜色代表不同的任务。

- 左 (CODA-Prompt): 提示有些混合。
- 右 (CoSTEP): 任务在提示空间中清晰分离。红色箭头显示了扩散轨迹——从随机噪声 (红星) 开始,收敛到干净的、特定于任务的簇。
任务内多样性: 在图 6 中,我们观察 单个 任务内部。颜色代表不同的类别 (例如,“骑自行车”与“跳水”) 。

- 左 (CODA-Prompt): 一个任务的所有提示都坍缩成几个紧密的点。几乎没有多样性。“骑自行车”的提示与“跳水”几乎相同。
- 右 (CoSTEP): 我们看到不同类别有明显、丰富的簇。扩散模型生成的多样化提示尊重了每个特定类别和视频实例的细微差别。
随时间变化的准确率
最后,让我们看看随着新任务的增加,准确率如何保持。

在图 4 中,看蓝线 (CoSTEP)。它起步更高,并且一直保持在竞争对手 (橙色和绿色) 之上。这表明了卓越的“可塑性” (学习新事物) 和“稳定性” (记住旧事物) 。
结论与启示
CoSTEP 代表了视频增量类别学习向前迈出的重要一步。通过从确定性的提示选择转变为 概率性的提示生成 , 作者创建了一个系统,它:
- 更具适应性: 它针对每个输入视频的特定时空动态生成独特的提示。
- 更稳健: 它通过对任务的潜在分布进行建模而不是死记硬背示例,大幅减少了灾难性遗忘。
- 高效: 它在无需存储原始视频数据或向骨干网络添加大量时间模块的情况下实现了这一点。
将扩散模型整合到提示学习中是我们可能会看到更多的一种趋势。它架起了生成式 AI (创造数据) 和判别式 AI (分类数据) 之间的桥梁。对于计算机视觉领域的学生和研究人员来说,CoSTEP 凸显了条件生成模型的力量,它不仅可以用于创作艺术,还可以用于在复杂、动态的环境中引导大型基础模型的注意力。
](https://deep-paper.org/en/paper/file-2106/images/cover.png)