【论文笔记】CLIP-guided Prototype Modulating for Few-shot Action Recognition

基本信息

标题: CLIP-guided Prototype Modulating for Few-shot Action Recognition
作者: Xiang Wang, Shiwei Zhang, Jun Cen, Changxin Gao, Yingya Zhang, Deli Zhao, Nong Sang
发表: IJCV 2023
arXiv: https://arxiv.org/abs/2303.02982

基本信息

摘要

从大规模对比语言图像预训练如CLIP近期在众多下游任务中展现出显著的成功,但在具有挑战性的小样本动作识别(FSAR)任务上仍处于探索阶段。

在本工作中,我们旨在将CLIP强大的多模态知识迁移,以缓解数据稀缺导致的原型估计不准确问题,这是低样本环境中的关键问题。

为此,我们提出了一种名为CLIP-FSAR的CLIP引导原型调制框架,它包含两个关键组件:一个视频-文本对比目标和一个原型调制。

具体来说,前者通过对比视频及其对应的类别文本描述,弥合了CLIP与小样本视频任务之间的任务差异。

后者利用CLIP的可迁移文本概念,通过时间Transformer自适应地细化视觉原型。

通过这种方式,CLIP-FSAR能够充分利用CLIP中的丰富语义先验,获得可靠的原型并实现准确的小样本分类。

在五个常用基准上的大量实验证明了我们提出方法的有效性,CLIP-FSAR在各种设置下均显著优于现有最先进的方法。

源代码和模型将在https://github.com/alibaba-mmai-research/CLIP-FSAR上公开。

Performance comparison based on a typical few-shot action recognition method

CLIP-FSAR

Overview

少样本动作识别旨在利用少量视频识别新的动作类别。

在一个典型的少样本设置中,存在两个类别不重叠的数据集,一个基础数据集Dtrain\mathcal{D}_{train} 用于训练,一个新数据集Dtest\mathcal{D}_{test} 用于测试。

为了模拟测试环境,通常在训练过程中从Dtrain\mathcal{D}_{train} 中采样大量少样本任务(或称为episode)来优化模型。

对于一个标准的NN-wayKK-shot 任务,存在一个支持集S={s1,s2,...,sN×K}S = \{s_1, s_2, ..., s_{N \times K}\},包含NN 个类别和每个类别KK 个视频。

任务的目标是基于支持样本对查询视频qq 进行分类。

为了方便表述,我们考虑NN-way 1-shot(即,K=1K = 1)任务来展示我们的框架。

遵循先前的工作,在输入视频上实施了一种稀疏帧采样策略以减少计算负担。

首先,我们采用CLIP的视觉编码器V\mathcal{V} 来生成输入视频帧的特征,以及文本编码器T\mathcal{T} 来提取相应类别自然语言描述的文本嵌入。

然后,我们对这些获得的帧特征和文本特征应用视频-文本对比目标,以适应CLIP到少样本视频任务。

此外,我们提出了一种原型调制,以细化少样本度量目标的视觉原型。图2展示了我们CLIP-FSAR的整个框架。

The architecture of CLIP-FSAR

Video-text contrastive objective

给定一个支持集S={s1,s2,...,sN}S = \{s_1, s_2, ..., s_N\} 和一个查询视频q={q1,q2,...,qt}q = \{q^1, q^2, ..., q^t\},其中si={si1,si2,...,sit}s_i = \{s_i^1, s_i^2, ..., s_i^t\} 是一个由稀疏采样的tt 帧组成的支持视频。

视觉编码器V\mathcal{V} 用于编码视频特征:

fsi=V(si),fq=V(q)f_{s_i} = \mathcal{V}(s_i), \quad f_q = \mathcal{V}(q)

其中fsiRt×Cf_{s_i} \in \mathbb{R}^{t \times C}fqRt×Cf_q \in \mathbb{R}^{t \times C}CC 是通道的数量。

