【自监督论文阅读笔记】On the Pros and Cons of Momentum Encoder in Self-Supervised Visual Representation Learnin

Abstract

        指数移动平均值(EMA 或动量)广泛用于现代自监督学习 (SSL) 方法,例如 MoCo,以提高性能。我们证明,这种动量也可以插入无动量的 SSL 框架中,例如 SimCLR,以提高性能。尽管它被广泛用作现代 SSL 框架中的基本组件,但动量带来的好处还没有得到很好的理解。我们发现它的成功至少可以部分 归因于稳定性效应。在第一次尝试中,我们分析了 EMA 如何影响编码器的每个部分,并揭示 编码器输入附近的部分起着微不足道的作用,而后面的部分影响更大。通过监控相对于编码器中每个块的输出的总体损失的梯度,我们观察到在反向传播过程中,最终层的波动往往比其他层大得多,即稳定性较差。有趣的是,我们表明将 EMA 用于 SSL 编码器的最后部分,即投影仪,而不是整个深度网络编码器,可以提供可比或更好的性能。我们 提出的 projector-only momentum 有助于保持 EMA 的优势,但避免了双重前向计算


1. Introduction

        自监督学习 (SSL) 以其使用未标记数据学习表示的能力而闻名。 SSL 已广泛应用于 NLP [1, 2, 3, 4, 5] 和 计算机视觉 [6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16] 中。我们发现多个开创性的 SSL 框架,MoCo [10、17、18]、BYOL [19]、DINO [20] 和 ReSSL [21] 都使用动量来形成 教师-学生范式,其中 教师编码器 使用指数移动平均(EMA) 从学生模型更新。为避免混淆,我们在提及 EMA [22] 时 交替使用 “EMA” 或 “动量”。

        在文献中,EMA 编码器主要出于两个目的:(a) 为负对生成一致的表示 [10、17、21]; (b) 避免在 negative-free的 SSL 框架中崩溃 [20, 19]。这些动机受到后续工作中的主张的挑战 [15, 11]。例如,可能不需要大量的负样本,从负样本的角度来看,EMA 是不必要的 [15]。 SimSiam [11] 还表明,EMA 不是防止无负样本的 SSL 框架崩溃所必需的。这激发了从新的角度理解 EMA 的需求,以解释其在提升性能方面的实证效益。

([15] Dual temperature helps contrastive learning without many negative samples: Towards understanding and simplifying moco)

        我们调查并发现 这种性能提升 可以 部分用稳定性效应来解释。不幸的是,在实践中,稳定性效应的这种好处并不是免费的,因为它 使前馈的计算资源加倍。请注意,SSL 的核心在于学习增强不变表示,因此 优化目标 通常旨在 使从同一图像增强的两个图像具有相似的表示。具体来说,从同一图像增强的另一图像的表示 被用作优化网络的目标。在教师编码器上应用动量 需要额外的前向计算资源 以及 用于获得目标表示的内存

        为此,我们研究了动量对编码器不同部分的影响。具体来说,我们 将教师网络编码器中的动量分解为不同的部分,并研究动量对整个编码器网络每个阶段(块)的影响。我们发现 动量的好处 在编码器的不同阶段 差异很大 EMA在早期阶段(靠近输入端)的作用微不足道,而在后期阶段(靠近输出端)则更为重要。我们发现这可以归因于 更高但波动的梯度值,这会导致更多的不稳定性

        有趣的是,我们发现仅将 EMA 应用于编码器的最终的投影头 就足以产生可比的或有时更好的性能,尤其是 当 其动量系数 设置得更激进 仅在投影仪上应用 EMA 的一优点是 可以 共享主干上的前向传播,这 只会导致 在轻量级的投影仪上的 双重前向传播

        与主干上的前向计算相比,投影仪上的计算开销可以忽略不计。因此,在这项工作中,我们建议仅使用投影仪动量,如图 1b) 以保持 EMA 的优势,但 避免双重前向计算开销。据我们所知,鉴于 SSL 的最新进展,我们是第一个研究动量编码器影响的人。

        总的来说,我们工作的贡献总结如下

1. 认识到将动量引入 SSL 框架的现有动机 被 后续工作所驳斥,我们通过实验进行调查,表明其提高性能的经验效益可以部分归因于稳定效应

