技术资讯 | 无监督视觉表征学习的最新进展&实践

栏目: IT技术 · 发布时间: 3年前

内容简介:01引言

技术资讯 | 无监督视觉表征学习的最新进展&实践

01

引言

有监督学习通常依赖大量标注数据以达到较好的性能,然而数据标注可能需要很高的成本。因此使用无监督学习方法从无标签数据中获取信息是一个很有价值的方向。

自监督学习 首先设置一个 辅助任务 (pretext task) ,使用数据本身构建监督信号,用有监督学习的方法进行训练。模型可以学习到良好的数据表征,从而有益于下游的实际任务。

自监督学习:无监督学习的一种形式,本文不对这两个名词作区分。

近几年,在自然语言处理中,自监督学习得到了广泛应用,并取得良好效果,如:BERT[1]。 而计算机视觉中通常采用监督预训练方法,自监督方法应用较少。

在图像无监督学习的研究中,一些启发式的方法被应用于辅助任务,如:预测图块的相对位置[2]、预测图像旋转角度[3]、拼图[4]、自动着色[5]等。这些方法依赖于特定的启发式任务,某种程度上限制了所学习表征的泛化性。

技术资讯 | 无监督视觉表征学习的最新进展&实践

图1  预测图像旋转角度[3]

最近两年,基于 对比学习 (contrastive learning) 的实例判别任务被用于图像无监督训练的辅助任务,并在下游任务的微调中得到与ImageNet上监督预训练模型相当甚至更优的结果。

本文主要介绍基于对比学习的无监督视觉表征学习方法、该方向最新的几篇论文以及将该方法应用于视频预训练中的实践。

02

基于对比学习的无监督学习方式

实例判别 (instance discrimination) 任务[6, 7]将每一个实例作为一个类别,每个实例的不同数据增强形式认为是同一类样本,然后使用度量学习的对比损失函数进行模型训练。

训练使用样本query及用于对比的样本key,key中正样本通常使用与query同一实例的不同数据增强方式产生。而负样本的选取则一般有两种方式 (图2)

技术资讯 | 无监督视觉表征学习的最新进展&实践

图2 

(a) 从同一个batch里取负样本 

(b) 从memory bank里取负样本 [8]

(a)end-to-end:

训练时同一个batch的其他实例作为负样本;

(b)memory bank:

将训练过程中样本的表征向量存储到一个memory bank,负样本从memory bank中随机选取一个子集。

方法 (a) 的缺点在于:负样本数量受限于batch size,较少的负样本数量导致对映射空间的表征能力不足,影响学习效果;

方法 (b) 可以获得充足的负样本,但是由于模型在不断更新,memory bank中负样本之间及当前正样本的映射不一致,同样会影响学习效果。

一种常见的 对比损失函数 如下:

技术资讯 | 无监督视觉表征学习的最新进展&实践  

其形式类似于传统分类任务中的softmax与交叉熵。向量q为当前query向量,由编码器encoder q产生,ki为用于对比的key向量,由编码器encoder k产生,其中k+为正例,其他为负例。样本之间的相似性使用余弦距离表示,优化目标为使q与k+接近且远离其他ki。

03

最新论文

3.1

MoCo [8]

Facebook AI Research于2019年11月公布的论文“Momentum Contrast for Unsupervised Visual Representation Learning”使用队列解决了memory bank存在的问题。

memory bank中保存了所有实例在上一训练周期的表征向量,训练时随机选取指定数量的负样本。

如上所述,memory bank的主要 缺点 在于随着模型的更新,memory bank中样本之间的映射关系不一致,而先进先出的数据结构queue显然是解决这一问题的合理方案。

MoCo将queue的大小设置为每个训练batch所需负样本的数量,每次将queue中所有向量用于训练,然后在把这个batch样本的表征向量入列,旧的向量出列,这样能保持queue中向量的映射关系都是较新的 (图3)

技术资讯 | 无监督视觉表征学习的最新进展&实践  

图3  从queue中取负样本