然后我们使用文本编码器T\mathcal{T} 通过提示模板 a photo of [CLS] 提取基类的文本特征,并将获得的文本特征表示为{wi}i=1B\{w_i\}_{i=1}^B,其中BB 是基类数据集Dtrain\mathcal{D}_{train} 的总类数,wiRCw_i \in \mathbb{R}^C 是一个特征向量。

遵循先前的做法,为了在文本编码器中保留原始预训练的可转移知识并减少优化负担,我们在训练过程中固定T\mathcal{T} 不进行更新。

为了弥合CLIP和少样本视频任务之间的任务差异,我们模拟原始CLIP训练目标,以最大化视频特征和文本特征之间的相似性,如果它们是匹配对,则最小化其他情况。

为了实现这一目标,我们首先计算视频-文本匹配概率如下:

p(y=iv)videotext=exp(sim(GAP(fv),wi)/τ)j=1Bexp(sim(GAP(fv),wj)/τ)p_{(y=i|v)}^{video-text} = \frac{\exp(\text{sim}(\text{GAP}(f_v), w_i) / \tau)}{\sum_{j=1}^B \exp(\text{sim}(\text{GAP}(f_v), w_j) / \tau)}

其中v{s1,s2,...,sN,q}v \in \{s_1, s_2, ..., s_N, q\}sim\text{sim} 是余弦相似度函数,GAP\text{GAP} 是全局平均池化的缩写,τ\tau 表示可学习的温度因子。

然后,我们在预测值和实际类别标签之间施加交叉熵损失Lvideotext\mathcal{L}_{video-text} 来优化目标。

Prototype modulation

现有的少样本动作识别方法,如OTAM,通常通过比较查询视频qq 与支持视觉原型的时间对齐距离来分类查询视频qq

在少样本动作识别任务中,视频原型是一系列帧原型,请参阅OTAM以获取更多详细信息。

查询视频qq 与支持视频sis_i 之间的距离可以表示为:

dq,si=M(fq,fsi)d_{q, s_i} = \mathcal{M}(f_q, f_{s_i})

其中M\mathcal{M} 表示时间对齐度量。

在OTAM中,M\mathcal{M} 是动态时间规整的一种变体,用于测量支持-查询距离作为帧对齐成本。

少样本性能在很大程度上依赖于原型估计的准确性。

一方面,在低样本场景中,由于数据稀缺,视觉信息往往不足,导致不准确的原型。

另一方面,视觉和文本模态之间存在互补性,CLIP的文本描述表示涉及丰富的语义先验。

基于这些,为了提高支持原型的可靠性,我们建议利用信息丰富的支持文本特征来细化原型。

具体来说,在支持视觉特征fsif_{s_i} 的基础上,我们将文本特征沿着时间维度堆叠到对应的视频sis_i,即Rt×CRCR(t+1)×C\mathbb{R}^{t \times C} \cup \mathbb{R}^C \rightarrow \mathbb{R}^{(t+1) \times C},并使用 Temporal Transformer 来自适应地融合特征。

我们将增强后的视觉特征表示为f~si\tilde{f}_{s_i}(不包括输出的文本特征)。

由于在测试过程中我们不知道查询视频的真实类别信息,我们只将视觉查询特征输入到时间Transformer中,以便输出的查询特征f~q\tilde{f}_q 和支持特征可以在一个共同的特征空间中匹配。

随后,我们采用时间对齐度量来计算查询-支持距离:

dq,si=M(f~q,f~si)d'_{q, s_i} = \mathcal{M}(\tilde{f}_q, \tilde{f}_{s_i})

其中M\mathcal{M} 是我们在CLIP-FSAR中默认采用的OTAM度量。

请注意,提出的CLIP-FSAR是一个即插即用的框架,在后续的实验部分,我们将CLIP-FSAR插入到其他现有的度量或方法中,并经验性地证明其可插拔性。

基于这些距离,查询视频qq 对支持类别的概率分布可以表示为:

p(y=iq)fewshot=exp(dq,si)j=1Nexp(dq,sj)p_{(y=i|q)}^{few-shot} = \frac{\exp(d'_{q, s_i})}{\sum_{j=1}^N \exp(d'_{q, s_j})}