2. 我们探索并揭示了一个有趣的观察结果,即 在编码器的后期阶段 应用动量的好处 明显高于早期阶段。此外,我们提供了梯度分析来证明这种现象。

3. 我们注意到 动量的好处 是 以导致双重前向计算 为代价的。受上述观察的启发,我们提出了一种 仅用于投影仪的动量,以在减轻其缺点的同时保持动量的优点


2. Background

2.1. Full EMA in Self-Supervised Learning 

        给定一个未标记的图像 xi,生成两个随机增强 xi1 和 xi2 并形成正对。我们考虑一个用于一般 SSL 框架的编码器 Eθ,它包括骨干 b(.) 和 一个 MLP 投影仪 g(.) [11、20、10、23、24、21],以及 BYOL [19] 或 SimSiam [23] 的 附加 MLP 预测器 h(.) ,如图 1a) 所示。对于输入图像 x1 和 x2,主干 b(.) 输出的表示如下:

动量主干 bm(.) 的输出计算如下:

请注意,下标“m”表示动量版本。类似地,我们将 f1、f2、f1m、f2m 馈送到投影仪 g(.)、gm(.) 以获得投影输出: 

最后,预测器仅应用于在线网络 h(.) 的投影,即预测器没有动量版本

        对于其他 SSL 框架,例如 Moco、DINO 和 ReSSL,投影 z1、z2 将用于目标函数。例如,此处考虑了 BYOL 损失,其中使用额外的预测器输出来计算目标损失。锚点 pi1(或 pi2)和目标 zi2m(或 zi1m)之间的距离通过与运算符(·)的余弦相似度来测量,BYOL [19]在小批量 N 个样本中的目标函数定义如下:

其中 p1i 和 z{_{1m}^{i}}分别表示 增强图像 xi1 的 预测器 h(.) 的输出 和 动量投影仪 g(.) 的输出。以同样的方式,pi2 和 z2mi表示第二个增强图像 xi2 的符号。请注意,这里每个增强图像都被送入完整的动量编码器,即动量主干 (bm) 和投影仪 (gm)。

        还值得注意的是,所有 pi1、pi2、zi1m、zi2m 都是 l2 归一化的BYOL 默认使用对称损失。还值得注意的是,这里的zi1m和zi2m是 BYOL中 动量编码器的输出(或SimSiam [23]中的停止梯度),下标m放在索引i旁边 表示它是动量输出。

        显然,BYOL 损失只允许梯度通过 pi1 和 pi2,而不是 zi1 和 zi2。按照 [19],我们 将允许梯度更新 [25] 的分支 称为在线网络,将使用 EMA 更新的分支称为目标网络。它 也可以分别称为 学生 和 教师网络 [20]。在线网络由参数 θ 指定,允许在训练期间通过反向传播更新梯度 [25],目标网络由参数 ξ 建模。参数 ξ 的动量更新规则如下[19]: 

其中常数 β ∈ [0, 1] 是动量系数,对于短期训练(200 个 epoch)通常选择值为 0.99在更长的训练中,即 1000 个时期,SSL 方法通常使用更高的动量值,即 BYOL [19, 23] 和 DINO [20] 的 β = 0.996,或 MoCo [10, 17] 的 β = 0.999。 


2.2. EMA Projector in Self-Supervised Learning

        在这个新设置中,不使用骨干动量输出 f1m、f2m,而是使用在线骨干 f1、f2 的输出,馈入动量投影仪 gm(.)

最终的目标损失公式与基线保持相同,即等式 5。对于其他框架,EMA 投影仪的执行方式与上述相同。 


3. Towards Understanding Momentum in SSL

