原文:Tong Z, Song Y, Wang J, et al. VideoMAE: Masked Autoencoders are Data-Efficient Learners for Self-Supervised Video Pre-Training[J]. arXiv preprint arXiv:2203.12602, 2022.
源码:https://github.com/MCG-NJU/VideoMAE
为了在相对较小的数据集上获得更好的性能,通常需要在超大规模数据集上对视频Transformer进行预训练。在本文中,我们证明了视频掩码自编码器(VideoMAE)是用于自监督视频预训练(SSVP)的高效利用数据的学习者。我们受到近期的ImageMAE的启发,提出了视频tube掩码和重建的方法。这些简单的设计能够有效地克服视频重建过程中由于时间相关性引起的信息泄漏问题。我们在SSVP方面取得了三个重要发现:(1)极高比例的掩码率(即90%-95%)仍然可以获得良好的VideoMAE性能。时间冗余的视频内容能够实现比图像更高的掩码率。(2) VideoMAE在非常小的数据集上(大约3-4k个视频)取得了令人印象深刻的结果,而无需使用任何额外数据。这部分归因于视频重建的挑战性任务。(3) VideoMAE表明,对于SSVP来说,数据质量比数据数量更重要。预训练数据集和目标数据集之间的跨域迁移是SSVP中的重要问题。VideoMAE搭配ViT骨干网络,在Kinetics-400数据集上可以达到83.9%的成绩,在Something-Something V2上可以达到75.3%,在UCF101上可以达到90.8%,在HMDB51上可以达到61.1%,而无需使用任何额外数据。
图1:VideoMAE是高效利用数据的学习者。
★ 相关工作
★ 论文故事
Transformer极大地推动了自然语言处理领域的发展。Vision Transformer也改进了一系列计算机视觉任务,包括图像分类、目标检测、语义分割和视频识别。多头自注意力机制能够在空间或时间上建模视觉内容之间的全局依赖性。通过这种灵活的注意力机制,可以有效地减少归纳偏差。
训练有效的Vision Transformer(ViT)通常依赖大规模的监督数据集。最初,预训练的ViT通过使用数亿张有标签的图像来获得良好的性能。视频Transformer通常来自基于图像的Transformer,并且严重依赖于从大规模图像数据中预训练的模型。之前训练视频Transformer的实验结果不太令人满意(除了具有强归纳偏差的MViT)。因此,学习到的视频Transformer自然会受到基于图像的模型的影响,如何在不使用任何预训练模型或额外图像数据的情况下,利用视频本身有效地训练Vision Transformer仍然是一个挑战。此外,现有的视频数据集相对于图像数据集较小,这进一步增加了从头训练视频Transformer的难度。同时,使用大规模图像数据集的自监督学习表现出了显著的性能。自监督学习的表示在迁移到下游任务时通常优于有监督学习。自监督学习有望为训练视频Transformer提供一种有希望的解决方案。
继掩码自编码方法在NLP和图像领域成功之后,我们提出了一种新的自监督视频预训练(SSVP)方法,称为视频掩码自编码器(VideoMAE)。VideoMAE的流程比较简单,首先随机掩码cubes,然后重建缺失的cubes。然而,视频的额外时间维度使其不同于掩码图像建模。首先,视频帧通常是被密集捕获的,其语义随时间变化缓慢。这种时间冗余性会增加在缺乏高层次理解的情况下从时空邻域中恢复缺失像素的风险。此外,视频可以看成静态表象的时间演变,帧与帧之间存在对应关系。除非考虑特定的掩码策略,否则这种时间相关性可能导致重建过程中的信息泄漏。从这个意义上讲,对于每个掩码的cube,很容易在相邻帧中找到对应的、未掩码的副本。这一属性将使模型识别出一些很难推广到新场景的“捷径”特征。为了使视频掩码建模更加有效,我们需要在VideoMAE的设计中缓解上述问题。
在本文中,我们在VideoMAE中提出了两种特定设计,以有效地执行视频掩码和重建预训练任务。首先,由于时间冗余性原因,我们使用极高的掩码率从下采样片段中删除cubes。这种简单策略不仅有效提高了预训练的性能,而且由于采用了非对称的编解码-解码器架构,大大降低了计算成本。其次,考虑到时间相关性,我们设计了一种简单而有效的tube掩码策略,这有助于减少重建过程中的信息泄漏风险。有了这两个核心设计,VideoMAE能够在相对较小的视频数据集上(如Something-Something、UCF101、HMDB51)成功训练ViT骨干网络,在没有额外数据的情况下,其表现明显优于之前的SOTA方法。综上所述,本文的主要贡献有三个方面:
1、据我们所知,我们提出了第一个掩码视频建模框架,在相对较小的视频数据集上,该框架的SSVP表现良好。为了解决视频数据中的时间冗余性和相关性导致的信息泄漏问题,我们提出了两种核心设计,分别是:极高掩码率和tube掩码策略,这是VideoMAE成功的关键。
2、与NLP和图像掩码建模的结果一致,我们的VideoMAE表明,这种简单的掩码和重建策略为自监督视频预训练提供了一个很好的解决方案。使用VideoMAE预训练的模型明显优于从头开始训练或使用对比学习方法预训练的模型。
3、我们取得了在NLP和图像领域可能被忽略的掩码建模的重要发现。(1) 我们的研究结果表明,VideoMAE是高效利用数据的学习者,只需3.5k个视频就可以成功地进行训练。(2) VideoMAE表明,当源数据集和目标数据集之间存在跨域迁移时,SSVP的数据质量比数量更重要。
★ 模型方法
图2:VideoMAE的架构。
与ImageMAE类似,VideoMAE随机掩码cubes,并使用非对称编码器-解码器架构重建缺失的cubes。针对视频中的时间冗余性和相关性问题,我们在VideoMAE中提出了两种核心设计:(1)极高的掩码率(90%-95%),(2)tube掩码策略。这两个核心设计使我们能够创建一个具有挑战性的自监督任务,以缓解重建过程中的信息泄漏,并使模型学到的表示能够捕获有用的时空结构。
表1:VideoMAE的架构细节。
我们以ViT-Base为例,这里的“MHA”表示联合时空自注意力。通道、时间和空间的输出大小用{C×T×S}表示。我们使用非对称编码器-解码器架构进行视频自监督预训练,并在微调阶段丢弃解码器。
图3:时间冗余性使得在极高掩码率下恢复像素成为可能。时间相关性使我们能够在随机掩码(第2行)或帧掩码(第3行)的相邻帧中找到对应的patches,轻松地重建缺失的像素。为了避免这个简单的任务,并鼓励模型学习有用的表示,我们提出了tube掩码策略(第4行),其中掩码图对所有帧都是相同的。
★ 实验结果
表2:在Something-Something V2数据集上的消融实验。
表3:在不同数据集上,VideoMAE与以往的自监督预训练方法的比较。
表4:在Something-Something V2数据集上,VideoMAE与MoCo v3的比较。
表5:从Kinetics-400数据集迁移到较小的数据集上,VideoMAE与MoCo v3的特征可迁移性的比较。
图4:使用90%掩码率预训练的VideoMAE,重建Something-Something V2验证视频的结果。我们在附录C中展示了更多的可视化示例。
图5:在Something-Something V2和Kinetics-400数据集上,掩码率对模型性能的影响。结果表明,极高掩码率(90%)可以在两个视频数据集上实现最佳的效率和效果。
图6:VideoMAE表示的数据效率。
表6:在Something-Something V2数据集上,VideoMAE与SOTA方法的比较。
表7:在Kinetics-400数据集上,VideoMAE与SOTA方法的比较。
图7:在Something-Something V2和Kinetics-400数据集上,预训练轮数对模型性能的影响。
表8:预训练设置。
表9:端到端微调设置。
表10:线性评估设置。
表11:在Something-Something V2数据集上,VideoMAE与SOTA方法的比较。
表12:在Kinetics-400数据集上,VideoMAE与SOTA方法的比较。
表13:在UCF101和HMDB51数据集上,VideoMAE与SOTA方法的比较。
图8:在Kinetics-400验证集上,不同掩码率对视频重建的影响。
图9:在Something-Something V2验证集上,不同掩码率对视频重建的影响。
★ 总结讨论
在本文中,我们提出了一种用于视频Transformer预训练的简单且高效的自监督学习方法(VideoMAE)。VideoMAE引入了极高掩码率和tube掩码策略两种关键设计,使视频重建任务更具挑战性。这项艰巨的任务鼓励VideoMAE学习更多有用的特征,并缓解信息泄漏问题。实验结果表明,这种简单算法适用于不同规模的视频数据集。我们只需数千个视频片段就可以得到有效的VideoMAE,这对于数据有限的场景具有重要的实用价值。
多模态人工智能
为人类文明进步而努力奋斗^_^↑
欢迎关注“多模态人工智能”公众号,一起进步^_^↑