CLIP-guided Prototype Modulating for Few-shot Action Recognition
CLIP 引导的少样本动作识别原型调制方法
Xiang Wang;Shiwei Zhang;Jun Cen;Changxin Gao; Yingya Zhang;Deli Zhao; Nong Sang
代码:https://github.com/alibaba-mmai-research/CLIP-FSAR.
摘要
最近,像CLIP这样的大规模对比语言-图像预训练在学习各种下游任务上取得了显著的成功,但在具有挑战性的少样本动作识别(FSAR)任务上仍未被充分探索。在这项工作中,我们旨在转移CLIP的强大多模态知识,以缓解数据稀缺导致的不准确原型估计问题,这是低样本情况下的一个关键问题。为此,我们提出了一个名为CLIP-FSAR的CLIP引导的原型调制框架,它由两个关键组件组成:视频-文本对比目标和原型调制。具体来说,前者通过对比视频和相应的类别文本描述来弥合CLIP和少样本视频任务之间的任务差异。后者利用CLIP中可转移的文本概念,通过时间Transformer自适应地细化视觉原型。通过这种方式,CLIP-FSAR可以充分利用CLIP中丰富的语义先验来获得可靠的原型,并实现准确的少样本分类。我们在五个常用的基准测试上进行了广泛的实验,证明了我们提出的方法的有效性,CLIP-FSAR在各种设置下显著优于现有的最先进方法。源代码和模型在 https://github.com/alibaba-mmai-research/CLIP-FSAR 上公开可用。
关键词
少样本动作识别,多模态学习,多模态基础模型,大型模型应用
1 引言
动作识别是视频理解领域的一个基础话题,近年来取得了显著进展。尽管如此,现代模型需要大量的数据注释,这可能是耗时且费力的。少样本动作识别是一个有希望的方向,旨在通过少量标记视频识别未见类别,并受到了相当的关注。主流的少样本动作识别方法遵循基于度量的元学习范式来优化模型,首先将输入视频映射到一个公共特征空间,然后通过预定义的度量规则计算查询与支持原型之间的对齐距离以进行分类。为了获得一个有区分性的特征空间并促进学习,现有方法通常利用单模态监督预训练,例如ImageNet初始化。
尽管取得了显著进展,但单模态初始化由于标记数据相对有限和缺乏多模态对应信息,仍然无法实现令人满意的性能。幸运的是,对比语言-图像预训练是一种强大的新兴范式,通过应用从互联网上可获得的大规模图像-文本对的对比学习来学习高质量的可转移表示。典型的工作如CLIP成功地展示了惊人的可转移性,并在各种下游任务上取得了显著进展。受这些成功实践的启发,我们尝试将CLIP的强大能力转移到少样本动作识别任务上。
一个直接的想法是用CLIP的预训练视觉编码器替换ImageNet初始化,以利用其强大的表示能力。然而,图1中的实验结果表明,简单的替换初始化并在下游数据集上微调确实可以提高性能,但仍然有限。我们将其归因于没有充分利用CLIP模型的多模态属性来在少样本场景中获得可靠的支持原型。
受上述观察的启发,我们专注于充分利用CLIP模型的强大多模态知识进行少样本动作识别,因此提出了一个新颖的CLIP引导的原型调制框架,称为CLIP-FSAR。具体来说,为了使CLIP适应少样本视频任务,我们优化了一个视频-文本对比目标,以拉近视频特征和相应的类别文本表示。此外,为了缓解少样本场景中视觉信息不足的困境,我们提出利用CLIP中的文本语义先验来调制视觉原型。这是通过实现一个时间Transformer来自适应地融合支持集中的文本和视觉特征来实现的。基于这个方案,我们的CLIP-FSAR能够为少样本度量目标生成全面可靠的原型,从而产生稳健的分类结果。我们在五个标准基准上进行了广泛的实验,结果表明我们的CLIP-FSAR显著提高了基线方法。
总结来说,我们的主要贡献如下:
- 我们提出了一个新颖的CLIP-FSAR用于少样本动作识别,充分利用了CLIP模型的多模态知识。据我们所知,这是第一次尝试将大规模对比语言-图像预训练应用于少样本动作识别领域。
- 我们为CLIP适应性和原型调制设计了视频-文本对比目标,以生成可靠的原型。
- 在五个具有挑战性的基准测试上的广泛实验证明了我们方法的有效性,CLIP-FSAR实现了最先进的性能。
2 相关工作
这项工作与少样本图像分类、视觉-语言对比学习和少样本动作识别密切相关。我们在下面简要概述它们。
少样本图像分类
少样本学习的目标是用少量样本识别新类别。少样本研究大致可分为三组:数据增强、模型优化和基于度量的方法。第一类方法尝试使用数据生成策略来提高少样本模型的泛化能力。第二类希望为分类模型提供一个好的初始化,以便只需要少量的梯度更新步骤就能达到最优点。典型的方法包括MAML和其他变体。最近,也尝试在测试时微调部分可学习权重,以转移CLIP的鲁棒先验用于少样本分类。基于度量的方法通过学习映射空间和设置支持-查询匹配规则对查询样本进行分类,包括余弦相似度、欧几里得距离和可学习的度量。还有一些方法引入了额外的属性信息来协助少样本分类。其中,我们的方法属于基于度量的线路,它在没有测试时微调的情况下对查询样本进行分类,并尝试利用CLIP的可转移多模态知识来提升具有挑战性的少样本动作识别任务。
视觉-语言对比学习
探索视觉-语言预训练是利用不同属性数据关联的一个非常热门和有前途的方向。最近,对比语言-图像预训练由于其简单性和有效性而受到越来越多的关注。代表性的工作如CLIP通过两个独立的编码器将图像和自然语言描述投影到一个共同的特征空间进行对比学习,并通过对数亿图像-文本对的预训练实现了显著的“零样本”可转移性。随后,这些预训练模型已被扩展到各种下游任务,并显示出卓越的性能,包括图像分类、目标检测、语义分割和视频理解。受这些成功的启发,我们在这个工作中提出了第一个简单但高效的框架,利用CLIP丰富的语义知识进行少样本动作识别。一些最近或并行的工作将CLIP应用于封闭集动作识别任务,这需要使用分类器对训练集的类别进行分类。相比之下,提出的CLIP-FSAR遵循基于原型的元学习少样本范式,旨在利用文本特征来增强支持原型的表示。
少样本动作识别
大多数现有的少样本识别方法遵循基于度量的方式优化模型,并设计鲁棒的对齐度量来计算查询和支持样本之间的距离以进行分类。一些方法采用全局匹配的思想来进行少样本匹配,这在测量过程中忽略了长期时间对齐信息,导致相对较差的性能。为了利用时间线索,以下方法专注于查询和支持视频之间的局部帧级(或段级)对齐。其中,OTAM提出了动态时间弯曲技术的变体来显式利用支持-查询视频对中的时间顺序信息。ITANet设计了混合空间和通道注意力机制来学习代表性特征。TRX耗尽了不同数量帧的有序元组来比较支持和查询视频。HyRSM引入了自注意力来聚合视频之间的时间关系,并设计了双向均值豪斯多夫度量来放松匹配过程中的时间约束。甚至在取得巨大成功的同时,这些方法主要使用单模态预训练的骨干网络,而不涉及多模态特征,这限制了进一步的性能提升。在我们的工作中,我们引入了强大的CLIP模型,并尝试利用其多模态语义知识来处理少样本动作识别任务。注意,提出的CLIP-FSAR与原始的线性探测CLIP有两个本质区别:(1)原始的线性探测CLIP进行动作识别的线性探测评估,需要在测试类别上进行微调,这与我们的基于度量的少样本设置完全不同,其中训练和测试类别是不相交的,不允许在测试类别上进行微调;2)主要贡献是设计了一种有效的方法,可以利用CLIP的多模态知识生成可靠的原型,而原始的线性探测CLIP只是在线性微调视觉后端,而不涉及多模态线索。此外,在本文中,我们的关键见解是,简单地将CLIP扩展到少样本动作识别任务显然是不够的(如图1所示),因此我们精心设计了CLIP-FSAR,以更好地利用CLIP的强大多模态知识,并希望为社区提供一个利用大型基础模型并在下游任务上进行微调的新且可行的解决方案。
3 方法论
我们首先简要回顾CLIP的背景知识,然后详细描述我们的框架如何将CLIP应用于少样本动作识别任务。
3.1 CLIP的基础知识
与使用人工注释标签进行监督训练的传统范式不同,对比语言-图像预训练(CLIP)使用自然语言描述来监督表示学习,这提高了学习模型的可扩展性和可转移性。更具体地说,CLIP是一个双编码器结构,由视觉编码器和文本编码器组成。视觉编码器旨在将输入图像映射到一个紧凑的嵌入空间,可以使用ResNet架构或ViT架构实现。文本编码器旨在基于Transformer从自然语言描述中提取高语义特征。随后,如果它们是匹配对,则拉近获得的图像特征和文本特征,如果不是,则推开。总之,CLIP的学习目标是在共同的特征空间中执行多模态对比学习。为了进一步提高表示能力,CLIP在4亿个网络爬取的图像-文本对上进行了预训练。当转移到下游任务时,为了与预训练期间的文本描述对齐,输入文本通常使用提示模板“a photo of [CLS]”,其中[CLS]表示实际的类别名称。
3.2 CLIP-FSAR
概述。少样本动作识别的目标是用少量视频识别新的行动类别。在典型的少样本设置中,有两个类别不相交的数据集,一个基础数据集 D t r a i n D_{train} Dtrain用于训练,一个新颖数据集 D t e s t D_{test} Dtest用于测试。为了模拟测试环境,在训练过程中通常从 D t r a i n D_{train} Dtrain中抽取大量的少样本任务(或称为情节)来优化模型。对于一个标准的 N N N路 K K K样本任务,有一个支持集 S = { s 1 , s 2 , . . . , s N × K } S = \{ s_1, s_2, ..., s_{N \times K} \} S={ s1,s2,...,sN×K},由 N N N个类别和每个类别的 K K K个视频组成。任务的目标是基于支持样本对查询视频 q q q进行分类。为了方便公式化,我们考虑 N N N路1样本(即 K = 1 K = 1 K=1)任务来展示我们的框架。按照之前的作品,我们在输入视频上实施了稀疏帧采样策略以减少计算负担。我们首先采用CLIP的视觉编码器 V V V生成输入视频帧的特征,并使用文本编码器 T T T提取相应类别自然语言描述的文本嵌入。然后我们对这些获得的帧特征和文本特征应用视频-文本对比目标,以适应CLIP到少样本视频任务。此外,我们提出了一个原型调制,以细化少样本度量目标的视觉原型。图2展示了我们CLIP-FSAR的整个框架。
视频-文本对比目标。给定一个支持集 S = { s 1 , s 2 , . . . , s N } S = \{ s_1, s_2, ..., s_N \} S={ s1,s2,...,sN}和一个查询视频 q = { q 1 , q 2 , . . . , q t } q = \{ q_1, q_2, ..., q_t \} q={ q1,