3.1. Momentum Brings Performance Boost

        我们带来了四种广泛使用的基于动量的 SSL 方法,包括 BYOL [19]、ReSSL [21]、MoCo v2 [17] 和 DINO [20],以进行综合实验来分析 EMA 编码器效果。此外,为了概括我们的发现,我们还在两个非基于动量的框架 SimCLR [11] 和 SimSiam [23] 上注入了动量

        我们进行了两个实验来比较动量对 SSL 编码器学习的表征质量的影响。首先,对使用具有最佳参数的动量的每种方法进行实验,其次,我们通过 给定停止梯度 [23] 设置动量系数 β = 0 来去除动量,这意味着在线和目标网络之间共享权重

        我们使用测试集上的最高准确度(%)作为SSL中的通用协议,即BYOL [19],来测量性能。表1显示,如果没有动量编码器,所有基于动量的方法都会显著降低性能(BYOL、Dino、MoCo v2 和ReSSL)。此外,非基于动量的框架,如SimSiam和SimCLR,由于动量的存在而得到改进

         具体来说,当目标网络的动量被移除时,即β = 0,MoCo v2、Dino 和 ReSSL不能训练,它们的精度是微不足道的(∼ 2%,不比随机猜测好),而BYOL可以训练,但与使用EMA的基线(62.01%)相比,精度有明显下降(43.48%)。

        请注意,考虑到投影仪和预测器 [23] 中的一些不同配置,没有动量的 BYOL 可以被认为与 SimSiam 框架相同。通过精心设计,SimSiam [23] 提出了 BYOL 的一个特例,其中 β = 0 可以正常工作,但它在性能上无法与 BYOL 相提并论 [19, 23]。我们使用 [26] 运行 SimSiam,发现其准确率为 51.41%,明显优于 BYOL 框架中没有动量的版本,其准确率为 43.48%(表 1)。然而,与使用动量 的 BYOL 基线(准确率 62.01%)相比,SimSiam 的水平要低得多。默认情况下,SimSiam [23] 和 SimCLR [11] 在其架构中没有 EMA。我们通过将 EMA 添加到他们的目标编码器来进行实验,发现 EMA 将 SimSiam 从 51.41% 提高到 53.66% (+2.25%),并将 SimCLR 从 60.45% 提高到 61.97% (+1.52%),如表 1 所示。

        本节中的分析证明了 EMA 在保证 学习 和 提高各种网络架构性能方面 的重要性。但是,EMA 如何帮助 SSL?


3.2. How Does Momentum Improve Performance?

先前的动机 Prior motivations。

        基于 CL 的框架 [10、17、21] 中使用 EMA 是为了创建一致的负对表示,并 避免在非基于 CL 的框架中崩溃 [20、19]。他们的动机已被后续作品 [15, 11] 与先前的讨论相驳斥。这激发了我们对 EMA 实证收益的新看法,如下面的假设。


假设。

        动量帮助编码器从过去学习,使训练更稳定

实证分析。

        为了揭开 动量可以 通过从过去学习来帮助稳定训练 这一假设的神秘面纱,我们监测并可视化使用动量时学生和教师的权重 与 未使用动量训练的权重进行比较。选择 BYOL [19] 进行实验。我们使用 ResNet-18 主干 CIFAR-100 在 200 个时期内进行训练。默认情况下,在 [26 solo learn] 中实现了 BYOL,编码器中的投影仪有两个 FC 层:FC1(512,4096)、BN、ReLU、FC2(4096,256)。为了能够 可视化权重,我们将 BYOL 中编码器的最终 FC 层设计为具有两个维度。为此,我们 将隐藏层从 4096 更改为 2,即 FC1(512,2)、BN、ReLU、FC2(2,256),所有其他设置保持不变。

        首先,我们在没有动量(β = 0)的情况下进行实验。其次,我们 仅对 target projector 的 FC2 执行 EMA(β = 0.9,β = 0.99)(图 1b)。我们的目标是 观察网络权重 在可以可视化的部分中 有和没有动量时 会发生什么。注意,pytorch [25]中的FC2(2,256) 表示input_dim = 2,output_dim = 256,权重 w 的形状为256×2。换句话说,FC2总共有256个dim = 2的 filter可以可视化

        表 2 显示,在没有动量的情况下,top-1 线性和 KNN-1 测试精度分别为 20.01% 和 10.01%。借助动量,它可以将 top-1 线性精度显著提高到 25.76%,将 KNN-1 提高到 14.17%。有趣的是,它 表明动量实际上有影响,即使 EMA 应用于目标编码器的一小部分 (FC2)。它有什么帮助?我们发现 使用 EMA (β = 0.9) 时在线网络的权重比不使用 EMA 训练时稳定得多,如图 2 所示。这里我们绘制了五条线,绿线表示没有动量 β = 0;蓝线和红线表示动量 β = 0.9 的学生和教师;黑色和橙色线条表示动量 β = 0.99 的学生和教师。

        我们在 3D 图2中 显示了 FC2的权重,其中这些权重记录在200个epoch中,总共40k步。图3显示了无动量、动量β = 0.9 和 动量β = 0.99时 对应的 top-1线性精度。我们在图2中观察到权重的突然变化,这强烈 对应于图3中的精度下降

        更多 filter (权重)的可视化 在附录中提供。这些实验表明,将EMA用于只有二维权重的FC2(形状256 × 2)可以对训练中的稳定性产生很大影响,从而大幅度提高性能(+5.75%)。请注意,在最佳设置[26]中,FC2有4096个维度(256 × 4096),这比我们可视化实验中的要强大得多

        这一现象促使我们研究具有不同容量和参数的编码器的其他部分中的EMA效应。为此,我们通过两个问题深入研究了本文的主要关注点:1) EMA如何影响网络编码器的各个部分?以及 2) 是整个网络的EMA更新 还是 网络某些部分的EMA更新性能最佳