遵循先前的工作,我们可以使用交叉熵损失Lfewshot\mathcal{L}_{few-shot} 来优化模型参数。

我们CLIP-FSAR的最终训练目标是:

L=Lvideotext+αLfewshot\mathcal{L} = \mathcal{L}_{video-text} + \alpha \mathcal{L}_{few-shot}

其中α\alpha 是一个平衡因子。

对于少样本评估,我们可以通过p(y=iq)fewshotp_{(y=i|q)}^{few-shot} 获得属于支持类别的匹配概率,类似于先前的工作。

此外,由于我们提出的框架的双目标设计,我们还可以结合视频-文本匹配结果p(y=iv)videotextp_{(y=i|v)}^{video-text} 和少样本分类结果p(y=iq)fewshotp_{(y=i|q)}^{few-shot} 来获得合并预测:

p(y=iq)=(p(y=iq)videotext)β(p(y=iq)fewshot)1βp_{(y=i|q)}^\dagger = (p_{(y=i|q)}^{video-text})^\beta \cdot (p_{(y=i|q)}^{few-shot})^{1-\beta}

其中β[0,1]\beta \in [0, 1] 是一个可调整的超参数,我们将上述集成方式表示为 CLIP-FSAR^\dagger

请注意,上述描述的零样本和少样本结果的组合只是一种可选方法,本文主要关注少样本性能。

实验

主实验

Comparison to recent few-shot action recognition approaches on SSv2-Full and Kinetics. The experiments are conducted under the 5-way K-shot setting with K changing from 1 to 5

Comparison to recent few-shot action recognition methods on the UCF101, SSv2-Small and HMDB51 datasets. The experiments are conducted under the 5-way K-shot setting with K changing from 1 to 5

Generalization experiment

消融实验

Ablation study of each component in our CLIPFSAR

Comparison results of different number of temporal Transformer layers on the SSv2-Small and Kinetics datasets

Comparison of different prototype modulation schemes

Comparison of shared weights and non-shared weights

Sensitivity analysis of α on SSv2-Small and Kinetics

Performance comparison with different numbers of input video frames under the 5-way 1-shot setting on SSv2Small

N-way 1-shot results of our CLIP=FSAction and other baseline methods with N varying from 5 to 10

Empirical analysis of replacing the visual encoder of our CLIP-FSAR with several ImageNet pre-trained backbones

Generalizability experiments of migrating our CLIP-FSAR framework to a self-supervised DINO visual encoder

5-way zero-shot performance comparison with CLIP

可视化

T-SNE distribution visualization of five action classes on the test set of SSv2-Small

T-SNE distribution visualization of five action classes on the test set of Kinetics

T-SNE distribution visualization of five action classes on the test set of UCF101

T-SNE distribution visualization of five action classes on the test set of SSv2-Full

T-SNE distribution visualization of five action classes on the test set of HMDB51

局限

在我们的CLIP-FSAR中,我们使用广泛使用的提示模板,即 a photo of [CLS] 作为默认设置。

Comparison experiments of different prompt templates

在表11中,我们探讨了不同文本提示的影响,并发现不同的提示模板在不同的数据集上表现不一致,例如,[CLS] 在SSv2-Small数据集上表现最好,而在Kinetics数据集上表现最差。

研究通用且有效的文本提示形式将是一项有价值的工作。

此外,我们主要关注视觉方面来调制原型,并没有考虑文本方面的某些潜在改进,例如使用视觉特征来细化文本特征。

我们把上述讨论留给未来的工作。

总结

本文提出了一种基于CLIP的FSAR方法来解决CLIP模型在少样本动作识别问题上的挑战,充分利用了CLIP的多模态知识。

利用视频-文本对比目标来适配CLIP模型以适应少样本视频任务。

此外,我们提出使用文本特征通过实现时间Transformer来自适应地调节视觉支持原型。

在五个常用基准上的大量实验表明,我们的CLIP-FSAR在性能上显著优于现有最先进的方法。