文献阅读-DenseCL

Scroll Down

Dense Contrastive Learning for Self-Supervised Visual Pre-Training

Abstract

迄今为止,大多数现有的自监督学习方法都是针对图像分类进行设计和优化的。由于图像级预测和像素级预测之间的差异,这些预训练模型对于密集预测任务可能是次优的。为了填补这一空白,我们的目标是设计一种有效的、密集的自监督学习方法,通过考虑局部特征之间的对应关系,直接在像素(或局部特征)水平上工作。我们提出了密集对比学习(DenseCL),它通过优化输入图像的两个视图之间像素级的成对对比(非)相似损失来实现自监督学习。

与基准方法MoCo-v2相比,我们的方法引入的计算开销可以忽略不计(仅慢了<1%),但在转移到下游密集预测任务(包括对象检测,语义分割和实例分割)时表现出一贯的优异性能;并且大大优于最先进的方法。具体来说,在强大的MoCo-v2基线上,我们的方法在PASCAL VOC对象检测上实现了2.0%的AP,在COCO对象检测上实现了1.1%的AP,在COCO实例分割上实现了0.9%的AP,在PASCAL VOC语义分割上实现了3.0%的mIoU,在城市景观语义分割上实现了1.8%的mIoU。

代码和模型可在:https://git.io/ DenseCL得到

1.Introduction

在许多计算机视觉任务中,预训练已经成为一种成熟的范例。在典型的预训练范例中,模型首先在大规模数据集上进行预训练,然后在训练数据较少的目标任务上进行微调。具体来说,有监督的ImageNet预训练多年来一直占据主导地位,其中模型被预训练以解决图像分类并转移到下游任务。然而图像分类和诸如目标检测和语义分割的密集目标预测任务上有差异。前者侧重于为输入图像分配类别,而后者需要对整个图像进行密集分类或回归。例如,语义分割旨在为每个像素分配类别,对象检测旨在预测所有感兴趣的对象实例的类别和边界框。一个简单的解决方案是直接对密集预测任务进行预训练。然而,与图像级标注相比,这些任务的标注非常耗时,很难大规模收集数据来预训练通用特征表示。

近年来,无监督视觉预训练受到了广泛的研究关注,其目的是从大量未标记的图像中学习适当的视觉表示。一些方法[17,2,3,14]显示了下游任务的有效性,与有监督的ImageNet预训练相比,它们取得了相当或更好的结果。然而,图像分类预训练与目标密集检测任务之间存在差距。首先,几乎所有最近的自监督学习方法都将学习表述为使用全局特征的图像级预测。它们都可以被认为是将每个图像分类为自己的版本,即实例判别[43]。此外,现有的方法通常是在图像分类基准上进行评估和优化的。然而,更好的图像分类并不能保证更准确的目标检测,如[18]所示。因此,为密集预测任务定制的自监督学习是随需应变的。对于无监督预训练,不再需要密集标注。一种明确的方法是直接将预训练作为密集预测任务,从而消除预训练与目标密集预测任务之间的差距。

受监督密集预测任务的启发,例如语义分割,它执行密集的超像素分类,我们提出了用于自监督视觉预训练的密集对比学习(DenseCL)。DenseCL将自监督学习任务视为密集的两两对比学习,而不是全局图像分类。首先,我们引入了一个密集的投影头,它以骨干网络的特征作为输入并生成密集的特征向量。与现有的对骨干特征应用全局池并为每个图像输出单个全局特征向量的全局投影头相比,我们的方法自然地保留了空间信息并构建了密集的输出格式。其次,我们通过提取视图之间的对应关系来定义每个局部特征向量的正样本。为了构建无监督目标函数,我们进一步设计了密集对比损失,将传统的InfoNCE损失[30]扩展到密集范式。使用上述方法,我们使用全卷积网络(FCN)进行密集的对比学习[27],类似于目标密集预测任务。

我们主要的贡献在于:
•我们提出了一种新的对比学习范式,即密集对比学习,它在像素(或局部特征)水平上执行密集成对对比学习。

•利用本文提出的密集对比学习,我们设计了一种针对密集预测任务的简单有效的自监督学习方法,称为DenseCL,填补了自监督预训练和密集预测任务之间的空白。

•当将预训练模型转移到下游密集预测任务时,DenseCL显著优于最先进的MoCo-v2[3],包括对象检测(+2:0% AP),实例分割(+0:9% AP)和语义分割(+3:0% mIoU),并且远远超过监督ImageNet预训练。