4.部分EMA更新对不同编码器阶段的影响

部分EMA更新。

        ResNet-18 [27]是一个具有18层的卷积神经网络,其设计具有四个块block。注意,在ResNet-18中,如图1a)所示,在四个Res block 之前有一个卷积层。我们将EMA注入每个单独的模块,以观察它如何影响最终性能。BYOL [19]被选中进行调查。所有这些实验都是在CIFAR-100中进行的,有200个时期,所有评估方案都遵循[19]。

        BYOL的整个网络包括1)主干网(ResNet-18),2) Projector,和3) Predictor。默认情况下,BYOL 的目标编码器网络是 针对整个编码器(即主干网和投影仪)更新的 EMA

        我们按照设计将backbone分成不同的模块:Conv1、Block1、Block2、Block3 和 Block4,如图1a所示)。对于图 1a 中编码器的不同部分,我们将整个在线网络的参数集 θ 分解为一组相应的参数 θ1、θ2、θ3、θ4、θ5、θ6、θ7,以及 将目标网络中的参数集 ξ 分解为单独的参数 ξ1, ξ2, ξ3, ξ4, ξ5, ξ6 。

        请注意,每个块 block 包含四个卷积层,后跟一个批量归一化层和ReLU [27]。我们使用β = 0.99的EMA 作为目标网络的每个块 的默认库[26],同时保持所有其他部分与在线网络的相应部分共享权重,即β = 0。

        我们还考虑在整个网络的开始处将EMA应用于非常小的部分的情况,这里我们选择主干的第一卷积层,即Conv1。有趣的是,我们发现靠近编码器输入端的部分对性能的影响最小,而编码器的后面部分影响更大

        如图4a)所示,Conv1中的EMA,网络的第一部分给出43.07%的精度,这几乎类似于不应用EMA的情况,精度为43.48%。EMA对最终层的影响不断增加。这里,将EMA应用到最后一层,即只有两个FC层的投影仪,可以带来从43.48%到59.61%的显著改善,这几乎与将整个深度编码器中的EMA更新62.01%的基线相当

        这种现象可以归因于这样一个事实,即 网络的早期部分 与 更新更快的在线网络共享权重 以帮助从输入中学习最新信息,而 后期的最终部分 需要 减慢网络更新速度 以使训练更稳定

        我们通过下面 分析每个块的梯度 来详细说明这种现象。我们还研究了编码器某些部分的每种组合对 EMA 的影响。在 Block4+projector 上应用 EMA 的效果 与 projector上的 EMA 相当结合 Conv1 和 四个块(等于主干)可以提供与基线(整个网络)相当的精度,即分别为 62.17% 和 62.01%,图 4 b)。

        总的来说,SSLs 编码器 最后部分(即投影仪)的动量/EMA  对分类下游任务的性能影响 最大。对于 DINO、MoCo v2 和 ReSSL 等 SSL 方法,与 BYOL 相比,编码器最后部分的 EMA 更加关键,如表 3 和图 4 所示。

         一个自然的问题被提出:为什么 EMA 应用在最后的部分比编码器的早期部分影响更大?


