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

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


今日分享 ICCV2021论文『Self-Supervised Visual Representations Learning by Contrastive Mask Prediction』,由中科大&MSRA共同提出对比学习新方法MaskCo,比MoCo更通用的对比学习范式。

详细信息如下:

320e94c9e5379288074aa44f03e37685.png

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

  • 项目链接:未开源

导言:

c6ff6981891db5037f30db0780fcbfaa.png

     自监督视觉表示学习方法依赖于实例识别(instance discrimination,ID) 的代理任务(pretext task)。ID任务具有隐式语义一致性(semantic consistency,SC) 假设,这在不受约束的数据集中可能是不成立的。

在本文中,作者提出了一种对比掩模预测(contrastive mask prediction,CMP) 任务,并设计了一个 MaskCo 框架来实现该任务。MaskCo对比了区域级特征,而不是视图级特征,这使得在没有SC假设的情况下也能够识别正样本。为了解决mask特征和unmask特征之间的域差距,作者在MaskCo中设计了一个专用的掩码预测头。作者在ImageNet之外的训练数据集上评估了MaskCo,并将其与MoCoV2的性能进行了比较。

结果表明,使用ImageNet训练数据集,MaskCo实现了与MoCoV2相当的性能。但当COCO或Conceptual Captions用于训练时,MoCoV2在一系列下游任务中显示出更强的性能。

      01      

Motivation

近年来,视觉表示的自监督学习(SSL)取得了巨大的成功,促进了广泛的下游任务,包括视觉任务和跨模态任务。最新,一些基于对比学习的SSL方法在下游图像分类任务上取得了良好的效果,进一步缩小了它们与监督学习方法之间的性能差距。由于SSL方法不需要对训练数据集进行人工标注,因此在工业界具有非常大的应用价值。

685396742c0c84422815f45a86c09338.png

目前,用于视觉特征学习的SSL方法主要是一些基于实例识别(instance discrimination,ID)的代理任务(pretext task)。其背后的思想如上图所示,通过区分两个视图是否属于同一张图片来获得更好的视觉特征表示。为了实现这一想法,SSL方法优化一个对比损失函数,它强制模型为单个图像的不同视图输出足够接近的表示。由于语义信息是视觉特征的主要组成部分,因此这里的一个隐式假设是,训练图像的多视图应该具有一致的语义意义 ,即语义一致性(SC)假设 。

7c4d3e8fd0f742641e44f4e10d71fd87.png

在ImageNet数据集中,SC假设几乎是满足的。上图(a)展示了来自ImageNet数据集的示例图像及其两个裁剪视图。这两个裁剪视图对同一种鱼的不同部分进行取样,所以让它们具有相似的特征表示是相当合理的。但是,如果基于ID的SSL方法要扩展到ImageNet之外的数据集,它们将需要处理像上图(b)中的图像。图像的两个裁剪视图包含属于语义类别完全不同的对象,强制使这两个视图的输出尽可能相似就显得没有那么合理了。

因此,本文旨在探索不依赖于SC假设的代理任务。在NLP领域,自监督模型(如BERT)通常采用的是MLM作为代理任务,即预测被mask的词。在视觉领域, image inpainting也是一种mask预测任务,并已被用作视觉表示学习的代理任务。然而,image inpainting是一种在像素空间中操作的生成方法,这种方法的计算成本昂贵,而且图像生成所需要的高水平细节可能对于下游任务来说是冗余的。

a817adc199af04425ae0aa1321b0b783.png

在本文中,作者提出使用对比掩模预测(contrastive mask prediction,CMP) 任务作为自监督视觉表示学习的代理任务。其思想如上图所示,为了实例化这种思想,作者提出了MaskCo模型。在MaskCo的设计中,需要解决了两个基本问题,即要对比哪些特征?如何解决mask区域和unmask区域特征之间的域差距?

首先,作者使用区域级特征而不是视图级特征来计算对比损失。这种选择是摆脱SC假设的关键,因为MaskCo比较了区域的mask版本和unmask版本 ,而不是比较两个视图。其次,由于来自mask视图和unmask视图的预测特征之间存在域差距,作者在网络中插入一个掩码预测头(MPH)来弥合域差距 。定量和定性结果均表明,MPH是MaskCo中不可或缺的组成部分。

      02      

方法


2.1. The Contrastive Mask Prediction Task

给定一张图片,一个小区域首先被mask掉,然后输入到神经网络中进行处理。训练目标是获得输入图片的特征表示,由此来预测mask的区域。掩模预测任务涉及一个基本假设,即内容与其上下文之间存在相关性 ,作者认为这通常对自然信号都是有效的,包括语言和图像。

然而,预测过程对于文本的token数据很容易实现,但对于像图像这样的连续数据,直接预测整个缺失的区域还是比较困难的。为了能够在图像进行掩模预测,作者将训练目标从预测被mask的区域内容改为从候选区域中选择正确的区域 ,并通过对比损失来实现,作者将这个任务称为对比掩模预测(contrastive mask prediction,CMP)

bc6697a167b3dbb9ce5e5c18bd9e4780.png

CMP的示意图如上图所示。图像中包含一只鸟,鸟的顶部被遮住了。通过看到这个被mask的图,人们可以合理地猜测,mask的区域应该包括一只鸟的头。这种能力来自于对语义内容的理解,这也是作者希望预训练的模型所拥有的能力。然而,由于鸟的细节可能会有所不同,所以人们也很难绘制缺失部分的确切像素。因此,这就是为什么作者选择通过对比的方式来选择正确的区域,而不是在以前的工作中那样采用生成的方法。