image.png

Self-supervised训练。一般来说,自监督学习的成功[43,17,44,49,16,14]可以归结为两个重要方面,即对比学习和前置任务。在许多方法中,用于训练视觉表征的目标函数要么是基于重建的损失函数[7,32,12],要么是测量多个视图共现性的对比损失函数[40]。对比学习是大多数最先进的方法的关键[43,17,2,44],其中积极的对通常是由同一图像(或其他视觉模式)的两个增强视图形成的,而消极的对是由不同的图像形成的。

我们探索了各种各样的前置任务来学习一个好的表现。这些例子包括着色[48]、上下文自动编码器[7]、绘画[32]、空间拼图[29]和辨别方向[11]。这些方法在计算机视觉方面取得了非常有限的成功。突破性的方法是SimCLR[2],它遵循一个实例区分前置任务,类似于[43],其中每个实例的特征与训练集中所有其他实例的特征分离。不变性是从低级图像转换(如裁剪、缩放和颜色抖动)编码的。对比学习和前置任务经常结合起来形成表征学习框架。DenseCL属于自监督预训练范式,我们自然使该框架适合于语义分割和对象检测等密集预测任务。

密集预测任务的预训练。预训练在许多密集预测任务上取得了惊人的结果,包括目标检测[36,34]和语义分割[27]。这些模型通常是在ImageNet预训练模型的基础上进行微调的,该模型是为图像级识别任务而设计的。先前的一些研究表明,在网络架构背景下,ImageNet预训练和密集预测任务之间存在差距[24,22,39,38]YOLO9000[35]提出在分类和检测数据上对目标检测器进行联合训练。He等人[18]证明,即使我们在非常大的分类数据集(例如Instagram[28],它比ImageNet大3000倍)上进行预训练,在目标检测上的传输改进也相对较小。最近的研究[23,50]表明,与ImageNet预训练模型相比,利用目标检测数据和注释的预训练模型(例如MS COCO[26])在目标检测和语义分割方面可以达到同等的性能。虽然在DenseCL之前已经探索了密集预测任务的监督预训练,但对于密集预测任务设计无监督范式的工作很少。同时进行的和独立的研究[33,1]也发现,在局部特征层面的对比学习很重要。它们的其中一个主要区别是根据几何变换构造正对,这就带来了以下问题。1)数据扩充不够灵活。每一种数据增强都需要精心设计,以保持密集匹配。2)应用场景有限。当两个视图之间的几何变换不可用时,它将失败。例如,从一个视频片段中采样两个图像作为正对,这是从视频流中学习表示的情况。相比之下,我们的方法与数据预处理完全解耦,从而实现快速灵活的训练,同时不知道使用哪种增强以及如何对图像进行采样。

视觉通讯。视觉对应问题是计算来自同一场景的两幅图像的像素对[45],它对于许多应用至关重要,包括光流[8],运动结构[37],视觉SLAM [20], 3D重建[10]等。视觉对应可以表述为在匹配的斑块或点之间学习特征相似性的问题。最近,人们提出了各种基于卷积神经网络的方法来测量图像间补丁之间的相似性,包括有监督的[4,21]和无监督的[47,15]。以前的工作通常利用明确的监督来学习特定应用程序的对应关系。DenseCL学习可以在多个密集预测任务之间共享的通用表示。

2. Method

2.1 Background

对于自监督表示学习,突破性的方法是MoCo-v1/v2[17,3]和SimCLR[2],它们都采用对比无监督学习从未标记的数据中学习良好的表示。

我们简单介绍一下最先进的自我监督学习框架通过抽象一个共同的范式。
Pipeline。给定一个未标记的数据集,遵循实例区分[43]前置任务,其中训练集中每个图像的特征与其他图像的特征分离。对于每个图像,随机“视图”是通过随机数据增强生成的。每个视图都被输入到一个编码器中,用于提取编码和表示整个视图的特征。编码器有两个核心部件,即主干网和投影头。

投影头连接到主干网。backbone是预训练后要转移的模型,而投影头在预训练完成后将被丢弃。对于一对视图,它们可以由同一个编码器编码[2],也可以分别由一个编码器和它的动量更新编码器编码[17]。编码器是通过优化两两对比(非)相似损失来训练的,如下所述。整个管道如图2a所示

image.png

