关注公众号,发现CV技术之美

本文分享 CVPR 2022 论文『Cross-Architecture Self-supervised Video Representation Learning』,提出问题:不同网络结构的特征也能进行对比学习?并由蚂蚁&美团&南大&阿里提出跨架构自监督视频表示学习方法CACL,在视频检索和动作识别任务上SOTA!

详细信息如下:

  • 论文链接:https://arxiv.org/abs/2205.13313

  • 项目链接:https://github.com/guoshengcv/CACL

      01      

摘要

在本文中,作者提出了一种新的用于自监督视频表示学习的跨架构对比学习(cross-architecture contrastive learning,CACL)框架。CACL由一个3D CNN和一个视频Transformer组成,它们被并行使用以生成用于对比学习的各种正对。这使得模型能够从这些不同但有意义的对中学习强表示。

此外,作者引入了一个时间自监督学习模块,该模块能够按照时间顺序显式预测两个视频序列之间的编辑距离,这使得模型能够学习丰富的时间表示。作者对本文的方法在UCF101和HMDB51数据集上的视频检索和动作识别任务进行了评估,结果表明本文的方法取得了优异的性能,大大超过了Video MoCo和MoCo+BE等最先进的方法。

      02      

Motivation

视频表征学习是视频理解的一项基本任务,因为它在各种任务中发挥着重要作用,例如动作识别、视频检索。最近的工作致力于通过以监督学习方式使用深度神经网络来提高其性能,这通常需要一个具有非常昂贵的人类标注的大规模视频数据集,如Sports1M、Dynamics、HACS和MultiSports。巨大的标注成本不可避免地限制了深度网络在学习视频表示方面的潜力。因此,利用易于大规模访问的未标记视频来改进这项任务非常重要。

近年来,自监督学习在学习强图像表示方面取得了重大进展。它还被扩展到了视频领域,在视频领域对比学习得到了广泛的应用。例如,在最近的工作中,引入对比学习来捕获两个视频实例之间的区别,这使得对比学习能够学习每个视频实例中的表示。然而,在这些方法中,对比学习主要侧重于学习视频的全局时空表示,而很难捕获有意义的时间细节,这些细节通常为区分不同的视频实例提供重要线索。因此,与学习图像表示不同,建模时间信息对于视频表示至关重要。在这项工作中,作者提出了一种新的自监督视频表示方法,该方法能够在一个独特的框架中同时执行视频级对比学习和时间建模。

通过探索视频的序列性质,可以创建学习时间信息的监督信号,从而实现自监督学习。最近的一些方法遵循这一研究路线,创建了一个实现自监督时间预测的借口任务( pretext task)。在这项工作中,shuffle。这使模型能够明确地量化编辑距离中的时间差异程度,而现有的自监督方通常仅限于估计时域中两个视频的大致差异。例如,以前的方法经常创建一个借口任务来预测两个视频序列的速度或播放速度是否相同,但忽略了这种时间差异中的细节。

虽然大多数自监督对比学习方法使用各种数据增强生成正对,这些数据增强提供了实例的不同视图,但作者开发了一种新方法,能够从不同结构中通过对比学习得到更强的表示。3D CNN系列在各种视频任务中取得了显著的性能,包括C3D、R3D、R(2+1)D等。由于CNN的固有特性,它们能够捕获时域中的局部相关性。但是CNN的有效感受野可能会限制其建模长期依赖性的能力。

另一方面,transformer架构可以使用自注意力机制自然捕获这种长距离依赖关系,其中每个token都能够学习对整个序列的注意力,从而将有意义的上下文信息编码到视频表示中。此外,当在足够大的数据上进行训练时,CNN的归纳偏置可能会限制其性能,而由于自注意力的动态加权,这种限制可能不会在Transformer中发生。

作者认为,建模局部和全局依赖关系对于视频理解至关重要;CNN的归纳偏置和Transformer的容量可以相互补偿。在这项工作中,作者提出了一种新的用于自监督视频表示学习的跨架构对比学习(CACL)框架。CACL能够从3D CNN和视频Transformer生成的各种更有意义的对比对中学习。作者证明了视频Transformer可以极大地增强由3D CNN生成的视频表示。它产生丰富的高级上下文特征,并鼓励3D CNN捕获更多详细信息。这允许两个结构协同工作,这是提高性能的关键。

