Press "Enter" to skip to content

解决SimCLR的最大问题 – 解读BYOL论文

BYOL如何引入了现代自监督学习框架的新SOTA思想。

解决SimCLR的最大问题 - 解读BYOL论文 四海 第1张

SimCLR成功实现了对比学习的思想,并在当时取得了新的最先进性能!然而,这一思想存在根本性的弱点!它对特定增强的敏感性以及需要非常大的批次大小来提供大量的负样本。换句话说,依赖于这些负样本是非常烦人的。Bootstrap Your Own Latent(自举自身的潜在因素)——DeepMind的研究人员提出了一个全新的自监督学习方法,简称BYOL,它实现了一种完全新的训练自监督模型的方法,希望避免表征崩溃!而且令人完全惊讶的是,它竟然奏效了…

所以,让我们回到我们的双视图流程,并考虑另一个避免崩溃的方法。

自监督学习的思想是最小化不同正视图之间的距离,即同一原始图像的变化。

问题在于,我们在两条路径上都训练了同一个网络,它可以只学习预测每个输入的相同常量向量。这被称为表征崩溃。

这是一个疯狂的想法!如果我们只训练一个网络,然后随机初始化第二个网络并冻结其权重,会发生什么呢?!

具有固定目标网络的想法,用于预测在线网络的标签。

这与学生-教师模型或知识蒸馏中的想法基本相同,其中可训练网络称为在线网络,这里的固定网络称为目标网络。这样,在线网络学习逼近固定目标网络产生的预测目标。

但是这到底是怎么回事? 这是胡说八道! 是的,这避免了崩溃,但是在线网络现在只是学习复制随机初始化网络的预测!生成的表征不能好!这是真的!BYOL的作者尝试了这个方法,并在ImageNet的线性评估协议上使用在线网络实现了18.8%的top-1准确率,但是这里有个疯狂的部分,随机初始化的目标网络仅自身实现了1.4%的准确率!这意味着,尽管这一切都没有多大意义,但从给定的表征(称为目标)出发,我们可以通过仅预测目标表征来训练一个新的、潜在增强的表征(称为在线表征)。

这个实验结果是BYOL的核心动机,它是自监督学习的一种新方法,也是现在所谓的“自蒸馏家族”的一部分。同样,我们当然需要在这个实验发现的基础上取得更好的结果,而不仅仅是上述提到的18.8%的top-1准确率。很明显,我们需要对这个简单地随机初始化的目标网络采取一些措施。作者建议目标网络与在线网络具有相同的架构,但使用不同的权重集。目标参数现在是在线参数的指数移动平均值。然而,仔细观察,没有任何防止崩溃的因素!作者在论文中也承认了这一点。在线和目标网络仍然可能随着时间的推移收敛到一个崩溃的表征!

“虽然这个目标允许崩溃的解决方案,例如为所有图像输出相同的向量,但我们通过实验证明BYOL不会收敛到这样的解决方案。”

架构

让我们从这个黑魔法中退一步,把一切重新整合起来,看看BYOL中使用的确切原理图。

在BYOL论文中提出的架构

我们可以在这里看到我们之前讨论过的确切想法!我们有一个输入图像,并再次通过应用两组不同的随机增强来产生两个不同的视图。我们使用两个不同的预测路径,即在线路径和目标路径,它们使用相同的网络架构,但使用不同的参数集。目标网络的参数是在线网络参数的指数移动平均值。更具体地说,我们通过将其先前的参数缩放τ倍并加上在线网络参数缩放1-τ来更新目标参数。

用于更新目标网络参数的指数移动平均值

例如,作者设置τ=0.99,这意味着他们只轻微地改变目标参数,通过将在线参数缩放0.01倍来添加。

损失

由于我们最终不再有对比示例,因此也不需要对比损失。BYOL的损失只是归一化预测和归一化目标投影之间的均方误差。

归一化预测和归一化目标投影之间的均方误差

好吧,这几乎是整个损失。正如您所看到的,在每个分支中,我们使用两个不同级别的输出之间的损失。每个流水线,即在线和目标,都包含以下网络。表示网络f,我们将在下游任务中使用它,以及投影网络g,如SimCLR中已经看到的!在线分支现在还包括一个预测头q,这使得整个架构在在线和目标流水线之间是不对称的。对于损失来说,作者通过一次将视图v通过在线网络传递,将视图v’通过目标网络传递,并第二次交换两个视图来使其对称化。

BYOL的完整损失

这就是BYOL提出的整个方法!

结果和直觉

解决SimCLR的最大问题 - 解读BYOL论文 四海 第8张

使用BYOL训练ResNet50,并在ImageNet上进行评估,当然优于所有其他无监督基线模型,包括我们之前讨论的SimCLR,并且与完全监督模型非常接近!

这并不意味着BYOL总是优于其他模型。

解决SimCLR的最大问题 - 解读BYOL论文 四海 第9张