损失函数。根据MoCo原理[17],对比学习可以看作是一个字典查找任务。对于每个编码查询q,有一组编码键{k0,k1,...},其中单个正键k+与查询q匹配,编码后的查询和键从不同视图生成。对于编码查询q,其正键k+编码同一图像的不同视图,而负键编码不同图像的视图。使用对比损失函数InfoNCE[30]将q拉到k+附近,同时将其推离其他负键:
image.png其中τ表示温度超参数,如[43]所示.

2.2 DenseCL Pipeline

我们提出了一个为密集预测任务量身定制的新的自监督学习框架,称为DenseCL。DenseCL扩展和概括了现有的框架到一个密集的范式。与2.1中重新讨论的现有范式相比,核心区别在于编码器和损失函数。给定一个输入视图,密集特征映射由骨干网络(例如ResNet[19])或任何其他卷积神经网络提取,并转发到下面的投影头部。投影头由两个并行子头组成,分别为全局投影头和密集投影头。全局投影头可以实例化为任何现有的投影头,例如[17,2,3]中的投影头,它将密集的特征映射作为输入,并为每个视图生成一个全局特征向量。例如,[3]中的投影头由一个全局池化层和一个MLP组成,MLP包含两个完全连接的层,它们之间有一个ReLU层。相比之下,密集投影头具有相同的输入,但输出密集特征向量。

具体来说,全局池化层被移除,MLP被相同的1×1卷积层所取代[27]。实际上,密集投影头与全局投影头具有相同数量的参数。通过在全局特征和局部特征水平上优化联合成对对比(非)相似损失,对骨干和两个平行投影头进行端到端训练。

2.3 Dense Contrasive Learning

我们通过将原始对比损失函数扩展到密集范式来执行密集对比学习。定义一组编码键{t0, t1, ...}表示每个编码查询r。然而,这里的每个查询不再表示整个视图,而是编码视图的局部部分。具体来说,它对应于密集投影头生成的Sh × Sw特征向量之一,其中Sh和Sw表示生成的密集特征映射的空间大小。注意,Sh和Sw可以不同,但我们使用Sh = Sw = S是为了更简单地说明。每个负键t -是来自不同图像的视图的汇集特征向量。根据提取的视图间对应关系分配正键t+,这是来自同一图像的另一个视图的S2特征向量之一。现在,让我们假设我们很容易找到正键t+。讨论推迟到下一节进行。密集对比损失为:
image.png
其中r
s表示S^2编码中第s个。

总的来说,我们的DenseCL的总损失可以表示为:
image.png
其中λ作为平衡这两项的权重。λ设为0.5,通过3.3节的实验验证。

2.4 Dense Correspondence across Views

我们提取同一输入图像的两个视图之间的密集对应关系。对于每个视图,骨干网络提取特征映射image.png,密集投影头从中生成密集特征向量image.png。注意,Sh和Sw可以不同,但我们使用Sh = Sw = S是为了更简单地说明。在两个视图(即Θ1和Θ2)的密集特征向量之间建立对应关系。我们使用主干特征映射F1和F2匹配Θ1和Θ2。首先通过自适应平均池化对F1和F2进行下采样,使其具有S × S的空间形状;然后用来计算余弦相似矩阵image.png。匹配规则是一个视图中的每个特征向量与另一个视图中最相似的特征向量相匹配。具体来说,对于Θ1的所有s^2个特征向量,通过对最后一个维的相似矩阵∆进行argmax运算,得到与Θ2的对应关系。匹配过程可表述为:
image.png

式中,fi为骨干特征映射F1的第i个特征向量,fj'为F2的第j个特征向量。sim (u, V)表示余弦相似度,由l2归一化u与V的点积计算,即image.png。得到的ci表示s^2中Θ1到Θ2匹配的第i个,即Θ1的第i个特征向量匹配Θ2的第i个特征向量。整个匹配过程可以通过矩阵运算有效地实现,因此可以忽略延迟开销。

对于S = 1的最简单情况,由于两个全局特征向量之间自然存在单一对应关系,匹配退化为全局对比学习中的匹配,这是2.1节介绍的情况。

根据提取的密集对应关系,在2.3节介绍的密集对比学习中,可以很容易地找到每个查询r的正键t+。

请注意,如果没有全局对比学习项(即λ = 1),就会出现鸡生蛋还是蛋生鸡的问题,即如果提取出不正确的对应关系,就无法学习到好的特征;如果特征不够好,就无法获得正确的对应关系。在λ = 0.5的默认设置中,没有观察到不稳定的训练。除了设置image.png在整个训练过程中,我们还介绍了另外两种解决方案,它们也可以解决这个问题,详见3.4节。

3. Experiments