本文的主要贡献总结如下:

  1. 作者设计了一个新的跨架构对比学习(CACL)框架,用于自监督视频表示学习。CACL使用3DCNN和Transformer协同生成多样但有意义的正对,从而实现更有效的对比表征学习。

  2. 作者通过显式测量视频与其时间self-shuffle之间的编辑距离,引入了一种新的自监督时间学习方法。这有助于学习丰富的时间信息,以补充从CACL学习到的表示。

  3. 作者在两个下游视频任务上验证了本文的方法:动作识别和视频检索。在UCF101和HMDB51上的实验结果表明,所提出的CACL可以显著优于现有的方法,如VideoMoCo和MoCo+BE。

      03      

方法

作者以自监督的方式处理视频表示学习问题。在本节中,首先介绍所提出方法的总体框架。然后详细描述了所提出的对比学习方法,以及基于帧级无序度预测的自监督时间学习。

3.1. Overall Framework

上表展示了本文方法的总体框架,本文的框架由两条路径组成,包括一个transformer视频编码器和一个3D CNN视频编码器。自监督学习信号由两个任务计算:片段级对比学习和帧级时间预测。

3D CNN video encoder

在这项工作中,采用3D CNN作为主要视频编码器,也用于推理。任何3D CNN架构可以应用于本文的框架中。将原始片段和shuffle片段的输出特征concat起来,然后输入对比头和分类头。两个头都是全连接的前馈网络。

Transformer video encoder

transformer编码器由2D CNN和transformer架构组成,如上图所示。首先,通过2D CNN计算视频片段的各个图像帧,该CNN执行特征提取以获得帧级token序列。然后,输出的CNN特征通过全连接层投影到768-D的帧token。然后按时间顺序将帧token concat起来,并在帧token序列中加入可学习的嵌入。

最后,一个6层6头Transformer模型以片段级特征序列作为输入,可学习嵌入的输出作为视频表示。值得注意的是,特征提取网络是通过使用自监督方法MoCo,使用UCF101训练集的视频帧进行预训练的ResNet50,其权重在自监督视频表示学习期间冻结。

3.2. Cross-Architecture Contrastive learning

本文的自监督对比学习的目标是最大化具有相同上下文的视频片段之间的相似性,同时最小化来自不同视频的片段之间的相似性。与以前的对比学习方法不同,本文的CACL利用跨架构对比学习信号更好地联合捕获局部和远程依赖。

Construction of positive pairs

对比学习的根本问题在于正负样本的设计。以往关于自监督对比学习的工作通常利用各种数据增强来生成特定实例的不同版本,从而形成正对。在这项工作中,作者从两个角度丰富了正对:嵌入层(使用不同的网络结构)和数据层。

从网络的角度来看,CACL利用了3D CNN和Transformer的优势。给定一个输入视频片段,每个视频片段分别生成一个视频表示,与以前的方法相比,这将使正样本数增加一倍。在数据层,作者对原始片段x进行时间维度上的随机shuffle,并获得一个shuffle视频片段。这两个实例然后cancat在一起。

如图1所示,作者通过使用不同的数据增强和编码器,最大化了从每个视频片段生成的四个正对的相似性。将不同的数据增强表示为,Transformer编码器表示为,三维CNN编码器表示为,然后可以为视频片段生成四个特征表示。

Negative pairs

来自不同视频的片段被视为负样本。作者使用MoCo提出的动量编码器和memory dictionary queue进一步增强了对比学习,为提高对比学习的性能提供了更有意义的负样本。

Data augmentations

作者在输入视频片段的空间域和时间域中执行数据增强。注意,在片段内的所有帧上一致地执行空间增强。因此,作者将三种相似度最大化:(1)由相同网络计算但执行不同数据扩充的片段之间的相似度;(2) 具有相同数据扩充但由不同网络计算的片段之间的相似度;(3) 使用不同网络和不同数据增强的片段之间的相似性。

Loss function

形式上,作者考虑一个由N个不同视频实例组成的随机抽样batch,然后从每个视频中抽取一个片段。这将导致一个batch中总共有N个片段(C)。作者随机shuffle每个片段的顺序,产生一组新的N个片段()。然后将每个片段及其shuffle版本concat起来,并使用数据增强进行进一步处理。

这将生成两个具有不同数据增强的concat视频片段。生成的片段分别由不同的视频编码器处理:基于3D-CNN的视频编码器和基于Transformer的编码器。因此,作者为每个视频实例生成了四个片段级别的视频表示:,用于在对比学习期间构建正对。作者利用基于InfoNCE的对比损失的实例判别思想:

其中是两个向量之间的相似性度量。和是两种特征表示。τ是一个可调参数。在这项工作中,作者将视频表征学习的对比学习扩展为:

其中,是来自队列大小为m的memory dictionary queue的负样本。如上式所示,本文的CACL能够生成比标准对比学习更多的正对。

3.3. Temporal Prediction with Edit Distance

本文的目标是学习对时间细节敏感的视频表示。为此,作者试图通过明确预测视频片段与其shuffle版本之间的时间差异来训练网络。作者认为这种时间预测任务需要运动和外观线索。这使模型能够学习有意义的时间细节,从而有利于下游任务。在这项工作中,作者提出使用最小编辑距离(MED)来衡量视频片段与其shuffle版本之间的时间差异程度。

MED提供了一种通过计算将一个字符串转换为另一个字符串所需的最小操作数来衡量两个字符串(例如单词)之间的差异性的方法。从数学上讲,两个字符串a,b之间的Levenshtein距离由表示,其中:

其中,是一个指示函数,当时等于0,否则为1。在这项工作中,将shuffle预测任务描述为一个分类问题,并使用交叉熵损失对三维CNN模型进行训练。给定一个视频片段及其shuffle版本,可以计算:

其中m是所有shuffle的视频数量。

Uniform shuffle-degree sampling

给定一个有16帧的视频片段,作者对其进行随机shuffle,并计算原始片段和shuffle片段之间的MED。作者发现在本文的例子中,MED是一个从0到16的离散整数(1除外),这使得作者可以将MED预测的回归问题重新表述为一个分类任务。然而,这些离散整数的分布并不均匀,这可能导致分类不平衡,使训练过程不稳定。从技术上讲,作者首先从均匀分布中随机抽样一个MED数,然后随机shuffle视频片段,直到它满足抽样的MED数。该操作使得模型很好地平衡分类中的标签分布,这对于时间建模和联合学习非常重要。

Compared with other shuffle&learn method

与早期的方法相比,如Shuffle&Learn、OPN和VCOP。本文的方法侧重于程度感知,而不是顺序预测/验证,这自然会导致以下特征。它可以通过增加帧数来学习更有意义的时间信息,而以前的方法通常仅限于使用非常少的帧数。因为随着帧/片段数量的增加,顺序数量会急速增长。本文的方法可以捕获视频片段之间更详细和有意义的差异,这使得模型可以学习更丰富的时间特征。

      04      

实验

作者研究了 shuffle degree prediction(SDP)从视频中学习时间信息的能力,并将其与最近专门为自监督时间学习开发的VCOP和PRP进行了比较。上表对结果进行了比较,其中本文的SDP显著优于VCOP,并取得了与PRP相当的结果。

如上表所示,表示3D CNN的正对,具有不同的数据增强,这等于使用SDP在视频上执行原始MoCo。使用所有可能的正对

402 Payment Required

是本文的CACL的完整实现。通过增加更多的正对组,可以逐步提高性能。这表明本文的视频Transformer编码器可以提供更有意义的对比度信息。

为了进一步研究不同的正样本对对自监督对比学习的影响,作者计算了UCF101 test split 1分中正样本对的平均相似度,如上表所示。

在上表中,作者展示了本文方法和不同的自监督学习方法在视频检索任务上的检索结果对比,可以看出本文的方法具有明显的优势。

在上表中,作者展示了本文方法和不同的自监督学习方法在动作识别任务上的检索结果对比。

      05      

总结

在本文中,作者提出了一种新的自监督视频表示学习框架CACL。通过引入Transformer视频编码器,设计了一个对比学习框架,为三维CNN的对比学习提供了丰富的对比样本。作者还引入了一个新的pretext任务来训练一个预测视频shuffle程度的模型。为了验证本文的方法的有效性,作者在两个不同的下游任务上跨三种网络架构进行了广泛的实验。实验结果表明,本文的shuffle degree prediction和transformer视频编码器可以鼓励模型学习可迁移的视频表示,与基于对比学习的方法相比,所学习的特征是异构的。

参考资料

[1]https://arxiv.org/abs/2205.13313
[2]https://github.com/guoshengcv/CACL

END

欢迎加入「自监督」交流群