梯度分析。

        在 SSL 框架中,为了简单起见,我们采用了一种 negative-free 方法,例如 BYOL [19] 来执行梯度分析。我们监控网络编码器每个部分的梯度,以找到一些线索来详细说明为什么 EMA 对较早但较晚的部分没有影响或影响很小。对于视觉的观察,我们记录了图 2 中 β = 0 的情况下 整体损失 相对于每个块的输出的l∞−norm梯度大小,其中异常点在训练过程中表现出强烈的不稳定性。

        图 5 清楚地表明,编码器最后部分(即投影仪)中的 幅度梯度 最显著且波动最大较早的部分(例如块 4)具有小得多的梯度幅度并且更稳定。并且,最开始的块,例如块 1、块 2 和块 3,具有最小的幅度梯度并且最稳定

        这一经验观察解释了为什么将 EMA(等式 6)应用于网络编码器的最后部分与网络编码器的前几个阶段相比影响最大。换句话说,在最后阶段 使用 过去学习的权重 来稳定训练,对整个深度网络编码器的影响最大

        根据上述观察,我们还可以额外使用 1) 一种简单的技术,例如 BN [28] 到 投影仪的输出 和 块 4 或 2) 冻结 目标投影仪 以 稳定训练以提高性能 [18]。我们在附录中展示了 在投影仪 和/或 块 4 的输出中使用 BN 的最终阶段投影仪(没有 EMA 到深层主干)中使用 EMA 时的结果可以匹配基线 BYOL [19]。


5. Projector-only Momentum in SSL

动量的双重传播。

        与非基于动量的框架 [11、23] 相比,动量的好处 是以 导致双重前向计算 [19、10、20、21] 为代价的。受我们之前分析的启发,我们提出了 SSL 框架的 projector-only 动量,它仅将 EMA 应用于 projector,同时共享深度骨干网的参数,例如图 1 b) 中的 BYOL。我们的方法 仅在 轻量级的projector 上造成双重传播,其计算量与骨干网(即 ResNet-18 和 ResNet-50)相比可以忽略不计


实施细节。

        该实现基于 SSL 开放库 solo-learn [26]。为了研究动量/EMA,我们考虑了不同的 SSL 方法、数据集和 ResNet 骨干架构。考虑了三个广泛使用的基准数据集,包括:CIFAR-100 [29]、ImagetNet-100 [30] 和 ImageNet-1K [31]。考虑了不同的深度主干(ResNet-18、ResNet-50)。我们遵循评估 SSL [19] 的通用协议。

训练和评估。

        编码器在没有标签的每个数据集的训练集上以无监督的方式进行预训练。迁移能力由分类下游任务 [19、10] 衡量。具体来说,我们通过使用相应的测试集 [26] 在冻结的表示上训练线性分类器来评估预训练表示。分类准确度用作性能指标。附录中提供了 SSL 的更多详细信息和设置。


Projector-only Momentum SSL。

        我们 研究了 EMA 对 基于 EMA 的框架 的每个部分的影响,包括 DINO [20]、MoCo v2 [17]、ReSSL [21] 和 BYOL [19]。表 3 显示,如果 EMA 仅在主干上更新,与 BYOL 不同,所有其他框架的性能都会很差。相比之下,表 3 显示 EMA 应用于目标网络的最后部分,即投影仪,所有 SSL 框架的性能 都与基线相比 具有竞争力

        有趣的是,使用 DINO,仅对projector(3 层)执行 EMA 可以提供 与 需要为整个深度编码器中的每一层更新 EMA 的基线 相同的性能,分别为 ResNet-18、ResNet-50 的 21 层和 53 层。它表明 EMA 到 DINO 编码器的最后部分就足够了,它有助于 减少存储在内存中 用于深层动量主干所需参数的一半,并节省一半前向,同时仍然通过浅层投影仪利用动量的好处(3 层)。与 BYOL [19] 不同,EMA 仅更新到其他 SSL 的主干,见证了性能的显著下降,如表 3 所示。