此外,为了进一步保持key样本的映射关系一致,使用encoder q的参数对encoder k的参数进行momentum update:

技术资讯 | 无监督视觉表征学习的最新进展&实践  

从而避免了映射关系随着模型训练过程产生较大幅度波动。使用 queuemomentum update ,既能保持batch size和负样本数量的解耦,又能使负样本间映射关系比较一致,并且比memory bank需要的内存空间少。

在ImageNet数据集上进行的无监督预训练实验结果表明,MoCo能达到与end-to-end相似的效果而不受限于batch size大小,并且比memory bank效果更好。

此外,将该无监督预训练模型在下游目标检测、实例分割、关键点检测等任务上进行微调,可以达到与ImageNet监督预训练模型 类似甚至更优 的结果。

3.2

SimCLR [9]

“A Simple Framework for Contrastive Learning of Visual Representations”为Google Brain于2020年2月公布的论文。

图4展示了该模型的结构,其使用 e nd-to-e nd方法 获取负样本。与之前方法不同之处在于:用于下游任务的表征向量h和用于对比学习的表征向量z之间使用非线性层g替换之前的线性层。 此外,文章研究了对无监督表征学习效果影响较大的几个设计。

技术资讯 | 无监督视觉表征学习的最新进展&实践  

图4  SimCLR的结构

首先 ,通过实例产生训练样本时,使用何种数据增强方法对结果影响很大。

文章实验了随机裁切、颜色抖动、旋转、高斯噪声、高斯滤波等许多不同数据增强方法及这些方法的组合,发现不同数据增强方法的结果差别很大。其中随机裁切+颜色抖动的方法能达到最好的效果。

技术资讯 | 无监督视觉表征学习的最新进展&实践

图5  SimCLR中研究的数据增强方法

及效果对比

其次 ,之前用于辅助任务的表征向量z通常由用于下游任务的表征向量h经过一个线性层得到,SimCLR中将线性层改为非线性层,线性验证效果提升3%。

使用线性层容易把一些辅助任务的信息带到下游任务,而非线性层能够在一定程度上移除这些与下游任务无关的信息。

最后 ,文章实验了不同的batch size和不同的训练步数,更大的batch size与更多的训练步数产生更好的结果,并且相比有监督的情况,效果提升的幅度更大。

3.3

SimCLR [9]

在SimCLR提出后不到一个月,2020年3月Facebook AI Research公布了MoCo v2的论文。将SimCLR中两个对效果有较大提升的设计,即非线性投影和更强的数据增强,用到MoCo中。

文章本身较短,也没有提出新的创新点。主要是表明:SimCLR中非线性投影和数据增强的方法与如何选取负样本无关,也就是说这两种方法同样可以用到MoCo中以提升效果,同时还不受batch size大小限制。

技术资讯 | 无监督视觉表征学习的最新进展&实践  

图6  MoCo v2与SimCLR效果对比

04

视频预训练中的实践

前面几篇文章都是在图像上进行无监督预训练,我们将这种方法应用到了 视频的无监督预训练

预训练使用 500万 无标签视频,预训练得到的模型用于下游视频分类任务。视频分类实验采用 12万 视频训练, 3万 视频验证,共分为 28 个类别。

首先,我们使用无监督学习中常用的线性验证方法进行效果验证,也就是将无监督学习得到的模型权重冻结,在上面接一个线性分类器进行视频分类。

线性分类器在验证集上的准确率如图7所示,我们对比了500万视频无监督预训练模型、26万视频无监督预训练模型、ImageNet监督预训练模型。

技术资讯 | 无监督视觉表征学习的最新进展&实践  

图7  视频分类上使用线性分类器效果对比

从图中可以看到,视频无监督预训练模型显著优于基于图像的ImageNet预训练模型,并且使用的训练数据越多效果越好。

冻结backbone权重的方法主要用于实验对比,实际使用中一般会进行全模型微调,尤其是将图像预训练模型用于视频的这种跨域情况。

