Momentum Contrast for Unsupervised Visual Representation Learning无监督胜有监督,刷新检测分割任务

Momentum Contrast for Unsupervised Visual Representation Learning无监督胜有监督,刷新检测分割任务
论文下载地址:
https://arxiv.xilesou.top/abs/1911.05722

摘要

本文提出动量对比度(MoCo)用于无监督的视觉表示学习。 从作为字典查找的对比学习的角度来看,我们构建了一个带有队列和移动平均编码器的动态字典。 这样就可以实时构建大型且一致的词典,从而促进对比性的无监督学习。MoCo在ImageNet分类的通用线性协议下提供了竞争性的结果。 更重要的是,MoCo学习到的表示将转移到下游任务。 MoCo可以胜过在PASCAL VOC,COCO和其他数据集上进行监督的预训练对等任务中的检测/细分任务,有时会大大超过它。 这表明在许多视觉任务中,无监督和有监督的表征学习之间的鸿沟已被大大消除。

Methods

MoCo究竟是怎么实现的呢?

像查字典一样的对比学习

动量对比度(MoCo)通过使用对比损失将编码查询与编码键字典匹配来训练视觉表示编码器。 字典键{k0,k1,k2,…}是由一组数据样本即时定义的。字典被构建为一个队列,其中排队了当前的迷你批处理,而最早的迷你批处理则排队。 批量出队,将其与迷你批量脱钩。 关键码由缓慢进行的编码器编码,由查询编码器进行动量更新驱动,此方法可为学习视觉表示提供大而一致的字典
Momentum Contrast for Unsupervised Visual Representation Learning无监督胜有监督,刷新检测分割任务
损失函数定义如下:
Momentum Contrast for Unsupervised Visual Representation Learning无监督胜有监督,刷新检测分割任务
这是一种无监督目标函数,用来训练表征查询和键的编码器网络。

动量对比(MoCo)

从以上角度来看,对比学习是一种在诸如图像的高维连续输入上构建离散词典的方法。 字典是动态的,在这种意义上,**是随机采样的,并且**编码器在训练过程中会不断演变。 我们的假设是,大型词典可以学习良好的功能,涵盖大量否定样本,而词典**的编码器尽管不断进化,却始终保持一致。
Momentum Contrast for Unsupervised Visual Representation Learning无监督胜有监督,刷新检测分割任务
在这个公式中,只有θq是通过反向传播更新的。动量更新会使得θk的演化比θq更加平稳。
Momentum Contrast for Unsupervised Visual Representation Learning无监督胜有监督,刷新检测分割任务
Momentum Contrast for Unsupervised Visual Representation Learning无监督胜有监督,刷新检测分割任务
从这张图中,可以看到三种不同对比损失机制的不同。

端到端方法,是通过反向传播对计算查询和键的表征进行端到端更新。
Memory bank方法中,键的表征是从存储库中提取的。
而MoCo方法则通过基于动量更新的编码器对键进行动态编码,并维持键的队列。

Results

先上图
Momentum Contrast for Unsupervised Visual Representation Learning无监督胜有监督,刷新检测分割任务
在三种不同机制的对比中,字典规模越大,三种方法的表现就越好。
Momentum Contrast for Unsupervised Visual Representation Learning无监督胜有监督,刷新检测分割任务
在针对不同的任务进行微调之后,MoCo可以很好地迁移到下游任务中,表现甚至优于有监督预训练模型。