题目:Learning Where to Learn in Cross-View Self-Supervised Learning
翻译:跨视图自监督学习中的Learning Where to Learn
作者:Lang Huang¹, Shan You²*, Mingkai Zheng³, Fei Wang², Chen Qian², Toshihiko Yamasaki¹
¹东京大学;²商汤科技研究院;³悉尼大学
摘要:
自监督学习(SSL)取得了巨大的进展,并且大大缩小了与监督学习方法之间的差距,主要通过将表示学习引导至嵌入空间进行投影。在投影过程中,当前的方法通常采用像素的均匀聚合来实现嵌入;然而,这种方式可能引入与对象无关的噪声,并导致不同增强之间的空间错位。在本文中,我们提出了一种新方法——学习何处学习(Learning Where to Learn, LEWEL),用于自适应聚合特征的空间信息,以便投影的嵌入能够精确对齐,从而更好地引导特征学习。具体而言,我们将SSL中的投影头重新解释为逐像素投影,并通过共享权重的投影头从原始特征中预测一组空间对齐图。通过根据这些对齐图进行空间加权来聚合特征,从而获得一系列对齐的嵌入。通过这种自适应对齐,我们观察到在图像级预测和密集预测任务中都取得了显著的改进:LEWEL在ImageNet线性/半监督分类、Pascal VOC语义分割和目标检测任务上分别比MoCov2[15]提高了1.6%/1.3%/0.5%/0.4%百分点,比BYOL[14]提高了1.3%/1.3%/0.7%/0.6%百分点。
1. 引言
近年来,自监督学习(SSL)[7,12,14,15,29,30,42]因其能够从大量无标签数据中学习良好表示的出色能力而受到了极大的关注。其中,最先进的实例区分方法[7,14,15,30,42]通过对一组随机的数据转换(例如,随机裁剪和颜色失真)的图像级不变性来促进表示学习。这些方法甚至在各种下游任务(例如,目标检测[11,25]和语义分割[11])中表现出比其监督方法更优越的性能。
然而,仍然有一些重要问题尚未解决。其中两个问题主要归因于对随机裁剪的严格不变性,因为这可能会引入更多与对象无关的噪声(例如背景信息)和增强物体的空间错位。尽管对于SSL来说,随机裁剪可能是最有效的数据增强选项[7],并且某种程度的空间错位是有益的[38],但如何选择最佳的错位程度仍不明确。此外,所涉及的噪声会削弱图像级表示的区分能力,而错位则丢弃了一些物体的重要空间信息。
最近的一些文献致力于通过提前引入下游任务的某些定位先验来缓解这些问题。例如,[40,44]的工作探索了两个增强视图之间的像素级一致性,而其他一些工作则提出将一组预定义的边界框[35,43]或预先计算的掩码[19]在两个视图之间的表示进行匹配。尽管这些方法在密集预测任务上提高了性能,但它们仍然存在一些缺陷,例如它们依赖于特定下游任务的先验,无法推广到其他任务。具体来说,这些方法往往在分类任务上的表现不如其实例区分方法,因为它们特别针对密集预测进行了优化,并且强调了局部特征的学习。
我们认为,一个好的自监督表示学习算法不应利用任务特定的先验,而应自发地学习局部表示。在本文中,我们提出了一种新的自监督学习方法——学习何处学习(LEWEL),以一种完全端到端的方式进行学习。我们首先将现有SSL方法中的嵌入空间聚合(例如,通过全局平均池化GAP)视为对所有空间像素的加权求和。这个公式表明,我们可以通过操纵对齐图来显式地控制SSL中的学习位置。此外,与之前的工作手动指定对齐图基于下游规则不同,我们的方法在训练过程中自适应地预测对齐图。
然而,直接在没有任何监督信号的情况下建模对齐图是非常具有挑战性的。因此,我们提出了一种新的重新解释方案,通过全局表示的帮助来引导这一过程。如图1b所示,我们不使用额外的参数化,而是将SSL中的全局投影头重新解释为逐像素投影,以直接预测这些对齐图,这一灵感来源于语义分割的学习范式[26]。通过这种方式,全局嵌入和语义对齐图与共享权重的投影头相结合。该重新解释使模型能够自动找到语义一致的对齐,生成一组空间对齐图以“监督”对齐过程。
实际上,LEWEL中的耦合投影头具有多个优点。一方面,基于生成的对齐图,我们可以获得一系列对齐的嵌入。使用这些嵌入实现SSL预计将有助于表示学习,因为无关的噪声和空间错位已在很大程度上得到解决。另一方面,使用对齐的嵌入进行学习反过来又促进了全局表示提取出更多真正有区分性的特征。由于这种自适应对齐和耦合投影头,我们同时在图像级和密集预测任务上观察到显著的改进。
我们的主要贡献总结如下:
- 我们引入了一种新的自监督学习方法,学习何处学习(LEWEL),它是一个通用的端到端框架,不涉及任何下游任务先验,以实现更自适应和更准确的表示学习。
- 在LEWEL中,我们提出了一种新的重新解释方案,通过耦合的投影头生成对齐图,使得对齐和全局嵌入可以相互促进,从而提升学习到的表示。
- LEWEL在图像级预测和密集预测任务上带来了显著的改进。我们在ImageNet-1K[36]、Pascal VOC[11]和MS-COCO[25]基准测试上进行了广泛的评估,涉及线性/半监督分类、语义分割和目标检测任务。实验结果表明,在所有设置下,LEWEL都能提升强基线MoCov2[15]和BYOL[14]的性能。具体来说,LEWEL在ImageNet线性/半监督分类、Pascal VOC语义分割和目标检测任务上分别比MoCov2[15]提高了1.6%/1.3%/0.5%/0.4%百分点,比BYOL[14]提高了1.3%/1.3%/0.7%/0.6%百分点。
2. 相关工作
学习良好的表示一直是计算机视觉中的一个基本问题。近年来,自监督学习(SSL)作为一种有前景的表示学习范式出现。通常,SSL方法通过解决一个代理任务来驱动训练,包括使用自动编码器[32,39]恢复输入,在输入空间生成像素[13,22],预测图像旋转[12],以及解决拼图[29]。最近,对比学习方法大大推动了自监督表示学习的发展。这些方法的核心思想是学习对一组数据变换(例如随机裁剪、随机颜色抖动和随机高斯模糊)不变的表示。许多对比学习方法[7,15,30,37,42,47,48]基于实例区分框架,模型学习通过最大化正样本之间的相似性和最小化负样本之间的相似性来获得表示。由于实例区分依赖于大量负样本来获得良好的性能,一些其他的工作提出摆脱负样本,例如,结合聚类算法[1,3,4,23],简单地从同一图像的另一个增强视图中预测表示[9,14,20],特征去相关化[46],或自蒸馏[5]。然而,大多数最先进的对比学习方法仅在全局特征上操作,这可能会引入与对象无关的噪声,并导致不同增强视图之间的空间错位。所提出的LEWEL框架属于对比学习范畴,适应性地解决了上述缺点。
有几项研究致力于缓解这些问题。大多数提出了在预训练阶段保持主干特征的空间分辨率,并引入下游任务的先验。例如,一些工作通过匹配最相似的像素[40]或在原始图像中邻近区域的像素[33,44]进行像素级对比学习;[35,43]的工作通过RoI Pooling[17]学习匹配与原始图像中同一区域对应的区域表示;[19]的工作使用一组预先计算的掩码对对应特征进行池化以进行匹配。与这些使用预定义匹配规则的方法相比,我们提出了在自监督学习中通过一组在训练过程中预测的对齐图来学习何处学习。尽管LEWEL预测对齐图的方式受到语义分割[26]学习范式的启发(即逐像素分类),但在预训练阶段,我们并没有引入语义分割的任何先验,例如通过强制像素级一致性。此外,由于重新解释了全局投影以预测对齐图,LEWEL将全局表示的学习与对齐表示的学习结合起来,并同时提高它们的性能,而其他方法在分类任务上会表现出性能下降。
3. 学习何处学习
在本节中,我们首先介绍对比学习的一般化空间聚合公式。然后,我们提出我们的方法——学习何处学习(LEWEL)。最后,我们讨论我们方法与之前工作的关系。
3.1 一般化的空间聚合
符号定义:设 表示需要优化的模型参数, 表示通过指数移动平均(EMA)更新的动量参数,更新公式为 。按照这个符号定义,我们用 表示编码器(例如ResNet-50[18])及其动量对 。此外,设 表示未标注的训练图像, 是一组数据增强操作(例如随机裁剪、颜色抖动等),用于生成自监督学习的增强视图。
全局对比学习:在大多数现有的对比学习框架中,每张训练图像独立地通过两个随机选择的增强操作 进行转换,以获得增强视图 和 。如图1a所示,对于第一个增强视图 ,编码器 输出主干特征 。然后,全局平均池化(GAP)操作应用于特征 以获得表示 ,其中 分别是 的通道数、高度和宽度。接着,表示 通过投影头 进一步转换为嵌入 ,其中 是 的维度。同样,第二个增强视图 通过动量编码器 生成主干特征 、表示 和嵌入 ,并通过动量投影头 生成。最后,一个自监督损失 应用于这两个嵌入上,以驱动训练,其中 的形式将在随后介绍。
学习何处学习:GAP操作是一种有效的空间聚合方式,引入了平移不变性。一方面,这种不变性对于图像级预测是有利的;另一方面,对所有空间位置进行平均会引入与对象无关的噪声(例如背景信息),并且丢失了空间信息,而这些信息对于空间敏感的任务来说至关重要。
在本文中,我们提出了在自监督学习中自动学习何处学习。我们的方法定义为学习一个空间聚合的对齐图 :
其中 ,且 ,并且 。公式(1)是一个通用公式,允许模型对齐错位的增强视图,并排除不希望的噪声。此外,我们可以看到,GAP是公式(1)的特例,其中 ,,这表明我们的方法能够通过操纵对齐图 在一个统一的框架中聚合局部和全局表示。
3.2 重新解释与耦合投影头
重新解释与耦合:对于全局对比方法,给定输入图像 ,模型输出全局表示 和嵌入 。这个嵌入 由 个标量组成,每个标量 表示图像 对应的第 个语义的激活值。这里,“语义”这个概念是松散定义的,它可以代表一个物体、一个模式,或模型编码的其他内容。从这个角度来看,投影头 类似于全局表示 上方的一个“分类器”。基于这一点,我们的方法受到了语义分割学习范式的启发,即逐像素分类[26]。我们将全局投影头 重新解释为逐像素投影,并将 应用于GAP之前的特征(即 )。如图1b所示,当输入第一个增强视图 时,模型输出 ,包含一组热图,记录了所有 位置对所有 个语义的激活值。通过权重共享的方式重新解释,耦合了全局投影和对齐图预测,从而允许模型同时学习更好的全局表示和对齐表示。
对齐嵌入:如同在全局对比学习中,热图 将沿着通道维度进行 归一化,公式如下:
最后,为了得到对齐图 ,我们对 中的每个热图沿空间维度进行归一化,公式如下:
其中 softmax 函数作用在高度和宽度维度上,即
通道分组:我们引入了一种分组方案,代替使用一个对齐图来聚合一个对齐表示,该方案将 的通道均匀划分为 个大小相等的组,即 ,其中 表示连接操作。给定对齐图 ,我们可以相应地聚合一组对齐表示 ,具体如下:
其中 是公式(1)中定义的空间聚合操作。我们在附录A.1中提供了分组方案的示意图以直观展示。这种分组方案允许我们显式控制对齐表示的数量,同时在每个对齐表示中编码更多的语义信息。然后,通过一个语义投影器 将对齐表示投影为对齐嵌入 ,其中 是投影器 的输出维度。按照相同的步骤,可以根据公式(2)和动量投影器 和 生成第二个增强视图的对齐嵌入 。最后,在对齐嵌入上应用自监督损失 以驱动训练。
3.3 实现细节
损失函数:将所有内容结合在一起,我们将自监督学习表述为最小化以下目标:
其中 是全局损失和对齐损失之间的权衡项,默认情况下设置为0.5。为了更直观地展示,图2显示了LEWEL的整体流程图。
上述公式是通用的,与特定的自监督损失选择无关。这里,我们介绍了两种损失函数的实例化。第一种变体称为LEWELM,基于InfoNCE损失[30]:
其中 是输入对的余弦相似度, 是温度项, 是负样本的嵌入。在我们的实现中,负样本存储在先进先出的队列[15]中用于全局损失 ,或由当前小批次中的不同图像的嵌入组成用于对齐损失 ,因为数量足够大。
此外,我们介绍了第二种变体,称为LEWELB,它不依赖于负样本。LEWELB采用与BYOL[14]类似的归一化均方误差:
其中, 表示停止梯度操作。 是一个额外的预测器,帮助学习全局表示,而对于对齐表示,采用了一个单独的预测器 来实现相同的目标。
3.4 讨论
从空间对齐的角度:公式(1)描述的形式对大多数先前的自监督学习方法进行了泛化,包括基于GAP(全局平均池化)的方法以及基于像素或patch的方法。例如,像素级方法的目标是学习像素对应关系,本质上是找到一组激活在单个对应位置上的一对一对齐图;而patch级方法则采用一组预定义的对齐图,这些对齐图仅激活patch区域以进行空间对齐。与这些方法形成鲜明对比的是,我们提出了在模型自身的基础上自动学习何处学习的方法,依据通用的公式(1)。此外,由于在预训练阶段没有涉及特定下游任务的先验,LEWEL能够在图像级和密集预测任务中同时表现良好,而不会牺牲一个任务的性能去提升另一个任务的表现。
从嵌入的角度:对于全局对比方法,给定输入图像 ,模型输出一个全局嵌入 。从嵌入的角度来看,这个嵌入 由 个标量组成,每个标量记录输入图像 对应第 个语义的激活值。相比之下,在语义对齐图的引导下,LEWEL(当分组数 时)为所有语义分别编码了 个对齐嵌入,每个嵌入的维度为 。换句话说,在我们的框架下,每个语义通过对齐嵌入获得了更强的表达能力,从而对齐嵌入的学习隐式地促进了全局嵌入 的学习。在第4.4节中,我们将讨论 的影响。
4. 实验
4.1 线性评估
实验设置:按照之前的工作[9,14],我们移除LEWEL中的投影器和预测器,并在固定的主干网络 上训练一个线性分类器,以评估学习到的表示。对于LEWELM,我们使用批次大小为4096、初始学习率为3.2、无权重衰减、LARS优化器[45],以及余弦退火调度[27],训练90个epoch,遵循[9]中的设置。对于LEWELB,我们训练分类器50个epoch,使用批次大小为256、无权重衰减、带动量的SGD优化器、初始学习率为0.4,在第30和40个epoch时将学习率降低10倍,遵循[2]。
结果:表1报告了IN-1K验证集上的top-1和top-5验证准确率,其中包含了引用的结果和我们复现的结果,以进行公平比较。总体而言,所提出的LEWEL在所有设置下都比最先进的方法有显著提升:在100个训练epoch中,LEWELM/LEWELB分别将其基线方法MoCo[15]/BYOL[14]的top-1验证准确率提高了1.6%/1.3%百分点;在400个训练epoch中,LEWELB的表现比BYOL高出0.6个百分点。
4.2 半监督分类
实验设置:我们进一步评估了自监督预训练的ResNet-50模型在IN-1K数据子集上的微调性能。为了公平比较,我们使用了由Chen等人[7]随机选择的1%和10%子集。我们在这两个子集上微调模型50个epoch,对于1%子集,分类器的学习率为1.0,主干网络的学习率为0.0001;对于10%子集,分类器的学习率为0.1,主干网络的学习率为0.01,这些学习率在第30和40个epoch时减小10倍。
结果:表2报告了IN-1K验证集上的top-1和top-5半监督分类准确率。在相同的预训练epoch下,LEWEL比其他方法有明显优势:特别是当只有1%的标签可用时,LEWELB在200个预训练epoch的设置下达到了56.1%/79.9%的top-1/top-5准确率,比其他方法最多提高了1.3%/1.1%百分点。此外,我们发现,LEWELB的表现优于需要2倍甚至更多预训练epoch的最先进SSL方法,例如,LEWELB在400个epoch下的表现明显优于BYOL在800个epoch下的表现。这些半监督分类和线性分类的结果表明,LEWEL能够学习更好的图像级预测表示。
4.3 迁移学习到其他任务
为了评估预训练模型在其他任务上的迁移学习性能,我们使用了两个标准基准测试:Pascal VOC[11]和MS-COCO[25]。
VOC目标检测和语义分割:对于目标检测,我们使用预训练模型来初始化Faster R-CNN[34]模型的ResNet-50-C4主干网络。模型在trainval07+12数据集(约16.5k张图像)上进行训练,并在test12数据集(约5k张图像)上进行评估,使用开源代码库Detectron2[41]。我们遵循[41]中的标准设置,即24k次迭代,批次大小为16,学习率在总步数的3/4和11/12处进行衰减,并使用SyncBN。对于语义分割,我们使用输出步幅为8的扩展FCN[26]模型,在Pascal VOC 2012的train+aug数据集(约10.6k张图像)上进行训练,并在val数据集(约1.5k张图像)上进行评估,使用mmsegmentation[10]代码库。我们在20k次迭代中训练模型,批次大小为16,使用SyncBN和“poly”学习率调度器[6]。对于所有模型,我们搜索最佳的微调学习率,并报告相应的结果。
表3汇总了目标检测(通过平均精度AP、AP50和AP75测量)和语义分割(通过交并比mIoU测量)的实验结果。尽管先前的工作[8]报道说线性准确率不一定与下游任务的性能相关,但我们观察到LEWEL在目标检测和语义分割上都取得了显著的提升。事实上,LEWEL在几乎所有条目中都优于所有比较方法,使用了100/200个epoch的训练预算。
4.4 迁移学习到MS-COCO目标检测和实例分割
我们采用了Mask R-CNN[16]架构,主干网络为ResNet50-C4[41](按照[9, 15])或ResNet50-FPN[24](按照[40, 43, 44]),并在ImageNet-1K数据集上预训练了200/400个epoch。所有模型在COCO 2017训练集(约11.8万张图像)上进行微调,最终在验证集(约5k张图像)上进行评估。我们使用批次大小16,并采用Detectron2[41]中的1×调度,即总共进行90k次训练迭代,并在第60k和80k次迭代时将学习率降低10倍。我们对LEWEL和复现方法进行了微调学习率的搜索。
表4汇总了所有方法在目标检测和实例分割中的标准COCO评估指标,包括目标检测的AP、AP50和AP75,以及实例分割的AP、AP50和AP75。我们可以看到,LEWEL在所有指标上都取得了最佳表现。具体来说,LEWELM/LEWELB在所有条目中一致地提升了强基线MoCo/BYOL的性能,最多达到了0.5个百分点的提升。与不使用空间对齐的其他最新方法相比,LEWEL的提升更为显著。此外,与手工设计的空间对齐方法[40, 43, 44]相比,我们在附录B.1的实验中表明,LEWEL在密集预测任务中表现与这些方法相当或更好,同时在分类任务上显著优于这些方法。这些实验结果结合在Pascal-VOC基准上的实验,清楚地展示了LEWEL能够提升自监督学习的密集预测性能。
4.5 消融实验
每个组件的影响:在表5中,我们研究了引入的对齐损失和投影器g的权重共享设计(即耦合头设计)对我们方法的贡献。我们可以看到,单独使用全局损失(即MoCov2基线)或对齐损失,两个评估任务上的结果确实不如同时使用这两种损失的变体。此外,结合权重共享设计进一步提升了性能,在线性分类准确率和分割mIoU方面分别比基线提高了2.6%和1.8个百分点。结果验证了对齐损失和LEWEL的耦合头/权重共享设计的有效性。
与使用更大/额外投影头的MoCov2比较:由于LEWEL为对齐表示使用了一个单独的投影头,明确识别额外参数对性能提升的贡献非常重要。在表6中,我们将LEWELM与MoCov2[15]进行比较,后者使用了更大或额外的投影头。我们没有观察到MoCo使用更大或额外投影头有显著的性能提升。此外,我们注意到[46]中的类似研究也表明,使用更深或更宽的投影头并不能提高BYOL的性能。相比之下,将MoCo切换为LEWEL显著提升了分类和分割任务的性能,分别提高了2.6%和1.8个百分点。这些实验表明,LEWEL的性能提升主要来自于算法本身,而不是略微增加的参数。
损失权重的影响:我们还进行了实验,研究损失权重 对LEWEL性能的影响,尽管为了简化,默认将 设置为0.5。实验结果如图3a所示。我们观察到,当 值较小时(例如 ),模型的表现相对较差。而当 设置为较大的值时,模型的性能实际上相差无几,除非 。这一观察表明,我们对全局投影头的重新解释和权重共享方案紧密地结合了全局损失和对齐损失的学习,使得对齐表示的学习隐式地促进了全局表示的学习。
对齐嵌入的维度影响:正如第3.4节中所讨论的,每个对齐嵌入实际上是全局嵌入中相应语义的额外表示。在图3b中,我们比较了不同对齐嵌入维度 对LEWELM 性能的影响,同时保持投影头 的输出维度固定。结果显示,随着对齐嵌入维度 的增加,性能最初提高,然后在 时趋于稳定。结果表明,增加对齐嵌入的表达能力确实有助于全局表示的学习。然而,当维度过大时,额外的信息可能变得冗余,性能不会进一步提高。
对齐嵌入数量的影响:分组方案允许模型在每个对齐表示中编码更多的语义信息,同时减少对齐表示的数量。在表7中,我们比较了不同数量的对齐嵌入的模型变体的性能,这些嵌入数量由耦合头 的输出维度 和分组数量 决定。这里我们使用LEWELB进行此项研究,以排除LEWELM 中负样本数量的影响。从表中我们可以观察到一个有趣的现象,当固定 时,随着分组数量 的增加,线性准确率提高,然后略有下降;而在语义分割任务中的表现则完全相反,表现更倾向于较小的 值。这一观察可能表明,当对齐表示的数量过多时,它们往往专注于局部区域,而当数量较少时,表现则倾向于全局内容。此外,我们发现,当 时,LEWELB 在各项任务上表现都较为稳定。因此,我们在LEWELB 中采用了 ,并将 用于与基线BYOL的直接比较。
空间对齐的有效性:我们在表6的倒数第二行报告了使用随机对齐图 的LEWEL性能,结果明显低于默认设置,这突显了自适应对齐在LEWEL中的重要性。此外,我们在附录C.1中可视化了对齐图,显示LEWEL能够自动找到语义一致的对齐。
5. 结论
在本工作中,我们提出了一种新的自监督学习方法——学习何处学习(LEWEL)。与现有的SSL方法不同,LEWEL并不局限于学习固定的(全局或局部)区域。我们将SSL中的全局投影头重新解释为逐像素投影,通过预测一组对齐图来自适应地聚合SSL的空间信息。由于这种自适应对齐和重新解释方案的应用,我们观察到LEWEL在多个任务上相比最先进的SSL方法有显著提升,包括线性/半监督分类、目标检测和实例/语义分割。