2.2. The Mask Contrast Approach

94bc284eb14462d95a94b8b5a3fbfca7.png

上图展示了本文方法MaskCo的流程。与MoCo类似,作者在预训练中采用了Siamese network结构,在线网络处理query视图,目标网络处理key视图。在线网络中的参数通过反向传播进行更新,而目标网络中的参数通过动量进行更新。

MaskCo的第一个特点是,执行区域级对比 ,而不是视图级对比。虽然这个想法对于mask预测任务相当简单,但它是摆脱在ID任务中使用的SC假设的关键。这是因为,对于mask区域的预测特征,从unmask视图中提取的同一区域的表示是一个不依赖于SC假设,它是根据上下文的信息得到的。

给定一个图像实例,首先通过随机裁剪和其他数据增强技术创建query视图和key视图。这里的约束条件是,这两个视图应该有足够大的重叠面积。然后,在两个视图的重叠部分内识别出一个mask区域。在query视图中,选定的区域被mask为零。在key视图中,所选区域是唯一的正样本区域。然后从同一张图片或者其他图片中随机选择一些负样本区域。query视图和key视图通过主干网络,提取的特征再通过一个额外的掩码预测头(MPH),最后用RoI align操作提取区域级特征。

MaskCo的另一个特点是,MPH的设计 。MaskCo依靠MPH来弥合mask区域和unmask区域特征之间的域差距。在大多数下游任务中,主干网络被用于获取unmask图像的表示。因此,它不需要具有填补空白区域的能力。然而,在预训练阶段,作者将mask区域的特征与unmask区域的所有其他特征进行了对比。该网络自然会学习如何进行掩码预测。然而,在通常的视觉特征(unmask区域)和任务特定的特征(mask区域)之间存在域差距。因此,作者设计了一个专门的掩模预测模块,并将其插入到主干网络和RoI align操作之间。实现上,MPH只是简单地由几个卷积层来实现的。

作者使用对比损失作为训练目标。将一个编码的特征作为query,将一个编码特征集合作为key。其中,key集合里面和query中匹配的key记为,为正样本。相似度用用L2-normalized点积来衡量,损失函数的公式表示如下:

759e724586ed45ebaaef0c83c3c9862b.png


      03      

实验


3.1. Dataset Analysis

首先作者基于ResNet50模型,定义了一个指标ResNet distance,计算方法如下:

b4ef872aef5b951cada6157358c3f8f8.png

和为不同视图的Conv5的特征。

5513c15da85c73aa3291d053bf918c7c.png

从上表可以看出,COCO和CC数据集的ResNet distance比ImageNet高。

da75b8f51a16cbbb49efc95bd24296df.png

为了消除数据集大小的影响,作者将ImageNet-10%和COCO数据集在不同的方法上进行了实验,可以看出,以前的方法在COCO数据集上训练时的性能都会下降。

3.2. Main Results

e1552b03c611c8bde31939e56751a97e.png

上表显示了不同数据集上的MaskCo和MoCo v2的性能对比,本文方法在ImageNet上和MoCo v2性能差不多,但是在COCO和CC数据集上比MoCo v2性能高。

11c32777351c6980031c9491464494d7.png

如上图所示,在600k迭代后,COCO的训练开始达到饱和,但在较大的CC数据集上的训练没有显示任何饱和迹象。

f94d61f72c4ee385683d6c2d082e208c.png

上表中比较了MaskCo和大多数SOTA SSL方法。预训练的数据集是ImageNet,所以MaskCo优势不大;但是MaskCo的检测分割任务性能还是挺不错的。

3.3. Ablation Study

Effect of Mask Prediction Head

9b00371594a27f2b225de5b57548a586.png

为了验证MPH的作用,作者进行了消融实验,当block数为0的时候,代表没有使用MPH。可以看出,当使用MPH时,ImageNet上的分类性能提升。但是检测任务上性能影响不大。

107bdfc4b781cc11c3a905980ad6df32.png

上图展示了 MPH的特征可视化。

Effect of Mask

147e71710e6a5f2d94638396469213e8.png

上表展示了有Mask和无Mask任务时的检测和分类任务性能对比。

Negative Sampling Strategy

e4d845c79db9ea6bfaffff8c14562c29.png

上表展示了负样本在图片内,图片间和都采样的结果对比。


      04      

总结

在本文中,作者提出了一种新的SSL任务,即对比掩模预测(CMP),为了实现这个任务,作者设计了一个新的对比学习网络MaskCo。CMP的motivation是通过对当前主流的实例识别(ID)代理任务的局限性的分析。作者指出,ID是基于语义一致性假设,这就导致在无约束数据集上训练时的模型性能下降。

本文的方法是基于一个更基本的假设,即上下文是相关的 。与基于ID的方法MoCov2相比,MaskCo在多个预训练数据集上实现了一致的性能增益。作为一项通用的代理任务,CMP在无约束数据集上的训练方面显示出了巨大的前景,为自我监督学习开辟了一条新的道路。

▊ 作者简介

研究领域:FightingCV公众号运营者,研究方向为多模态内容理解,专注于解决视觉模态和语言模态相结合的任务,促进Vision-Language模型的实地应用。

知乎/公众号:FightingCV

776a60b55e262fc1cecea8906f1244ad.png

END

加入「自监督学习」交流群👇备注:SSL

f2c7e3d4364fa2e1da49bb0b18c256ab.png

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值