尽管在残差网络表示学习中,自监督方法(self-supervised)取得了一些进展,但在ImageNet分类基准测试中,它们仍然表现不佳,这一点限制了它们在关键性任务中的适用性。
近日,基于之前的理论研究,来自DeepMind的研究人员们提出了RELICv2,该方法结合了对比学习损失和一个显式的不变性损失,论文标题为Pushing the limits of self-supervised ResNets: Can we outperform supervised learning without labels on ImageNet? 在ImageNet分类任务中,RELICv2使用ResNet50实现了77.1%的top-1正确率(linear evaluation),并且在更大的ResNet上实现了80.6%的top-1正确率,该结果远超于之前最好的自监督方法。
更特别的是,RELICv2是第一个使用一系列标准ResNet架构,在类似比较中始终优于有监督基线的表征学习方法。研究证明,尽管使用的是ResNet模型做视觉编码,RELICv2仍然能与最先进的自监督视觉transformer相媲美。
大规模基础模型,特别是预训练语言模型和预训练多模态模型是表征学习领域的重要发展方向。
这些模型使用不需要数据标签的无监督学习方法训练(或self-supervised),并且能轻松地应用到few-shot和zero-shot场景下,能够在那些标注数据昂贵且不易获取的下游任务中取得良好的性能。多视角对比学习已成为表征学习中一种成功的策略。然而,到目前为止,这些表示的下游用途从未超过监督学习的性能,限制了它们的用途。
在这项工作中,团队展示了在ImageNet上的类似比较中,使用相同的网络架构,可以在不使用标签的情况下训练的表征,其性能优于已建立的有监督基线。
为了实现这一目标,团队构建了基于不变因果机制(RELIC)框架的表示学习,该框架基于不变预测原理学习表示。与其他方法不同,RELIC通过损失函数中的附加项显式地强制保持数据集中相似点和不相似点之间关系的不变性。
RELIC学习更紧密地遵循底层数据几何形状的表示。这个属性确保学习到的表征能够很好地传递到下游任务。在本文中,团队提出了RELICv2,它利用了对RELIC的理论理解,通过更好的策略来选择相似点和不同点,并将这些策略纳入对比和不变性目标函数中。因此,RELICv2在广泛的ResNet架构上实现了自我监督学习的最新性能。
此外,RELICv2是第一种自监督表示学习方法,在1、2和4个变量的线性ImageNet评估中,它优于有监督的ResNet50基线方法;请注意,其他工作优于此基线,但通过使用与基线不同的网络架构来实现,因此不是类似的网络架构比较。团队演示了如何通过改变自我监督训练方案而不需要改变网络架构来超越监督基线。
在ImageNet RELICv2上,top-1的分类准确率达到77.1%(ResNet50),而ResNet200则达到80.6%。
在ResNet101、ResNet152和ResNet200等更大的ResNet架构上,RELICv2的性能也优于监督基线。团队还证明了RELICv2在迁移学习、半监督学习、鲁棒性和非分布概化等其他任务中表现出竞争性能。
最后,虽然使用了ResNet架构,但RELICv2的性能与最新的基于视觉transformer的方法。团队参考了大量的多视图表征学习方法。对比方法是利用实例分类问题来学习表示的方法的子集。给定一批数据B,这些方法通过与正样本和负样本的对比来学习从B采样的锚点xi的表征,目的是将正样本点作为锚点的实例与负样本点进行分类。
在最简单的情景中,锚点和正样本点是同一图像的两个不同增强版本,负样本是batch中其他图像(使用相同的数据增强策略)。标准的对比学习可以使用下面的对数似然函数中简明地描述:团队使用目标网络设置(Grillet al.,2020),其中f和g具有相同的架构,但g的网络参数是f的网络参数的指数移动平均。
RELIC引入了一种不变性损失函数,定义为锚点和它的一个正样本之间的Kullback-Leibler散度,两者的计算如方程1:团队采用停止梯度算子sg[·],它不影响KL散度的计算,但避免了优化过程中的退化解。与RELIC类似,RELICv2的基本目标是最小化对比负对数似然和不变性损失的组合:其中α和β是标量超参数,它们权重对比和不变性损失对总体目标的相对重要性。
RELICv2与RELIC的不同之处在于选择适当的正负点集,以及如何将数据的结果视图组合到目标函数中。多裁剪数据增强是由(Caron et al.,2020)引入的,包括比较同一图像中几个较大(224*224)和较小(96*96)的随机裁剪。与(Caron 等人,2020年)显著不同的是,团队使用了四种较大的裁剪和两种较小的裁剪。团队有可能对较大的裁剪应用基于显著性的背景去除。
为此,团队使用了DeepUSPS的完全无监督版本(Nguyen 等人,2019 年),团队使用ImageNet训练集中的少量图像对其进行训练。然后以概率为pm对图像随机应用显著性掩模,将图像前景与背景分离;这使团队能够学习可以定位图像中的对象的表示。对于大多数实验,团队设置pm=0.1。
然后,团队应用标准的SimCLR增强:随机水平翻转和颜色失真,包括随机序列的亮度、饱和度、对比度和色调变化,以及可选的灰度转换。
团队在ImageNetILSVRC-2012数据集的训练集上不使用标签来预训练表示,然后在各种各样的下游设置、数据集和任务中评估学习到的表示。首先,在ImageNet验证集上检查标准线性评估和半监督下的性能。
接下来,团队研究了RELICv2表征在其他图像分类数据集和语义分割上的迁移能力。团队还在一系列具有挑战性的数据集上测试了RELICv2的鲁棒性和泛化能力。最后,为了研究团队的方法的可扩展性和通用性,团队还在更大、更复杂的Joint Foto Tree(JFT-300M)数据集上进行了预训练,并在ImageNet验证集上报告线性评估协议的结果。补充材料中提供了一套完整的结果和所有实验设置的细节。
团队考虑的有监督基线是ResNet50,该架构使用交叉熵损失训练。
表1. ImageNet上的Top-1和Top-5准确率(linear evaluation)图1比较了RELICv2与监督基线和其他竞争方法在ResNet50、ResNet200配置下的性能。RELICv2不仅性能优于竞争对手的方法,而且也是第一种自监督表征学习方法,在所有编码器配置中始终优于有监督基线。
此外,对于101层、152层和200层ResNet架构,RELICv2的性能也优于监督基线,并且在类似的参数计数上与最新的视觉转换器架构相比具有竞争力。
接下来,团队评估RELICv2在半监督环境下的性能。团队对图像表示进行了预训练,并在ImageNet训练集中使用一小部分可用标签来细化学习后的图像表示。表2报告了ImageNet验证集的Top-1和top-5精度。
当使用10%的数据进行微调时,RELICv2的性能优于监督基线和所有以前的最先进的自我监督方法。当使用1%的数据时,只有C-BYOL的性能优于RELICv2。进一步的半监督结果使用更大的ResNet模型和不同的数据集分割。
团队通过测试学习的特征是否能跨图像域来评估RELICv2表示的通用性。
图2. 迁移学习分类团队对同一组分类任务进行线性评估和微调(Chen 等人,2020a;Grill 等人,2020 年;Dwibedi 等人,2021),并遵循补充材料中详细的评估方案。团队报告每个数据集的标准指标,并报告一个封闭测试集的性能。图2比较了经过BYOL(Grill et al., 2020)、NNCLR(Dwibedi et al.,2021)和RELICv2训练后表征的迁移性能。
总的来说,RELICv2改进了监督基线和竞争方法,在11个任务中有7个任务表现最好。RELICv2在所有任务中显示出相对于有监督基线的平均提高超过5%,是NNCLR的两倍。
团队评估了RELICv2表示在各种数据集上的鲁棒性和泛化性。为了评估RELICv2的鲁棒性,团队使用了ImageNetV2(Recht 等人,2019)和ImageNet-C数据集。
为了评估面向对象的泛化,团队使用了ImageNet-R、ImageNet-Sketch和objectnet。在所有数据集上,团队使用带标签的ImageNet训练集在冻结的表示上训练一个线性分类器;测试评估采用零拍法,即不对上述数据集进行训练。RELICv2学习了更鲁棒的表示,并在ImageNetV2和ImageNet-C上优于监督基线和竞争的自我监督方法。
此外,RELICv2学习的表示优于竞争的自监督方法,同时在泛化方面与监督方法的性能相当。
接下来,团队使用JFT-300M数据集进行预处理,测试RELICv2对更大的数据集的适应性。JFT-300M数据集包含3亿张图像——来自超过18 k个类。然后,按照3.1节中描述的线性评估协议,在ImageNet验证集上评估学习到的表示。
团队将RELICv2与BYOL和Divideand contrast(DnC)进行了比较,后者是一种专门设计用于处理大型和未组织的数据集的方法,代表了自我监督JFT-300M预训练的当前技术水平。表3报告了在JFT-300M上使用标准ResNet50架构作为骨干,对不同数量的ImageNet等效时代的各种方法进行训练时的top-1精度;实施细节可以在补充材料中找到。
RELICv2在JFT上训练1000个epoch时,比DnC提高了2%以上,在需要更少的训练epoch的情况下,获得了比竞争方法更好的整体性能。
为了理解损失函数中显式不变性项对RELICv2学习的表示的影响,团队研究了密切相关类学习的表示之间的距离。图3展示了RELICv2和BYOL在ImageNet上使用第3节描述的协议学习的最近邻表示之间的欧几里德距离。在这里,团队挑选了两种狗和两种猫。
这四个类中的每一个都有50个从ImageNet验证集中关联的点,顺序是连续的。每一行代表一幅图像,每一行中的每个彩色点代表该图像表示的五个最近邻居中的一个,其中颜色表示图像与最近邻居之间的距离。与底层类结构完美匹配的表示形式将呈现出完美的块对角结构;也就是说,它们最近的邻居都属于同一个底层簇。团队看到RELICv2学习的表征,其最近的邻居更接近,并且比BYOL在类和超类之间表现出更少的混淆。
为了量化学习潜空间的整体结构,团队检查了所有类的类内和类间距离。图4比较了RELICv2学习到的ImageNet验证集中的点表示的类间和类内2-距离的比率分布,以及通过监督基线学习到的点表示的类间和类内2-距离的比率分布比例越大,意味着表征越集中在相应的类中,类之间越容易分离,因此更容易线性分离【c.f. Fisher的线性判别器(Friedman et al., 2009)】。
团队发现,与监督基线相比,RELICv2的分布向右移动(即有更高的比率),这表明使用线性分类器可以更好地分离表示。
图5显示了使用RELICv2学习的表示形式获得的ImageNet线性评估精度,它是使用ImageNet训练集进行前训练时看到的图像数量的函数。可以看出,为了达到70%的精度,ResNet50模型需要大约两倍于ResNet295模型的迭代次数。ResNet295的参数量约为ResNet50的3.6倍(分别为87 M和24 M)。这一发现与其他研究结果一致,即大型模型具有更高的样本效率。
之前工作的两个主要区别(Mitrovic 等人,2021 年;2020 年)和RELICv2是利用多茬作物和显著性掩蔽。在这里,团队在ResNet50上使用top1 ImageNet验证集在线性评估协议下的性能来消除这些技术的使用。总之,从RELIC(74.3%)开始,通过添加多作物,团队获得了+2.5%,通过添加显著性掩蔽,团队获得了+0.3%,最终的RELICv2性能为77.1%。
图6比较了最近基于ViT的方法和使用各种大规模ResNet架构的RELICv2。值得注意的是,RELICv2优于DINO和MoCov3,并且在参数数量大致相同的情况下表现出与EsViT相似的性能,尽管这些方法使用了更强大的架构和更复杂的训练过程。将RELICv2与最近的架构创新相结合,可能会进一步改进视觉表征学习的性能。
【学术头条】与【数据实战派】是我们科学+科技内容联合体的主要成员。
【数据实战派】致力于打造一个不用感叹号的新兴AI内容自媒体,围绕“计算+智能(computing+intelligence)”技术,力求从种种杂音和噪声中,压缩出更纯粹且重要的知识,助力中国AI开发者的高速成长。目前,【数据实战派】由一批具有AI/CS专业背景的作者及资深科技编辑共同运营,并已聚拢一大批有着深度阅读习惯、优质内容品位的读者。我们期待有志之士的加入,共同打造高规格的AI技术社区。