其他分享
首页 > 其他分享> > 自我监督学习

自我监督学习

作者:互联网

自我监督学习

自监督学习 (SSL) 正在迅速缩小与监督方法的差距。最近,拓宽自我监督学习视野的主要参与者之一 Facebook AI Research (FAIR) 引入了 SEER。 SEER 是一个 1.3B 参数的自监督模型,在 1B Instagram 图片上预训练,在 ImageNet 上达到 84.2% 的 top-1 准确率,轻松超越所有现有的自监督模型 . FAIR 的其他研究人员训练了自监督视觉转换器 (SSViT),并将其与完全监督的 ViT 和卷积网络进行比较,发现 SSViT 学习了更强大的表示 [纸] .

图片来源

尽管最近取得了所有这些突破,但自我监督背后的主要思想并不是什么新鲜事物,而且它已经存在了一段时间,只是名称不同,主要是在无监督学习下。然而,有一个争论是我们应该停止将其视为无监督的,因为它本质上并不是真正的“无监督”。在自我监督学习中,我们确实在监督模型训练,但使用的是自由和创造性的监督信号,而不是人工生成的监督信号。 Word2Vec 是一个非常有趣且新的例子 ,我们训练一个模型来预测一个给定周围单词的单词。这篇论文发表在 ICLR 2013 上,结果在当时被认为是神奇的。本文表明,如果您训练这样一个模型,该模型试图在给定之前和之后的几个词的情况下预测一个词,那么特征提取器会提取具有许多有趣线性关系的特征向量。例如,如果我们调用特征提取器 f(),我们可以证明 f('king') - f('man'') + f('woman') = f('queen')。这些早期结果表明,自我监督完全能够提取语义关系。

确实,监督学习在过去十年中取得了巨大的成功,但我们都知道,我们不能给所有东西都贴上标签。如果我们想要建立一个形成关于世界的通用知识并依赖于其先前获得的关于世界如何运作的背景知识的系统,我们需要比监督学习更大的东西。我们需要建立能够形成某种关于世界的常识的系统,就像人类婴儿一样。正如 Yann Lecun 优雅地说的那样,这种常识是“智力的暗物质”,他认为这可以通过自我监督来学习 这里 .

好吧,如果您还没有足够的好奇心和动力首先进入自我监督学习领域,让我介绍一篇最近的论文,该论文研究并比较了自我监督学习和监督学习在非常不平衡的情况下实现的潜在表示学习设置,我们的训练数据集中每个类的数量不相等。作者对多个平衡和不平衡数据集上的自我监督对比学习和监督学习方法的性能进行了一系列研究。他们表明,与性能下降较大的监督方法不同,自监督对比学习方法即使在数据集严重不平衡的情况下也能稳定地执行。他们进一步的实验还表明,生成平衡特征空间的表示模型比生成不平衡特征空间的表示模型可以更好地泛化。下图可视化了左侧通过监督学习学习的特征空间,右侧通过自监督学习学习的特征空间。数据集是不平衡的,如您所见,监督模型继承了这种不平衡性并学习了不平衡的特征表示,而自监督模型并非如此。本文的作者表明,具有平衡特征空间的模型比具有不平衡特征空间的模型具有更好的泛化能力。

好吧,我认为这足以作为介绍。在本文中,我将介绍一些最新和最成功的方法,这些方法使用自我监督来学习足以胜任下游任务的潜在表示。我打算先介绍不同类别的自监督方法,在每个类别中简要解释一两个方法,然后解释每个类别中的挑战。最后,我将稍微谈谈迁移学习中的自我监督,更具体地说,在领域适应中,并介绍一种最近使用自我监督来更好地适应新领域的方法。

SSL 的类别

粗略地说,当前的 SSL 方法属于以下三类之一:借口任务学习、对比学习和非对比学习

借口任务学习

借口任务学习试图定义创造性的借口任务问题,解决这些问题可以教会模型很好地理解我们数据的语义。接下来我将解释借口学习中最重要的两个工作。第一个获取一个图像的两个补丁,并尝试预测第二个补丁与第一个补丁的相对位置。我已经破坏了另一种方法。它学会解决拼图游戏。让我们看看他们是如何实现目标的!

上下文预测

这张纸 ,作者训练一个 CNN 来对两个图像块之间的相对位置进行分类。一个图块保留在 3x3 网格的中间,另一个图块可以放置在其他可用的 8 个位置中的任何一个。

例如,给定上述两个补丁,作者试图教一个模型来预测 1,即第二个补丁与第一个补丁的相对位置。或者在下图中,我们看到给定这两个图像,模型应该预测 Y=3。

作者通过训练两个具有共享权重的并行基于 CNN 的网络来实现他们的目标。一个网络采用第一个补丁,另一个网络采用第二个补丁作为输入。

网络的架构如上图所示。每个并行网络都尽可能地遵循 AlexNet 架构。然后将 fc6 的输出连接在一起形成 fc7 的输入。输出层 fc9 有 8 个神经元,每个神经元对应 8 个可能位置之一。作者表明,采取 帕斯卡挑战 ,他们的预训练模型击败了从头开始训练的 AlexNet。然而,这可能不是最公平的比较,因为后者没有使用 PASCAL 数据集之外的任何图像,而不仅仅是任何标记图像。

解决拼图游戏

上一篇论文的较新版本 是这张纸吗 ,这更进一步,并使用拼图重组问题作为他们的借口任务。作者认为,解决拼图游戏可以用来教系统一个物体是由零件组成的,以及这些零件是什么。

上图显示了他们倾向于做什么。给定这张老虎照片,他们想从中随机提取一个 3x3 的补丁,随机化瓷砖,并训练一个能够预测每个瓷砖的正确位置的网络。这是通过具有共享权重的 9 个基于 CNN 的并行网络实现的。

作者为每个谜题定义了 64 种不同的排列,例如 S=(8,4,1,9,7,3,6,5,2),并且网络需要预测它接收到的这 64 种排列中的哪一种作为输入。他们表明,他们的方法在 PASCAL 挑战中以高优势击败了上下文预测方法。

对比学习

借口学习的问题在于,通常很难想出一个以良好的特征提取而告终的任务。还有另一类自我监督方法——对比学习——使用不同的方法进行自我监督。对比学习试图为每个输入数据 x 形成正样本,并将 x 映射到一个潜在表示中,其中 x 接近它的其他正配对。这种方法的一个大问题称为崩溃,当模型学习将所有输入映射到相同的嵌入以获得完美结果时,就会发生这种情况。为了避免这种情况,我们还需要每个输入 x 的负样本,尽可能映射到 x 的特征向量。

上面,你可以从中看到一个用于对比学习的简单损失函数 ,其中 z_i 是样本 i 的潜在表示,sim() 是相似度函数,例如余弦相似度。在这个例子中,j 是 i 的正对,通常是通过破坏样本 i 生成的。总之,我们在每批中有 N 个样本,我们为 N 个样本中的每一个生成一个正对,所以我们总共有 2N 个样本。目标是每个样本的潜在表示,比如 z_i,尽可能与它的正样本(比如 z_j)相似,并且远离批次中的所有其他样本及其损坏的版本。因此,当前批次的其余部分及其损坏的 mate 将扮演负样本的角色。

正如您可能已经注意到的那样,这里有很多可能出错的地方。主要问题是我们要如何选择正样本和负样本?例如,在使用腐败产生正样本的情况下,腐败方法的最佳选择是什么?或者批次中的其他样本是否足以成为负样本?这是这些负样本的选择实际上最重要。一个粗心的选择最终可能会导致崩溃,或者损失函数的建模不准确。例如,在下面的演示中,需要仔细选择作为负巴黎的绿点,以便获得对损失函数的良好估计。

这在高维数据(例如图像)中是一个更大的问题,其中一张图像可以通过多种方式与另一张图像不同。找到一组对比图像,涵盖它们与给定图像的所有不同方式,这几乎是一项不可能完成的任务。套用列夫·托尔斯泰的安娜·卡列尼娜的话:“幸福的家庭都是相似的;每个不幸的家庭都有自己的不幸。” 资源 这就是为什么一些研究人员开始寻找新的非对比方法的原因。

非对比法

非对比方法可能是自监督学习中最热门的话题。在这里,我将介绍两种最新的非对比 SSL 方法。一次来自 Facebook AI Research,另一次来自 Deep Mind。

巴洛双胞胎

第一种方法是 FAIR 的 Yann Lecun 研究小组的一项工作,它的名字归功于神经科学家 H. Barlow 将冗余减少原理应用于一对相同的网络。主要思想是 互相关矩阵 一幅图像的两个不同失真版本的潜在表示之间应该尽可能接近相同。互相关矩阵测量一个信号(这里是潜在表示)与另一个信号的关系;这意味着它测量了一个扭曲版本的每个潜在特征与同一图像的另一个扭曲版本的所有潜在特征之间的关系。下面您可以看到 Barlow Twins 的演示。

您可能会问,拥有相同的互相关矩阵有什么意义?好吧,相同矩阵的所有对角元素都是一个,这表明完美的相关性。此外,所有非对角线元素都为零,这意味着没有相关性。事实上,对角互相关矩阵表明,相同维度的所有潜在变量都具有完美的相关性——同一图像的不同扭曲版本的相似表示——并且潜在表示的不同分量之间没有冗余。

BYOL

自带酒水!不,我的意思是引导你自己的潜在表示。这就是 Deep Mind 的研究人员决定将他们的新非对比方法命名的方式。与我在本文中提出的所有其他方法类似,这种方法也利用了两个并行网络。但是这次这两个网络不是对称的,也不是完全相同的。

这两个网络都接收相同的输入图像。然而,他们扮演着非常不同的角色。这两个网络都有一个表示组件和一个将输入图像投影到其潜在表示中的投影组件。但是顶层网络,即在线网络,与底层网络(称为目标网络)相比,多了一个组成部分。这个额外的组件,称为预测组件,接收在线网络的潜在表示作为其输入,并尝试预测目标网络的潜在表示。这两个网络之间的另一个区别是它们的参数是如何更新的。在线网络通过随机梯度下降进行训练。然而,目标网络是使用在线网络的慢速移动平均来训练的。

域适应中的 SSL

SSL 可能有用的问题之一是通用域适应 (UniDA)。在 UniDA 中,我们有来自域的标记源数据集和来自另一个域的未标记目标数据集。源数据集和目标数据集是从不同的分布中采样的,并且它们的类别没有限制。这意味着源数据集中可能存在源数据集中不存在的类,反之亦然。

UniDA 自然地打开了一个发挥创造力的机会,并寻找不同形式的自我监督,这可能在源域和目标域之间的分布匹配或开放类检测中有用,我们想要检测来自仅针对私人课程;我们的源数据集中不存在的类。这就是 Saito 等人的观点。在 (DANCE)[https://arxiv.org/abs/2002.07953] 方法中做。

DANCE 方法背后的思想如下:目标数据应该与源数据聚类,以便标记为已知类之一,或者与其他目标数据点形成新的聚类。为此,应将目标点推向当前类原型或靠近其他数据点。如果我们首先为每个数据点定义相似性分布,就会发生这种情况,其中 p_ij 显示点 i 的潜在表示与 F_j 的相似程度,其中 F_j 是类原型或目标示例的潜在表示。然后我们可以最小化这个分布的熵,以便我们将目标潜在表示推向 F_j。

他们称这个术语为邻域聚类。

作者提出的其他术语也使用熵,但这次是将其中一些与“已知”源类别对齐,同时使“未知”目标样本远离源。这个损失项称为熵分离损失,只有当它与最大熵 (rho) 的一半的距离大于某个阈值 m 时,我们才将其最小化。请注意,p 是目标样本的分类输出。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明

本文链接:https://www.qanswer.top/1610/48593006

标签:样本,自我,网络,学习,监督,方法,潜在
来源: https://www.cnblogs.com/amboke/p/16638000.html