我们采用MoCo-v2[3]作为我们的基线方法,它显示了最新的结果,并且在下游目标检测任务方面大大优于其他方法,如表1所示。它表明,它应该作为一个非常有力的基线,我们可以在此基础上证明我们的办法的有效性。

技术细节。我们采用了[3]中的大部分设置。骨干网采用ResNet[19]。下面的全局投影头和密集投影头都有一个固定维的输出。前者对每个输入输出单个128-D特征向量,后者输出密集的128-D特征向量。具体来说,密集投影头由自适应平均池化(可选)、1 × 1卷积、ReLU和1 × 1卷积组成。根据[2,3],隐藏层的维数为2048,最终输出维数为128。每个l2归一化特征向量表示一个查询或键。对于全局对比学习和密集对比学习,字典大小都设置为65536。动量设置为0.999。训练时使用shuffling BN[17]。将式(1)和式(2)中的温度τ设为0.2。数据增强管道由224 × 224像素随机调整大小裁剪、随机颜色抖动、随机灰度转换、高斯模糊和随机水平翻转组成。

3.1 Experiment Settings

数据集。预训练实验在MS COCO[26]和ImageNet[6]两个大规模数据集上进行。预训练过程中只使用训练集,分别为~ 118k和~ 128万张图像。COCO和ImageNet表示两种图像数据。前者更自然,更真实,包含了野外的各种场景。它是一个广泛使用和具有挑战性的数据集,用于对象级和像素级识别任务,如对象检测和实例分割。而后者则是经过精心策划,精心构建的图像级识别。一个清晰和定量的比较是感兴趣的对象的数量。例如,COCO总共有123k张图像和896k个标记对象,平均每张图像有7.3个对象,远远超过ImageNet DET数据集每张图像的1.1个对象。

预训练的设置。对于ImageNet预训练,我们密切关注MoCo-v2[3],并使用相同的训练超参数。对于包括基线和我们的COCO预训练,我们使用0.3的初始学习率而不是原来的0.03,因为前者在COCO预训练时在MoCo-v2基线上表现更好。我们采用SGD作为优化器,并将其权重衰减和动量设置为0.0001和0.9。每个预训练模型在8个gpu上进行优化,使用余弦学习率衰减时间表和256个小批量大小。我们为COCO训练了800个epoch,也就是总共368k次迭代。对于ImageNet,我们训练了200个epoch,总共100万次迭代。

评估协议。我们通过对目标密集预测任务端到端进行微调来评估预训练模型。采用具有挑战性和流行的数据集针对不同的目标任务对主流算法进行微调,如VOC对象检测、COCO对象检测、COCO实例分割、VOC语义分割、cityscape语义分割。在对目标检测进行评估时,我们遵循了常用的协议,即在VOC trainval07+12集上使用标准的2x时间表对Faster R-CNN检测器(C4-backbone)进行调优,并在VOC test2007集上进行测试。

此外,我们通过对一个Mask - cnn检测器(FPNbackbone)进行微调,使用标准的1x时间表对COCO train2017分割(~ 118k图像)和COCO 5k val2017分割进行评估,来评估目标检测和实例分割。我们遵循[41]中的设置。在训练过程中,骨干网、FPN[25]和预测头部使用同步批处理归一化。

对于语义分割,FCN模型[27]在VOC训练aug2012集(10582张图像)上进行20k次迭代微调,并在val2012集上进行评估。我们还通过在列车精细集(2975张图像)上训练FCN模型进行40k次迭代和在val集上测试来评估cityscape数据集上的语义分割。我们遵循mmsegmentation中的设置[31],只是第一个7 × 7卷积与预训练的模型保持一致。Batch size设置为16。使用同步批处理规范化。VOC[9]的裁剪尺寸为512,cityscape[5]的裁剪尺寸为769。

3.2 Main Results

PASCAL VOC目标检测。在表1中,我们报告了PASCAL VOC的目标检测结果,并将其与其他最先进的方法进行了比较。当在COCO上进行预训练时,我们的DenseCL比MoCo-v2基线高出2% AP。当在ImageNet上进行预训练时,MoCo-v2基线已经超过了其他最先进的自监督学习方法。DenseCL仍能提高1.7%的AP,有力地证明了我们方法的有效性。这三个指标的收益是一致的。值得注意的是,与AP50相比,我们在更严格的AP75上取得了更大的改进,这表明DenseCL在很大程度上帮助提高了定位精度。与有监督的ImageNet预训练相比,我们获得了显著的4.5%的AP增益。