全模型微调的验证准确率如图8所示,我们对比了500万视频无监督预训练模型、ImageNet监督预训练模型、随机初始化权重模型。

技术资讯 | 无监督视觉表征学习的最新进展&实践  

图8  视频分类上进行全模型微调效果对比

从图中可以看到:使用预训练模型可以加速收敛,并且最终效果优于随机初始化模型。

在全模型微调的情况下,视频无监督预训练模型 ImageNet预训练模型 最终效果略好 ,但相差不大。

结合图7和图8,我们可以发现:使用视频无监督预训练模型进行线性分类的效果已经接近全模型微调的效果,这说明 无监督预训练得到的模型对视频已经有较好的表征能力

虽然辅助任务一般用于预训练而不直接当做实际任务,我们依然可以将其用于表示样本特征。

我们将预训练模型提取的向量用于计算视频相似度,发现相似度较高的视频具有某种程度的相似性,比如可能是同一类视频,而相似度非常高的一般是同一视频的不同片段。

图9展示了两个相似度较高的视频截图。虽然它们是不同视频,背景、内容也完全没有关联,但是它们都是三宫格视频,并且三格图像一致,也就是说无监督模型学习到了这个特征。

技术资讯 | 无监督视觉表征学习的最新进展&实践

图9  两个相似度较高的视频截图

05

小结

无监督学习方法可以 充分利用无标签数据减少大量人工标注的成本 ,对于一些标注代价较高的领域如医学图像领域,具有很高的价值。

最新的研究成果表明图像无监督预训练模型已经可以达到与监督预训练模型类似的效果。相信在不久的将来,在计算机视觉领域,无监督预训练模型也会像NLP中的BERT一样得到广泛应用。

06

参考文献

[1] Bert: Pre-training of deep bidirectional transformers for language understanding. In NAACL, 2019.

[2] Unsupervised visual representation learning by context prediction. In ICCV, 2015.

[3] Unsupervised representation learning by predicting image rotations. In ICLR, 2018.

[4] Unsupervised learning of visual representations by solving jigsaw puzzles. In ECCV, 2016.

[5] Colorful image colorization. In ECCV, 2016.

[6] Discriminative unsupervised feature learning with convolutional neural networks. In NIPS, 2014.

[7] Unsupervised feature learning via non-parametric instance discrimination. In CVPR, 2018.

[8] Momentum contrast for unsupervised visual representation learning. In CVPR, 2020.

[9] A Simple Framework for Contrastive Learning of Visual Representations.

[10] Improved Baselines with Momentum Contrastive Learning.

投稿 | 内容标签团队

编辑 | sea

排版 | sea

往期推荐

技术资讯 | 无监督视觉表征学习的最新进展&实践

技术资讯 | 无监督视觉表征学习的最新进展&实践

技术资讯 | 无监督视觉表征学习的最新进展&实践

技术资讯 | 无监督视觉表征学习的最新进展&实践

技术资讯 | 无监督视觉表征学习的最新进展&实践

技术资讯 | 无监督视觉表征学习的最新进展&实践

在看点一下 大家都知道


以上所述就是小编给大家介绍的《技术资讯 | 无监督视觉表征学习的最新进展&实践》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

算法技术手册

算法技术手册

George T. Heineman、Gary Pollice、Stanley Selkow / 杨晨、李明 / 机械工业出版社 / 2010-3 / 55.00元

《算法技术手册》内容简介:开发健壮的软件需要高效的算法,然后程序员们往往直至问题发生之时,才会去求助于算法。《算法技术手册》讲解了许多现有的算法,可用于解决各种问题。通过阅读它,可以使您学会如何选择和实现正确的算法,来达成自己的目标。另外,书中的数学深浅适中,足够使您可以了解并分析算法的性能。 较之理论而言,《算法技术手册》更专注于应用。《算法技术手册》提供了高效的代码解决方案,使用多种语言......一起来看看 《算法技术手册》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

MD5 加密
MD5 加密

MD5 加密工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具