作者 | 小马
编辑 | CV君
报道 | 我爱计算机视觉(微信id:aicvml)
【写在前面】在本文中,作者提出了CLIP2Video网络,以端到端的方式将图像语言预训练模型转换为视频文本检索模型。视频和语言学习领域的主流方法试图从大规模视频文本数据集中提取时空视频特征以及视频和语言之间的多模态交互。与之不同的是,作者利用预训练的图像语言模型,将其简化为二阶段的框架,包括图像文本的共同学习 和分别增强视频帧和文本之间的时间关系 ,使其能够在相对较小的数据集上进行训练。
具体地说,基于对比语言图像预训练(CLIP)模型捕获的空间语义,本文的模型包括一个时间差分块(Temporal Difference Block,TDB) 来捕获精细时间视频帧上的运动,以及一个时间对齐块(Temporal Alignment Block) 来重新对齐视频片段和短语的token并增强多模态相关性。作者进行了详细的消融研究,并在文本到视频和视频到文本检索基准上实现了SOTA的性能。
1. 论文和代码地址
CLIP2Video: Mastering Video-Text Retrieval via Image CLIP
论文地址:https://arxiv.org/abs/2106.11097
代码地址:https://github.com/CryhanFang/CLIP2Video
2. Motivation视频文本检索是多模态视频和语言理解的一项基础研究任务,其目的是为给定的文本查询返回最相关的视频,反之亦然。随着网络视频的不断增加,这成为了一种新兴的需求。在过去几年中,许多视频文本任务都取得了显著的进步
大多数此类方法侧重于两个关键问题。首先是视频域中的视觉特征表示 。与图像不同,视频特征表示同时考虑了空间和时间维度。2D或3D卷积网络仍然是目前特征学习的核心算子。另一个是视频和语言之间的多模态交互 。基于大规模视频文本数据集,采用单流或双流方法在同一嵌入空间内联合训练视频特征和文本特征。
然而,这两个问题非常复杂,难以在同一网络中实现这两个目标。为了解决这个问题,之前的工作整理了大量的预训练视频文本数据集,例如Howto100M。然而,预训练模型在视频文本检索中表现出的性能增益有限,而带标注的视频数据很难收集。
为了应对这些挑战,作者从更宏观的角度重新思考了视频文本检索任务。虽然视频和句子都是顺序的,但单词的含义可以反映在图像或顺序帧中。比如,对象可以单个图像中被描述,但动作需要与短期视频片段相关联。因此,视频和语言理解分为两个独立的问题:多模态图像文本训练的空间表示 和视频帧与视频语言的时间关系 。
与视频文本预训练模型相比,图像文本模型的学习更加容易。CLIP(对比语言图像预训练)的显著成功证明了其通过大规模图像和文本对的预训练,能从语言监督中学习SOTA图像表征的能力。
基于CLIP捕获的空间语义,本文提出了Clip2Video模型,将图片语言预训练模型转换为视频文本检索,主要通过两个模块:时间差分块(Temporal Difference Block,TDB) 和时间对齐块(Temporal Alignment Block,TAB) 。这两个组成部分是为了捕获视频帧的时间关系和视频语言关系而设计的。对于时间差分块,作者在序列中加入图像帧的差分来模拟运动变化。在时间对齐块方面,将视频序列和文本序列对齐到相同的空间,以增强视频片段和短语之间的相关性。
3. 方法给定一组文本作为查询,本文的目标是通过将视频和文本映射到联合嵌入空间来搜索相应的视频。受成功将图像文本预训练知识转化为视频文本学习的启发,作者直接采用CLIP进行初始化,以扩展文本到视频检索的能力。与图像到文本检索不同,视觉线索的时间相关性充分反映了视频的语义,有助于跨模态理解。因此,作者提出了一种时间差分块 来明确地激发运动敏感交互作用。同时,作者提出了时间对齐块 来充分利用文本上下文和关键帧内容之间的对齐。
3.1. Temporal Difference Block为了实现视频嵌入,首先采用视觉Transformer(ViT)对每一帧进行特征编码。具体来说,ViT提取非重叠的图像patch,并执行线性投影以将每个patch映射到1D token中。通过注入位置嵌入和额外的[CLS] token,token序列被输入到层的Transformer中,以建模每个patch的相关性,其中每一层包括多头自注意(MSA)、层归一化(LN)和多层感知机(MLP)。然后,采用线性投影将Transformer编码为与文本嵌入相同维度的嵌入,用于视频帧的表示。
然而,如上图所示,在不考虑时间的情况下,空间ViT模型建模了在每个帧内具有相关性。因此,为了利用不同帧之间的交互,作者提出了层的时间Transformer来编码视频表示。由于两个连续的帧包含反映实际动作的内容位移,作者显式地提出了时间差分块 来扩展输入,并引导时间Transformer对更多的运动相关表示进行编码。
时间差分块 的结构如上图所示,作者采用相邻时间戳之间帧嵌入的变换差来描述运动变化,公式如下:
其中P为位置嵌入,和是两个相邻的帧嵌入,表示Sigmoid函数,表示一层Transformer,表示差异增强的token。与直接采用减法表示差异不同,本文使用sigmoid和 差异级别的注意力来表示。通过对整体减法进行attention变换,可以将连续帧嵌入的减法编码为所有片段的长期关系,并将其归一化为[-1,1],以表示差异。然后,在每个相邻帧之间插入差异增强标记,如下所示:
是从时态差分块输出的最终token,它添加了位置(P)和类型(T)信息。因此,插入差分增强token的帧token被输入到时间Transformer中,进一步提高捕获运动相关信息的灵敏度。最后,采用全局平均池化对最终的视频表示进行编码。
3.2. Temporal Alignment Block在普通文本视频检索中,首先在单个域中计算模态表示,然后在联合空间中度量相似度。通过采用带有时间Transformer的时间差分块,可以对视频嵌入进行精细编码。对于文本表示,作者直接采用CLIP的文本编码器生成文本表示。和CLIP一样,本文使用大小为49152的vocab BPE来将输入文本转换为token。标记化文本用[CLS]和[SEP] token括起来,以指示开始和结束。
然后,文本编码器用来计算文本嵌入,表示为,其中n为序列长度。其中 ,[CLS] token表示整体的特征,用于最小化和全局匹配的距离。然而,由于存在丰富的上下文信息,因此所有单词token都可以作为辅助监督来对齐具有明显运动变化的关键帧。
因此,作者提出时间对齐块 来聚合具有共享中心的不同模态的token嵌入,并重新强调上下文相关的表示。具体地说,共享中心被学习来联合对齐帧和单词嵌入。作者使用点积计算模态特征和共享中心之间的置信度,用于为每个中心分配权重以测量分布。公式如下所示:
其中,表示第i个模态特征,表示第j个共享中心,表示归一化相似度。然后,与中心对齐的聚合嵌入表示如下所示:
是模态特征的最大长度,而是第j个对齐中心嵌入。是与具有相同大小的可训练权重。然后,可以得到中心表示,即。由于视频和文本以相同内容的共享中心聚合,因此在计算相似度之前,每个模态token中的整体语义上下文可以完全对齐到联合空间中。由于视频和文本以相同内容的共享中心聚合,因此在计算相似度之前,每个模态token记中的整体语义上下文可以完全对齐到联合空间中。
为了进一步强调运动相关帧token对动作描述中心的权重,作者对进行稀疏重采样,得到虽然在帧率下采样的失去了语义连贯性,但它突出了运动中的变化,这有助于作为补充信息重新调整权重分布运动相关中心。为了增强时间关系,作者采用共享时间差分块对时间token进行编码。作者采用一个1层Transformer来关联每个时间token,
的输出可以表示为。然后和concat起来表示为。最后,对齐的视频和文本表示如下所示:
其中和表示为L2归一化。通过在大帧率下添加差分增强帧token,可以重新调整动作描述中心的权重,以便更好地对齐。最后,采用全局平均池来获得视频和文本的最终对齐表示和
3.3. Loss function为了训练CLIP2Video,作者采用了对称交叉熵损失。每个batch由视频-文本对组成,训练的目标函数为:
其中表示余弦相似性,表示对称损失。此外,作者也同时采用了和来计算,因此总的损失函数可以看做是。推理过程中的相似性表示为
4.实验4.1. Ablation Studies4.1.1 Effects of Temporal Difference Block
上表展示了Temporal Difference Block的实验结果,可以看出,相比于Mean Pooling等常规方法,本文提出的Temporal Difference Block能够达到更好的性能。并且,加入Temporal Alignment Block后可以进一步提升性能。
4.1.2 Effects of Temporal Alignment Block
上表展示了TAB不同超参数下的实验结果。
4.2. Comparison with Other Methods
上表展示了MSR-VTT数据集上,本文方法和其他SOTA方法的对比。
上表展示了MSVD数据集上,本文方法和其他SOTA方法的对比。
上表展示了 VATEX数据集上,本文方法和其他SOTA方法的对比。
可以看出,本文的方法可以在多个数据集上达到SOTA性能。
4.3. Qualitative Results
上表展示了本文方法的定性实验结果
5. 总结在本文中,作者从宏观的角度重新定义了视频文本检索,将其分为图像文本多模态学习 和视频帧与视频文本之间的时间关系学习 。为了兼顾这两个方面,作者提出CLIP2Video网络将图像语言预训练模型转换为视频文本检索,该算法基于图像语言预训练模型和两个时间块,捕获了精细时间帧的运动,并在视频和语言之间重新对齐token。本文的实验结果表明,该方法可以显著提高多个文本视频检索基准的性能,包括MSR-VTT、MSVD和VATEX。
,