COCO对象检测与分割。COCO上的对象检测和实例分割结果如表2所示。对于目标检测,当在COCO和ImageNet上进行预训练时,DenseCL分别比MoCo-v2高出1.1% AP和0.5% AP。实例分割的增益为0.9% AP和0.3% AP。注意,使用COCO预训练模型对COCO进行微调并不是一个典型的场景。但明显的改善仍然表明。
image.png
image.png

在表3中我们进一步评估了预训练模型在半监督目标检测效果。在这种半监督设置中,只有10%的训练数据在调优期间被使用。在COCO和ImageNet上进行预训练时,DenseCL的APb分别比MoCo-v2高1.3%和1.0%。值得注意的是,增益比在微调期间使用所有~ 118k图像的完全监督设置更显着。例如,在ImageNet上进行预训练时,在半监督设置和全监督设置下,DenseCL分别比MoCo-v2高出1.0% APb和0.5% APb。

PASCAL VOC语义分割。我们在语义分割上展示了最大的改进。如表4所示,在COCO上进行预训练并在VOC语义分割上对FCN进行微调时,DenseCL获得了3%的mIoU增益。COCO预训练的DenseCL实现与ImageNet预训练的MoCo-v2相同的67.5% mIoU。注意,与200 epoch ImageNet预训练相比,800 epoch COCO预训练只使用~ 1=10张图像和~ 1=3次迭代。当在ImageNet上进行预训练时,DenseCL持续带来1.9%的mIoU增益。值得注意的是,与有监督的MoCo-v2相比,ImageNet预训练的MoCo-v2没有表现出迁移优势(67.5% vs 67.7% mIoU)。但DenseCL比监督预训练的表现要好得多,即1.7% mIoU。

城市景观语义分割。城市景观是一个基准,与上述VOC和COCO有很大不同。它关注的是城市街景。然而,在表4中,我们观察到使用DenseCL可以获得相同的性能提升。即使COCO预训练的DenseCL也能超过监督ImageNet预训练模型1.9% mIoU。

3.3 Ablation Study

我们进行了广泛的消融实验,以显示每个组件对DenseCL的贡献。我们报告了通过对COCO进行预训练和对VOC0712目标检测进行微调的消融研究,如3.1节所述。
所有检测结果的平均值大于5个独立的实验。我们还提供了VOC2007支持向量机分类的结果,下面[13,46]使用从冷冻主干提取的特征在VOC训练2007分裂上训练线性支持向量机,并在test2007分裂上进行评估。

减重λ。式(3)中的超参数λ作为权值来平衡两个相对的损失项,即全局项和密集项。我们在表5中报告不同λ的结果。随着λ的增大,检测性能有提高的趋势。对于基线方法,即λ = 0,结果为54.7%的AP。当λ = 0:3时,AP为56.2%,使基线提高1.5%的AP。将λ从0.3增加到0.5,可再获得0.5%的AP增益。虽然进一步将其提高到0.7仍然对检测性能有轻微的改善(0.1% AP),但分类结果从82.9%下降到81.0%。考虑到权衡,我们在其他实验中使用λ = 0:5作为默认设置。值得注意的是,当λ = 0:9时,与MoCo-v2基线相比,分类性能迅速下降(-4.8% mAP),而检测性能在0.8% AP时有所提高。DenseCL是专门为密集预测任务设计的,这符合我们的意图。
image.png

匹配策略。在表6中,我们比较了用于提取视图间通信的三种不同匹配策略。1)“随机”:两个视图的密集特征向量是随机匹配的;2)‘max-sim Θ’:利用密集投影头生成的密集特征向量Θ1和Θ2提取密集对应;(3)max-sim F:根据主干特征F1和F2提取密集对应,如式4所示。与MoCo-v2相比,随机匹配策略也可以实现1.3%的AP提升,同时分类性能下降0.9% mAP。这可能是因为1)密集的输出格式本身有帮助,2)部分随机匹配在某种程度上是正确的。通过密集投影头输出匹配,即Θ1和Θ2,没有明显的改善。根据主干特征F1和F2提取密集对应关系,得到最佳结果。