不同网络结构的特征也能进行对比学习?蚂蚁美团南大阿里提出跨架构自监督视频表示学习方法CACL,性能SOTA!...相关推荐

  1. ICCV2021 比MoCo更通用的对比学习范式,中科大MSRA提出对比学习新方法MaskCo

    关注公众号,发现CV技术之美 今日分享 ICCV2021论文『Self-Supervised Visual Representations Learning by Contrastive Mask P ...

  2. 张俊林:对比学习研究进展精要

    作者 | 张俊林 编辑 | 夕小瑶的卖萌屋 对比学习(Contrastive Learning)最近一年比较火,各路大神比如Hinton.Yann LeCun.Kaiming He及一流研究机构比如F ...

  3. PCL-SISR:基于对比学习的单幅图像超分辨率重建方法

    ©作者 | 高帆 学校 | 北京邮电大学 研究方向 | 计算机视觉 随着 Transformer 的提出以及在底层任务上应用的进一步探索,相信在很多底层任务数据集上可以取得新的 SOTA 成绩.但是不 ...

  4. Contrastive Learning(对比学习,MoCo,SimCLR,BYOL,SimSiam,SimCSE)

    很多大佬认为,深度学习的本质就是做两件事情:Representation Learning(表示学习)和 Inductive Bias Learning(归纳偏好学习).在表示学习方面,如果直接对语义 ...

  5. CV领域的对比学习综述

    对比学习发展历程 发展历程大概可以分为四个阶段 1.百花齐放 InstDisc(instance discrimination) CPC CMC 在这个阶段中,方法.模型.目标函数.代理任务都还没有统 ...

  6. 对比学习论文综述(part1、2)

    对比学习论文综述(part1|2) 18年MOCO开始对比学习在CV领域发展历程大概可以分为四个阶段 1.百花齐放 InstDisc(instance discrimination) CPC CMC ...

  7. NeurIPS 2020 :ReID任务大幅领先,港中文开源自步对比学习框架,充分挖掘无监督学习样本...

    作者丨葛艺潇 来源丨https://zhuanlan.zhihu.com/p/269112325 编辑丨极市平台 导语:本文介绍一篇作者发表于NeurIPS-2020的论文: <Self-pac ...

  8. 从对比学习(Contrastive Learning)到对比聚类(Contrastive Clustering)

    从对比学习(Contrastive Learning)到对比聚类(Contrastive Clustering) 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailug ...

  9. weka分类器怎么设置样本类别_自步对比学习: 充分挖掘无监督学习样本

    本文为香港中文大学MMLab实验室博士生葛艺潇投稿. 本文介绍一篇我们发表于NeurIPS-2020的论文<Self-paced Contrastive Learning with Hybrid ...

最新文章

  1. 正确使用 Android 性能分析工具——TraceView
  2. zabbix3 通过snmpv3监控linux主机
  3. 403禁止访问:访问被拒绝如何解决_死链接对网站有哪些危害?如何处理死链接?...
  4. 数学建模python教材推荐_数模竞赛专攻python应该准备什么?
  5. NewCode----句子反转
  6. Django项目--静态首页的数据缓存(设置、获取、更新)
  7. 高效pycharm使用技巧_您是否正在使用这种高效的采访技巧?
  8. 拒绝低效办公,9个超实用职场必备国产软件推荐
  9. LINUX 中htop的安装
  10. Linux的段错误调试方法
  11. bug管理工具之禅道的测试模块的使用
  12. 毕设+电路板(BTN7960驱动电路+LM2596/AMS117稳压电路+蜂鸣器+STM32F103C8T6最小系统电路)
  13. 微型计算机原理与接口技术第六版,微型计算机原理与接口技术(第6版)
  14. 如何解决网站不安全信息?免费SSL证书
  15. 织梦网站后台-织梦网站后台登陆方式-织梦CMS模板
  16. 我的2011,一半是海水,一半是烈焰
  17. python求解不等式组可行域_二元一次不等式(组)和可行域
  18. 【附源码】计算机毕业设计java医院人事管理系统设计与实现
  19. WMS系统学习之ModernWMS
  20. Opencv学习笔记完整版

热门文章

  1. 人工智能(AI)入门---傅里叶语音识别项目(发端)
  2. php mysql js弹出登陆小窗口_基于Jquery+div+css实现弹出登录窗口(代码超简单)_jquery...
  3. python爬虫xpath教程
  4. google chrome浏览器 模拟手机、浏览器访问手机网页
  5. html格式邮件可以包含,在一封电子邮件中同时包含HTML和plaintext格式
  6. 传统杀毒软件 vs. 军用恶意软件
  7. UEFI 之 Capsule Update (固件更新)
  8. java 轮询请求_使用RxJava来实现网络请求轮询功能
  9. 系统分析师备考经验分享(附上备考方法)
  10. java 构造方法特性