大规模数据集

        我们在更大规模的数据集中进行了部分更新 EMA 的实验,即图像大小为 224 × 224 的 ImageNet-100 [32](表 6)和 ImageNet-1K [31](表 4)。所有方法都经过训练在 200 个时代。 ResNet-18 和 ResNet-50 分别用于 ImageNet-100 和 ImageNet-1K。表 6 显示结果与 CIFAR-100 数据集中的结果一致。具体来说,我们观察到,对于ImageNet-100的大规模数据集,仅将EMA应用于投影仪,在β = 0.99的情况下,会略微降低准确性,但在β = 0.9995的情况下保持所有SSL框架的竞争性能。

         与74.16%的基准相比,将EMA应用于DINO的投影仪保持了74.22%的竞争性能。对于更大规模的数据集,在 高度激进的EMA(即β = 0.9995) 下,所有方法都出现了大幅下降,而 EMA projector-only仅略有下降,但 仍保持了竞争性能。ImageNet-1K上的结果 与DINO的结果一致,其精度在深度主干上没有EMA的情况下得以保持(表4)。这表明 对于用ResNet的DINO,投影仪上的EMA就足够了。根据学习曲线,如果训练时间更长,即ImageNet-1K的1000个epoch,则 DINO 基线 与 投影仪上带有EMA的DINO 之间的 差距为零。我们在附录中提供了训练趋势SSL框架。


使用更深的主干 ResNet-50 。

        我们保留相同的投影仪并考虑更深的主干,即 ResNet-50(比 ResNet-18 深 3 倍)。使用了两个数据集:CIFAR-100 和 ImageNet-1K。所有方法都经过 200 个 epoch 训练,β = 0.99。使用 ImageNet-1K,我们对 DINO [20] 进行了实验。如表5所示,对于更深的主干网 (ResNet-50),BYOL [19]、MoCo v2 [17] 和 ReSSL [21] 等 SSL 框架显示了与上面研究的主干网 ResNet-18 一致的结果,其中 EMA 到投影仪 无论主干有多深(18 层和 50 层),都可以提供有竞争力的性能

        有趣的是,对于 CIFAR-100 中的 DINO [20],基线更新 EMA 到整个深度编码器(主干 + 投影仪)的性能 低于 只更新投影仪的情况下的 EMA,即 53.04% 对 56.54%。在 ImageNet-1K 中,表4 显示它们的性能几乎相当(67.9% vs. top-1 精度为 67.8%),其中 DINO 需要更新总共 53 层(主干 + 投影仪)的 EMA,而投影仪上的 EMA 只有三层深度


6.计算和处理时间

        在 SSL 框架中,我们发现在使用 EMA projector进行训练时,DINO 是最稳定的方法。因此,我们在 ImageNet-1K 的设置中重点关注 DINO,常用的主干是 ResNet-50。我们基于两个 GPU NVIDIA RTX A6000 测量每个时期的处理时间。

        如表 4 所示,我们的方法 EMA projector 只需要一半的骨干参数(只需减少一半的前向计算开销)并且在每个epoch的处理时间方面显示出显著的效率,同时实现与 DINO [20] 相同的性能。

        具体来说,所提出的 EMA projector 仅更新projector的 3 层的 EMA,并且不再需要转发到主干,即 ResNet-50(深度为 50 层),与传统的 DINO 相比,这是一个优势。请注意,SSL 的核心在于学习具有多重增强的表示,总处理时间可能很快成为负担。我们的分析为未来的自监督学习研究提出了一个潜在的范例,以 解决计算瓶颈,特别是对于硬件资源较少的实验室。


7. Discussion

动量系数。

        如果 EMA 更新非常慢,预计 SSL 框架会提供不希望得到的性能。然而,我们表明即使更新速度极慢,EMA 仍然可以被最大限度地利用以保持竞争性能。我们 考虑两种情况:1)以传统方式 更新整个网络的 EMA,以及 2)EMA 部分更新 网络编码器的唯一最终部分,即projector。我们为所有 SSL 基线设置 β = 0.9995,这足够慢以观察差异。我们发现,随着 EMA 的高度激进更新,所有 SSL 框架的性能都会急剧下降,如图 6a) 和图 6b) 所示。具体来说,与基线相比,ReSSL [21] 降低了 12.20%(从 54.66% 降低到 42.46%),DINO [20] 降低了 19.63%(从 58.12% 降低到 38.49%),BYOL [19] 降低了 7.20%(从 62.01% 降低到 54.81%) %),而 MoCo v2 [17] 下降了 9.30%(从 62.34% 到 53.04%)。

        相比之下,提议的部分 EMA 更新见证了最终准确性的轻微下降,例如 ReSSL、DINO、BYOL 和 MoCo v2 仅分别下降了 3.33%、4.36%、2.07% 和 4.78%。传统 EMA 的性能急剧下降,因为非常高的 β 导致网络学习非常缓慢,以至于 编码器 无法迅速 从新的输入增强中 检索新信息

        相比之下,在新方案中,EMA 只更新projector,同时保持教师和学生的主干权重相同,这可以利用编码器在第一阶段快速学习,同时确保整个目标编码器不会更新得太快 这有助于稳定最终部分以提高性能。

        请注意,考虑到仅对投影仪使用高度激进的 EMA,准确度从基线略有下降,但仍远高于对整个网络使用 EMA 的情况。这表明,对于新方案,EMA 仍然被利用 以 在传统 EMA 方法无法实现的极端情况下 获得优势

        这些实验还表明,与传统的 SSL 方法相比,EMA  projector对动量系数的超参数不太敏感