网格的大小。缺省情况下,采用的ResNet骨干网输出的特征步长为32。对于224 × 224像素的裁剪,骨干特征F的空间大小为7 × 7。我们将密集特征向量Θ的空间大小默认设置为7 × 7,即S = 7。但是,S可以灵活调整,F将通过自适应平均池化(adaptive average pooling)池化到指定的空间大小,如2.4节所述。我们在表7中报告了使用不同网格数的结果。当S = 1时,除两个差异外,与MoCo-v2基线相同。1)密集投影头的参数与全局投影头的参数是独立的。2)密集的对比学习保持了一个独立的字典。结果与MoCo-v2基线相似。这表明额外的参数和字典并没有带来改进。性能随着网格大小的增加而提高。我们使用网格大小为7作为默认设置,因为当S超过7时性能变得稳定。
image.png
负样本。我们使用全局平均汇集特征作为负值,因为它在概念上更简单。除了池化之外,抽样也是一种备选策略。为了保持相同数量的底片,可以从不同的图像中随机取样一个局部特征。采用采样策略的COCO预训练模型在VOC检测上达到56.7%的AP,与采用池化策略相同。

训练计划。我们在表8中展示了使用不同训练计划的结果。训练时间越长,表现越好,从200epoch到1600个epoch。注意,1600 epoch COCO预训练的DenseCL甚至超过了200 epoch ImageNet预训练的MoCO-v2 (57.2% AP vs. 57.0% AP)。与200 epoch ImageNet预训练相比,1600epoch COCO预训练只使用~ 1=10张图像和~ 7=10次迭代。在图3中,随着训练计划的延长,我们进一步提供了与基线的直观比较。它表明,DenseCL始终优于MoCo-v2至少2%的AP。
image.png

image.png

预训练的时间。在表9中,我们比较了DenseCL和MoCo-v2的训练时间。当在COCO和ImageNet上进行预训练时,DenseCL每个epoch只慢15秒和6秒。开销不到1%。它有力地证明了我们方法的有效性。

3.4. Discussion on DenseCL
为了进一步研究DenseCL是如何工作的,在本节中,我们将DenseCL中学习到的密集对应可视化。本文还讨论了训练中先有鸡还是先有蛋的问题。
image.png

密集对应可视化。我们从两个方面可视化密集对应关系:从不同预训练方法中提取的最终对应关系的比较,即MoCo-v2 vs. DenseCL,以及不同训练状态的比较,即从随机初始化到训练良好的DenseCL。给定同一图像的两个视角,我们使用预训练好的主干提取特征F1和F2。对于F1中的每个特征向量,我们在F2中找到具有最高余弦相似度的对应特征向量。如果从F2到F1都保持相同的匹配,则保持匹配。每个匹配被分配一个平均相似度。在图4中,我们将高相似性匹配(即相似性≥0.9)可视化。DenseCL提取了比基线更多的高相似性匹配。根据我们的意图,从同一图像的两个视图中提取的局部特征应该是相似的。

图5显示了这种对应关系在训练期间的变化情况。随机初始化模型提取一些随机噪声匹配。随着训练时间的增加,比赛的准确性也会提高。

鸡生蛋还是蛋生鸡的问题。在我们的先导实验中,我们观察到当我们将λ设置为1.0时,训练损失不收敛,即去除全局对比学习,只应用密集对比学习。这可能是因为在训练开始时,随机初始化的模型无法在视图之间生成正确的对应关系。因此,这是一个先有鸡还是先有蛋的问题:如果提取了不正确的对应关系,就无法学习到好的特征;如果特征不够好,就无法获得正确的对应关系。如图5所示,由于随机初始化,大多数匹配都是不正确的。核心解决方案是在培训开始时提供指导,打破僵局。我们将介绍三种不同的解决方案来解决这个问题。1)用预训练模型的权值初始化模型;2)在开始时设置一个预热期,在此期间λ设为0;3)设image.png在整个训练过程中。他们都很好地解决了这个问题。第二个变化如表5所示,在第一个10k次迭代之后,λ从0变为1.0。由于简单,我们采用最后一个作为默认设置。

Conclusion

在这项工作中,我们开发了一个简单有效的自监督学习框架DenseCL,它是为密集预测任务而设计和优化的。提出了一种新的对比学习范式,在像素(或局部特征)水平上进行密集的两两对比学习。我们的方法在很大程度上缩小了自监督预训练和密集预测任务之间的差距.

image.png在包括PASCAL VOC对象检测、COCO对象检测、COCO实例分割、PASCAL VOC语义分割和cityscape语义分割在内的各种任务和数据集上都有了显著的改进。我们期望提出的有效、高效的自监督预训练技术能够应用到更大规模的数据中,充分发挥其潜力,也希望DenseCL预训练模型能够在计算机视觉的许多密集预测任务中完全取代监督预训练模型。