
摘要
对比语言-图像预训练在从大规模网络数据中学习视觉-文本联合表示方面取得了显著成功,展现出在多种图像任务中出色的“零样本”泛化能力。然而,如何有效将此类先进的语言-图像预训练方法拓展至视频领域,仍是当前尚未解决的关键问题。在本工作中,我们提出了一种简单而高效的方法,直接将预训练的语言-图像模型适配于视频识别任务,而非从头开始进行全新的视频模型预训练。具体而言,为捕捉时间维度上帧与帧之间的长程依赖关系,我们提出了一种跨帧注意力机制,该机制显式地在不同帧之间交换信息。该模块轻量化设计,可无缝集成至现有的预训练语言-图像模型中。此外,我们还设计了一种面向视频任务的特定提示(prompting)策略,利用视频内容信息生成具有区分性的文本提示。大量实验表明,所提方法在多种视频识别场景中均具有良好的有效性与泛化能力。在全监督设置下,我们的方法在Kinetics-400数据集上取得了87.1%的Top-1准确率,同时仅需Swim-L和ViViT-H模型约1/12的浮点运算量(FLOPs)。在零样本实验中,相较于当前最先进方法,我们的方法在两种主流评估协议下分别提升了+7.6%和+14.9%的Top-1准确率。在少样本场景下,当标注数据极度有限时,我们的方法分别优于以往最优方法+32.1%和+23.1%。相关代码与模型已开源,地址为:https://aka.ms/X-CLIP。
代码仓库
microsoft/VideoX/tree/master/X-CLIP
官方
pytorch
microsoft/videox
官方
pytorch
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| action-classification-on-kinetics-400 | X-CLIP(ViT-L/14, CLIP) | Acc@1: 87.7 Acc@5: 97.4 |
| action-classification-on-kinetics-600 | X-CLIP(ViT-L/14, CLIP) | Top-1 Accuracy: 88.3 Top-5 Accuracy: 97.7 |
| zero-shot-action-recognition-on-hmdb51 | X-CLIP | Top-1 Accuracy: 44.6 |
| zero-shot-action-recognition-on-kinetics | X-CLIP | Top-1 Accuracy: 65.2 Top-5 Accuracy: 86.1 |
| zero-shot-action-recognition-on-ucf101 | X-CLIP | Top-1 Accuracy: 72.0 |