学习率。

        SSL 编码器 以 适当的小学习率 工作,即 BYOL [19] 使用 η = 1.0 作为 [26] 设置中的最佳参数。随着更大的学习率,即 η = 4.0,BYOL 的性能从基线 62.01% 下降到 58.01% (−4%),如表7 所示。 根据我们上面的分析,编码器中最不稳定的部分来自最终部分,即 projector。我们在训练期间 保持目标网络的projector 冻结,即 β = 1.0,同时在主干中共享参数。我们发现编码器可以以更大的学习率学习得很好。如表7所示,在 η = 4.0 的情况下,保持投影仪固定可以将准确度从 60.27% 提高到 62.32% (+2.05%),这略好于 BYOL。请注意,与我们共享主干但固定投影仪的相比,BYOL 需要双倍的 前向传播到主干动量 的成本


8. Related Works

指数移动平均 Exponential Moving Average。

        EMA/Momentum 已被深入研究以平滑原始序列信号 [33、34、35]。它成为大多数领域实践中广泛使用的技术,包括优化 [36、37、38]、强化学习 [39、40、41]、知识蒸馏 [30、42]、最近的半监督学习框架 [22、 43、44、45] 和 自监督学习方法 [19、10、20、46]。动量被解释为强化学习 [39] 中连续 q 函数的平均值,或 SSL 框架中 用于防止模型崩溃 [20、19、47]。


自监督学习。

        最近,SSL已经在许多领域应用中被广泛研究[48,49,50,51,52,53,54,55,56,57,13,58,59,60,61,62,63,64]。SSL最近成为一个新兴的范式和关键的研究领域,这是由于它与传统的监督学习方法相比具有独特的优势,不需要任何人工监督和昂贵的标记过程,同时在学习下游任务(如分类、分割 和 目标检测) 的表示方面显示出优越的能力[11,65,10,17,18,20,19,66,24,67]。

        在这些开创性的工作中,MoCo [17、18]、DINO [20]、ReSSL [21] 和 BYOL [19] 是在目标编码器中使用 EMA 技术的最先进的 SSL 框架。有几个 SSL 框架,例如 SimCLR [11]、SimSiam [23] 和 Barlow Twin [68] 在其体系结构中不使用 EMA。

        尽管与基于动量的方法 [17、65、20] 相比,这些非基于动量的方法在分类方面,即在 ImageNet-1K [31] 或其他下游任务中,表现较差,但在某些情况下仍会在实践中考虑它们 由于它们的设计更简单,即不需要存储参数 和 动量编码器的前馈 [12]。


9.结论

        在本文中,我们从一个新的角度研究了动量的好处,并表明它对提高性能的实证好处至少可以 部分归因于 稳定性效应。我们揭示了一个有趣的观察结果,即 在 SSL 编码器的后期阶段应用动量的好处明显高于早期阶段,并提供梯度分析来证明这一现象。我们注意到动量的好处是以导致双重前向计算为代价的。受上述观察的启发,我们提出了一种 projector-only 的动量方法 来保持动量的优点,同时减轻其在 SSL 框架中的缺点,这是未来研究 解决 SSL 在计算成本方面瓶颈 的潜在方向。

        尽管如此,在这项工作中,我们专注于使用 ResNet 主干分析图像分类的动量行为。其他复杂的主干,如 ViT 以及其他模式,如文本、音频和视频,也值得研究。我们让它用于未来的工作。

猜你喜欢

转载自blog.csdn.net/YoooooL_/article/details/129193827