当在ImageNet上进行预训练并查看不同基准测试之间的迁移学习结果时,我们可以看到BYOL并不总是表现最好!此外,有趣的是,作者的报告再现了SimCLR结果,这些结果要好于仅从原始论文中拿出来的结果。作者没有进一步阐述这些发现,并且在使用再现的SimCLR和只引用SimCLR结果时并不一致。

但撇开这些,他们与SimCLR进行了更深入的比较!我们希望寻找对比方法(如SimCLR)的替代方法的最重要的原因之一是减少对负样本的依赖带来的敏感性。

解决SimCLR的最大问题 - 解读BYOL论文 四海 第10张

当涉及到批次大小的影响时,BYOL相对于SimCLR的优越性显而易见!BYOL对较小的批次大小不太敏感,而SimCLR则非常敏感。这是有道理的!将批次大小减小到仅有256个样本时,BYOL的top-1准确率仅下降了0.6%,而对于SimCLR来说,下降了3.4%!将批次大小减小到128个样本时的大幅下降是由于其对批次归一化层的影响。

我们还讨论了SimCLR对应用的数据增强集的敏感性!

解决SimCLR的最大问题 - 解读BYOL论文 四海 第11张

我们可以再次看到,BYOL对重要数据增强的删除不太敏感。最后,仅执行裁剪时,BYOL的top-1准确率下降约13%,而对于SimCLR,下降约28%!正如我在SimCLR文章中已经提到的,SimCLR在裁剪与颜色抖动相结合的情况下对于颜色增强的重度依赖是因为模型在没有颜色增强的情况下只学习简单区分直方图。相反,BYOL受到激励将目标表示中捕获的任何信息保留到其在线网络中以改进预测。换句话说,即使同一图像的增强视图共享相同的颜色直方图,BYOL仍被激励将其他特征保留在其表示中。因此,至少作者认为BYOL比对比方法更能适应图像增强的选择。

作者认为是这样吗?这真的很酷,显然经验上的表现非常出色。但是为什么会奏效呢?为什么它不会崩溃?正如前面提到的,作者没有数学证明来证明这种方法避免了崩溃,但他们对什么有效和什么无效进行了一些经验观察,并对BYOL为什么奏效的几个想法进行了假设。

可以说最重要的一点是添加预测器并确保它接近最优。事实上,作者假设BYOL的目标网络的主要作用是通过训练使预测器接近最优。他们甚至发现,通过使用其他方法使预测器接近最优,可以完全去除目标网络的功能而不会导致崩溃。

让我们试着形成一些直觉!记住,BYOL使用目标网络的投影表示z,其权重是在线网络权重的指数移动平均值,作为其在线预测的目标,使用额外的预测器!这样,目标网络的权重代表了在线网络权重的延迟和更稳定的版本。作者进行了几项消融研究,以对正确组合的EMA目标网络和预测器的重要性形成直觉。

解决SimCLR的最大问题 - 解读BYOL论文 四海 第12张

在左表中,我们可以看到模型在不同EMA计算下的表现。第一种情况,τ = 1,就是我之前描述的实验,其中目标网络是一个从未更新的随机初始化网络。最后一种情况,τ = 0,描述了目标模型是在线网络的精确副本的情况,直接导致崩溃表示。其他情况仅描述对τ参数的最佳搜索。也就是说,后来证实指数移动平均不是必需的。您可以将目标网络直接复制为在线网络。也就是说,如果预测器的更新频率更高或学习率比主干更大,则仍提供训练稳定性,甚至可以在SimCLR中使用并实际提升性能。好的,右表显示了添加负样本(第二行)的影响,这会损害性能(!),以及删除预测器(第三行),从而直接计算在线网络和目标网络的投影表示之间的损失。尽管如此,从理论上讲,所有这些仍然不能完全避免崩溃。这只是使其“非常困难”和“不稳定”。

但好吧,回到正题。我们快要完成了。我们现在已经了解了这个新的自监督学习方法的工作原理。我们已经看过BYOL,它是使用两个神经网络(在线网络和目标网络)的自蒸馏系列的一部分,这两个网络相互作用并从彼此中学习。这种方法的巨大优势是它在不依赖负样本的情况下实现了出色的性能!

那么,我们如何进一步改进这个想法呢?哪种技术已经在机器学习的各个领域中取得了突破性的成果?

[暂停]

对了,就是Transformer。

现在我们终于到了能够理解这个可视化背后方法的时刻!

Self-attention from a Vision Transformer with 8 × 8 patches trained with no supervision. — DINO paper

如果你想了解最近最先进的模型是如何工作的,以及我们可以从中获得哪些见解,请看下一篇文章!我们将介绍Facebook AI Research的Mathilde Caron等人所著名的DINO论文!

如果还没有发布,请别忘了关注我,以免错过上传!

P.S.:如果你喜欢这个内容和视觉效果,也可以看看我的YouTube频道,在那里我发布类似的内容,但会有更多的精美动画!

所有图片均来自BYOL论文,作者使用具有使用权的图片或引用来源图片创建。

Leave a Reply

Your email address will not be published. Required fields are marked *