深度神经网络对大量数据的丰富结构进行建模的优势已经导致了计算机视觉、自然语言处理、自动语音识别和时间序列分析的重大突破。然而,深度神经网络的性能对训练数据的大小和质量非常敏感。因此,在过去十年中,已经为监督训练生成了多个带注释的数据集(例如ImageNet [2]),推动了许多领域的进步。不幸的是,标注大规模数据集是一个极其费力、耗时且昂贵的过程。监督学习范式的这种限制严重阻碍了深度学习在现实世界场景中的适用性。
事实上,已经研究了许多普通监督学习的替代方法,例如无监督学习[3],半监督学习[4],弱监督学习[5]和元学习[6]。最近,自监督学习(SSL)确实引起了计算机视觉的相当大的关注(见图1)并在减少人工监督 方面取得了重大进展。事实上,通过从未标记数据中提取代表性特征,SSL算法已经在许多问题上胜过监督预训练[7]。
与此同时,深度学习的成功也引发了遥感领域的显著进步[8]。然而,数据注释仍然是对地观测的一大挑战。在这方面,自监督学习是遥感研究的一个有前途的途径。虽然存在对计算机视觉中SSL的综述[9,10,11,12],但缺少对遥感领域的教学和最新介绍。这篇综述旨在弥合这一差距,记录自监督视觉表征学习的进展,以及迄今为止它是如何应用于遥感的。
Contributions:
对于遥感领域,本文提供了一个全面的自监督视觉表征学习的介绍和文献综述。
本文总结了自监督方法的分类,涵盖了计算机视觉和遥感领域的现有作品。
本文利用ImageNet数据集[2]对已建立的SSL方法的性能基准进行量化,并将分析扩展到三个多光谱卫星图像数据集:BigEarthNet [13]、SZ incoms[14]和So2Sat-LCZ42 [15]
本文讨论自然图像和遥感数据的联系,为遥感和地球观测的自监督学习的未来工作提供见解。
A. 监督:数据vs.标签
在机器/深度学习方法的实际应用中,有很大一部分需要大量的训练数据。幸运的是,在地球观测中越来越多地采用 开放获取 为遥感研究人员提供了大量这样的数据。然而,如此大量的地球观测数据的注释意味着每天都需要频繁更新的重要的人类交互。例如,除了要标记的大量采样数据外,单个大规模数据集可能需要单独的注释,这取决于下游应用。此外,由于自然和人为的变化,感知物理世界的数据集会随着时间的推移而过时。这两个方面都极大地扩大了对地球遥感数据进行标注的努力。
机器学习在遥感领域的另一大挑战是标签噪声。由于遥感图像的质量和各种具体应用的复杂性,在进行大规模数据标注时,很难产生完美的标签。因此,注释的数量和它们的质量之间总是存在权衡:大而嘈杂的标签数据集可能会使模型产生偏差,而少量的高质量标签通常会导致过拟合。
此外,在为没有足够标签的下游任务微调深度学习模型之前,在已建立的基准数据集上执行预训练已经成为一种流行的做法。这个过程通常被称为迁移学习[16]。然而,监督预训练的性能取决于源数据和目标数据之间的域差异。一个良好的预训练模型在相似的数据集上表现良好,但在不同的数据集上就不那么有用了。
上述所有挑战都强调,越来越多的遥感数据与缺乏高质量标签之间的差距越来越大,需要能够利用未标记数据的语料库来学习很容易迁移到多个应用的 有价值的信息的技术。自监督学习为解决这一困境提供了一种范式。
B. 自监督:学习任务不可知的数据表示
图2示意性地描述了自监督学习的基本原理。基于某个自我生成的目标(即所谓的自监督),利用大量未标记的数据对目标进行优化,从而训练模型f,而不需要任何人工注释。通过精心设计的自监督问题,模型f 获得了捕获输入数据的高级表示的能力。之后,模型f 可以进一步迁移到监督的下游任务,用于实际应用。
设计这种自监督最常见的策略通常利用三种目标:(1)重构输入数据x, f(x)→x,(2)预测一个自我生成的标签c,其通常来自上下文信息和数据增强(例如,预测旋转图像的旋转角度),f(x)→c,(3)对比语义相似的输入x1和x2 (例如,同一图像的两个增强视图的编码特征应该是相同的),|f(x1)−f(x2)|→0。
在自监督训练成功的情况下,预训练的模型f 可以迁移到下游任务。与监督预训练相比,自监督预训练的模型具有 利用更通用表示的潜力,并提供了一种范式来缓解监督学习的缺点:(1)预训练不需要人工注释,(2)少量的标签足以在下游任务上取得良好的性能,(3)通过从目标应用收集未标记的数据,可以确保预训练和下游数据集之间很少的领域差距。
链接到半监督学习:
自监督学习算法可以被认为是半监督学习的一部分,半监督学习是机器学习的一个分支,涉及标记和未标记数据。Van Engelen等人[4]基于处理未标记数据的概念和方法,提出了半监督分类算法的综合分类法。在该方案中,自监督学习可以被归类为无监督预处理:在第一步,对无标记数据进行转换,提取特征表示;然后使用标记数据使模型适应特定的任务。
在遥感领域,半监督学习已经得到了很长时间的研究和应用,如高光谱图像识别与处理[19,20,21,22,23,24,25,26,27,28],多光谱图像分割[29,30,31,32,33,34,35]和sar光学数据融合[36]。
链接到无监督学习:
自监督学习也是无监督学习领域的一门学科,无监督学习是独立于人类注释的机器学习方法的一般集合。然而,在各种领域中,自监督学习和无监督学习之间的区别是非常模糊的。本文从方法论的角度对它们进行了区分。传统的无监督算法倾向于利用输入数据的统计性,通过降维[37,38]或聚类[39]生成组。另一方面,自监督学习是一个最近出现的术语,它指的是通过训练模型(例如神经网络),使用从数据本身自动生成的监督信号来学习良好的数据表示。
在遥感领域,无监督学习也被积极应用于各种应用中,如场景分类[40,38,41]、语义分割[42,43,44]、变化检测[45,46]和多传感器数据分析[47,48]。
C. 自监督学习中的性能评价:
为了评估自监督学习方法的性能,通常定义下游任务,以便将预训练的模型f 迁移到特定的应用,如场景分类、语义分割和目标检测。迁移学习在这些高级视觉任务上的表现估计了模型f的泛化性。
在实践中,定量评价常用三个步骤:
• 线性探测(或线性分类):冻结学习到的模型f (冻结编码器)的参数,并在生成的表示上训练线性分类器g。该方法测量了预训练模型f 产生的嵌入是如何线性可分的。
• K近邻(KNN):指对输入测试图像x的K个最近邻在特征空间内进行加权投票。该方法是非参数的,可用于分类任务。
• 微调:用预训练模型f 的参数作为初始化,在下游任务上训练模型。这是最通用的程序,因为它不仅限于分类。
除了定量评估,定性可视化方法也可以用于对编码器f 的自监督训练过程中学习的特征进行洞察。其中比较流行的两种技术是 CNN的核可视化[49,50,51] 和 CNN和ViT的特征映射图可视化[49,52,53]。核可视化绘制f 的第一卷积层的核,并将其与相应的全监督训练的核进行比较。通过监督训练和自监督训练学习到的核的相似性揭示了自监督的有效性。为了分析f 对输入x的空间注意力,特征图可视化显示了f 的隐层特征图。再次将特征图与监督训练的特征图进行对比,以供参考。
Ⅱ. GENERATIVE, PREDICTIVE, AND CONTRASTIVE: A TAXONOMY OF SELF-SUPERVISED LEARNING 生成式、预测式和对比式:自监督学习的分类
本节按照扩展的分类来回顾自监督学习的工作:生成式、对比式和预测式,如图3所示。生成方法学习重构或生成输入数据,预测方法学习预测自我生成的标签,对比方法学习最大化语义相同的输入之间的相似性。虽然现有的一些分类仅仅将自监督方法分为生成式和对比式[10,11],但本文基于监督的处理水平在概念上增加了预测类别 (即生成式方法的自监督是原始输入,而预测式方法的自监督是经过输入处理后精心设计的带有高级语义信息的标签)。采用这种分类也为自监督学习的发展提供了一个历史的视角。在接下来的小节中,将详细介绍计算机视觉中的三种类型的自监督方法,并将它们与遥感工作进行并列比较。
A. 生成式方法
生成式自监督方法通过重构或生成输入数据来学习表示。该类别中一个突出的方法是自动编码器(AE),它训练编码器E将输入x映射到隐向量z = E(x),和解码器D从z重建x = D(z)。虽然E服务于f (特征提取器)的目的,但联合函数D◦E 有助于自监督的损失:||x−D(E(x))||。另一类方法,生成对抗网络(GAN),从博弈论的角度来处理数据生成问题。简而言之,GAN由两个模型组成:生成器G和鉴别器d,生成器以随机向量z作为输入,输出合成样本x = G(z)。同时训练判别器,将训练数据集中的真实样本{x} 与 g生成的合成样本区分开来,使合成数据的分布Pz 逐渐收敛到训练数据集的分布Pz,从而产生真实的数据。普通的GAN不是为特征提取而设计的,但由于形式上的G−1 = f,存在GAN启发的方法来构造表示z。
1) Autoencoder (AE):早在[54]中就引入了Autoencoder的概念,作为人工神经网络的预训练。从概念上讲,自动编码器D◦E是一个前馈编码器-解码器网络,可以在输出层再现其输入。然而,我们可以很容易地想象一个自动编码器失败:应该E = D = 1,自动编码器将学习一个微不足道的恒等映射,D◦E = 1。因此,要求隐向量z保留 x上的信息本身 并不足以产生表达性表示。需要限制来防止这种情况。例如,在早期的实践中,编码器E通常类似于一个瓶颈结构,输入数据的维数被压缩,即dim x > dim z。这将自动编码器与维数降低联系起来。事实上,线性自动编码器与主成分分析(Principal Component Analysis, PCA)[89]之间的松散关系早在文献[90]中就有研究。
限制很小的z 维度并不是防止恒等映射的必要条件。也可以选择构造D◦E,在额外的稀疏约束下使z的维度大于输入的x的维度,建立所谓的稀疏自编码器[55]。其他流行的方法包括:去噪自编码器[56]和变分自编码器(VAE)[57]。
去噪自编码器被训练成能够 增强对数据噪声的鲁棒性。其重建损失被修改为||x−D(E(x + ε))||,其中 ε 是噪声建模术语。
VAE通过编码一个隐分布来解耦编码器和解码器。对于每个输入样本xi,编码器E生成两个隐向量µi和σi,而不是单一的确定性的隐表示zi,它们分别表示一个潜在高斯分布的均值和方差。然后解码器从高斯分布N(µi, σi) ~ exp [−(zi−µi)2/σ2i] 中随机采样一个表示向量zi 来重构xi,(见图4)。
正确定义VAE训练损失所需的数学机制建立在 变分推断 的基础上[91]。然而,在实践中,它相当于添加了一个损失项,迫使隐分布服从单位高斯分布,即对所有训练样本xi, N(µi, σi)→N(0,1)。这可以通过最小化两个分布之间的KL散度来实现:
加上重建项,VAE的总损失为:
其中λ为加权参数。
最近,掩码自编码器(MAE) [58] 在vision transformer 的自编码自监督预训练方面取得了突破,引起了计算机视觉界的极大关注。受去噪自编码器的启发,MAE 遮盖掉输入图像的随机patch,将可见patch发送到编码器,并从隐表示 和 掩码令牌token中重建缺失的patch。这项工作证明了基于transformer的自编码器的自监督视觉表征学习的潜力。
遥感:
自动编码器已被广泛用于学习各种遥感数据的表示,如多光谱图像[92,93,94,95,96,97,98,99],高光谱图像[100,101,102,103,104,105,106,107]和SAR图像[108,109,110,111]。Lu等人[92]提出了一种将 浅加权反卷积网络 与 空间金字塔模型相结合的方法,用于学习输入图像的多层特征图和滤波器。在接下来的步骤中,用支持向量机(SVM)对这些数据进行分类,进行场景分类。Zhang等[93]利用 堆叠去噪自编码器学习图像特征,对不同空间分辨率的图像进行变化检测。在高光谱图像分析中,自动编码器要么被用于预训练[101],要么成为下游常见任务的组成部分,如高光谱图像分类[100]、高光谱图像去噪[112]、高光谱图像恢复[102,113]和高光谱图像解混[103,99,107]。
2)生成对抗网络(GAN):
生成对抗网络[59,114]提出了对抗训练框架——一种由极大极小优化[115]决定的策略。GAN训练可以被视为两个玩家的游戏:生成器G从随机隐向量z生成假样本x = G(z ),鉴别器D旨在区分x和真实数据样本x。
当鉴别器的输出被解释为概率分布,即D(x)∈[0,1]时,GAN-loss被广泛采用的一种统一形式为:
其中x代表真实样本,G(z)代表虚假样本。在训练过程中,对G进行优化,使其对任意z达到最大D(G(z))来欺骗鉴别器,而对D进行调优,使伪数据 达到最小D(x),对真实数据x达到最大D(x)。相应地,G和D的参数同时被调优,分别达到LGAN的最小和最大。
与z = E(x)的自编码器相反,GAN的隐表示z 通过生成器的逆G−1隐式建模。为了近似估计G−1 并对给定的样本 x 得到 z,可以使用对抗性自动编码器(AAE)[60]。对于真实的样本x, G得到一个(训练后的) 自编码器D◦E 的z = E(x)。鉴别器有助于通过区分假x = G(z)从真实的样本~ x = G(E(x))。一旦G,D和D◦E同时优化,E可以将数据点x 编码为学习到的表征z。
为了使GAN的训练方案更加对称,提出了 BiGAN[61,116]和ALI[117]。如图5所示,除了通过G生成假数据x = G(z)外,编码器E还生成隐空间表示-z = E(x)。训练一个鉴别器D = D(x, z)来区分伪元组(x, z)和真元组(x, z)。
遥感:
虽然基于GAN的遥感方法很少用于自监督的预训练,但有一些工作倾向于将这种方法集成到目标应用中。Zhu等人[118]提出了探索GAN在高光谱图像分类方面的潜力的第一项工作。Jin等人[119]提出使用 对抗性自编码器 进行无监督的高光谱解混。Hughes等人[108]提出了一种基于GAN的框架,从给定的图像生成 相似但新颖 的样本。随后,这些被定义为硬负样本,以匹配来自雷达和光学传感器的图像。此外,用变分自编码器 替换GAN的生成器分支 可以提高负样本的质量。在另一项研究中,Alvarez等人[120]使用GAN的鉴别器D进行 二进制变化检测,同时对生成器G进行优化来 诱导未改变样本的分布。Walter等人[121]对基于图像特征相似度的BiGAN方法进行了遥感图像检索实验并对其性能进行了评价。Cheng等人[122]在防御框架中提出了用于遥感图像场景分类的 扰动搜寻GAN。Ozkan等人[123]提出利用Wasserstein GAN loss来优化多项式混合模型进行高光谱解混。
B. 预测式方法:
虽然大多数生成方法执行像素级的重建或生成,但预测式自监督方法是基于自动生成的标签。事实上,有人可能会说,能够生成非常高维的数据点,比如图像,对于学习下游任务的有用表示来说并不是必要的。相反,人们可以专注于预测数据的特定属性,这是预测式方法背后的一般思想。为此,所谓的前置任务得到了利用。预测方法首先为数据集设计一个合适的前置任务,准备自生成的标签,并训练一个模型来预测这些标签和学习数据表示。
预测式自监督学习针对的是与执行像素级重建的生成方法相关的两个可能的缺点:(1)像素级损失函数可能过于关注低级细节,而在实践中,这些细节对人类识别图像内容是无关的,(2)基于像素的重建通常不涉及对图像理解很重要的像素-像素(远程)的相关性。假设为网络提供相关的高级前置任务,网络可以学习高级语义信息。
一般来说,不同前置任务的设计 利用了输入数据的不同的上下文信息。根据不同的上下文属性,我们将前置任务分为:空间上下文、光谱上下文、时域上下文和其他语义上下文。
1) 空间上下文:图像包含丰富的空间信息,可用于自监督前置任务的设计。Doersch等人[62]提出了这种方法的第一个例子,从给定的输入样本中提取随机裁剪的图像patch对,预测它们的相对位置。假设在这个任务上做得好需要对场景及其包含的对象有一个全局的理解。因此,一种有价值的视觉表示 被期望提取目标的组成,以推断它们的相对空间位置。
遵循这一范式,文献揭示了多种学习图像特征的方法,以解决日益复杂的空间难题集[63,124,50,125,126]。例如,Noroozi等人[63] 利用随机排列的图像块构建了一个拼图游戏。然后对网络进行训练,以预测图像块的正确顺序。然而,给定9个图像块,就有 9!= 362,880 种不同的排列,由于视觉上的模糊性,网络不可能识别出所有的排列。为了限制排列的数量,我们使用汉明距离[127]来挑选一个具有显著多样性的排列子集。借用信息理论,这里的汉明距离本质上是测量 为了恢复图像所需的 最小图像块排列数量。基于该方法的进一步工作试图通过 引入其他图像的图像块[50,126],并扩展到更大尺寸的拼图[125],来改善拼图的基线[124]。沿着这条线,需要考虑的一件重要的事情是,如果粗心地设计,模型可能会利用边缘等低级细节作弊。
另一组基于空间上下文的前置任务利用输入图像的几何变换。其中,预测旋转角度[49,128]和图像修复[64,129]是流行的方法。在[49]中,输入图像通过四个独立的旋转角度进行变换,然后作为网络预测的标签。[64]从网络的输入中剪切一个patch以进行恢复。我们注意到,这组图像修复策略也与生成式自监督方法密切相关——如图II-A所示。
遥感:
赵等人[130]提出了一种多任务框架,该框架同时从 旋转前置 和 场景分类中学习,以采用半监督视角提取任务特定特征。Zhang等人[131]提出从旋转的SAR探测目标序列中预测一组旋转角度,用于目标检测。Singh等人[132]利用图像修复作为语义分割的前置任务,主张前置任务与下游任务的空间相关性。在[133]中,作者将 相对定位 和修复 作为遥感场景分类的前置任务。这项研究增加了一个对比的自监督组成,称为实例辨别,我们将在下一节讨论。纪等人[134]通过将两个前置任务结合到训练中来解决少样本场景分类问题:旋转预测和对比预测。额外的对抗模型扰动项也用于正则化。
值得注意的是,拼图游戏很少用于遥感。潜在的情况是,空中影像中的空间相关性不太重要。事实上,平移不变性在城市区域的街区、水面和许多其他种类的自然场景(沙漠、森林、山脉等)中是突出的。
2)光谱上下文:
光谱信息是前置任务设计的另一个基础,其灵感来自于计算机视觉中的图像着色。Zhang等人[65]提出了此类任务中的第一个:自监督网络通过在CIELAB颜色空间[136]中 以其他通道作为输入 来预测光谱通道 来学习 通道特定的表示。结果表明,颜色空间的有效性源于根据人类的感知进行编码:两点的距离反映了视觉上感知到的相应颜色的变化量。该工作进一步扩展到色彩/色度颜色空间,并利用逐像素颜色直方图进行更好的表示学习[137]。这两项工作学习的是单个通道(灰度强度)的表示,而[138]提出了一种跨通道表示学习方法。利用两个子编码器提取独特的颜色通道表示,然后串联起来提供全通道表示。Larsson等人[139]提出将图像着色的系统分析作为前置任务。
遥感:
由于遥感图像包含超过标准RGB颜色空间的光谱波段,可能不存在基于计算机视觉建立的方法对多/高光谱领域的直接扩展。事实上,随着光谱分辨率的增加,遥感数据会留下地球表面物理特性的细微细节。因此,设计与光谱波段有关的前置任务是一项需要科学谨慎对待的微妙工作。Vincenzi等人最近建立的一项研究[135]提供了利用光谱上下文进行自监督学习的初步尝试(图7)。与自动编码器类似,它预测了 来自多光谱波段的场景的 CIELAB编码的 RGB图像,用于提取表征zs。与此同时,在ImageNet上预训练的第二个编码器从RGB图像生成表示zc。下游分类任务微调相应的线性层Ls/c,使最终预测为 [Lc(zc)+Ls(zs))]/2。Wu等人[140]通过训练模型来预测经典非线性流形嵌入方法(如LLE) 生成的低维表示,使用自监督学习进行高光谱降维。
3)时间上下文:
在其他内容中,时间上下文非常重要,例如在视频理解中。如果没有剪辑,镜头显然带有帧与帧之间的时间相关性。与空间和光谱预测方法相似,时间前置任务可以通过两种方式设计:(1)调整帧的时间戳以使神经网络预测正确的序列,(2)屏蔽一个或多个帧以使神经网络预测缺失的帧。
在自监督学习中,缺失帧预测 通常是从一段短视频片段中 估计未来的快照。由于LSTM[127]或LSTM变体 建模时间动力学的优越性能,因此在现有的视频数据时间相关性编码方法中占主导地位[141,142,143]。
自监督学习中的帧顺序预测可以进一步分为两种不同的方法:(1)时间顺序验证[144,145,146,147],以及(2)时间顺序识别[148,149,66]。前者相当于二元分类,不管帧序列是否按时间顺序排列,而后者通过明确地给一组给定的帧分配时间戳来超越。
理解视频需要注意的一件重要事情是,镜头数据的有效自监督训练 可能涉及各种预处理步骤。例如,视频的帧对于理解事件可能具有不同的重要性。沿着这一思路,帧采样策略在提高时间前置任务的性能方面发挥了重要作用。Misraet等人[144]提出了一种代表性的方法,即从具有显著运动的帧中采样视频记录,如光流的幅度所示[150]。
遥感:
尽管前景看好,但基于卫星的视频记录在遥感中还不常见。然而,遥感数据的时间戳对于 变化检测 或 裁剪crop类型分类 等应用非常重要。Dong等人[151]通过时间上的一致性 量化时间上下文,提出了一种用于 遥感变化检测 的自监督表示学习技术。该模型得到优化,以识别同一地理空间区域的两个快照中的样本patch。识别网络(快照一 与 快照二)旨在 用G生成自监督的数据表示 模仿生成性对抗网络的鉴别器D,如第II-A节所示。该方法为变化检测产生改进的、稳健的区分。Yuan等人[152]提出了一种基于transformer 的卫星时间序列分类 自监督方法。通过预测给定像素的整个时间序列的 随机污染的观测值,模型被训练为 利用卫星时间序列的 固有时间结构 来学习通用的 光谱-时间表示。这项工作在[153]中得到了进一步的改进,其中要求网络 回归掩码patch的中心像素,以进行基于patch的表示学习。
4)其他语义上下文:
除了上述三种上下文外,还有其他的语义上下文,可以使用上述上下文的综合信息。Noroozi等人[67]提出了一种人工监督信号,该信号基于从输入图像中 计算视觉元素 和 裁剪片tiles中原语primitive的总和。Jenni等人[68]提出了一种基于 以对抗性方式 发现和预测artifact 伪像的自监督学习方法。为了生成带有伪影artifact的图像,作者预训练了一个大容量的自编码器,然后实施一个损坏-修复策略。最后训练一个鉴别器来区分伪像图像,并预测在损坏和修复时该特征中的哪些条目被丢弃了。
多传感器 或 多模态自监督学习收集另一组语义上下文。Owens等人[69]提出预测与视频帧相关的声音的统计概要。通过定义明确的声音类别,作者将这个视觉识别问题公式化为一个分类任务。Ren等人[154]训练了编码器-解码器网络来 从合成图像 预测深度图、表面法线图和实例轮廓图,并且训练了鉴别器网络来区分来自合成图像和真实图像的特征。
随着各种前置任务被证明对自监督表征学习有用,也有一种将不同的前置任务聚集在一起的趋势。在[155]中可以看到一个直接的例子,其中作者研究了四个自监督任务的组合:相对位置[62]、着色[65]、范例exemplar[156](从单个图像的增强视图 创建伪类pseudo-class 并预测该类,这是一种对比方法,将在下一节中讨论)和 运动分割[157](网络学习对单个帧的哪些像素将在后续帧中移动进行分类)。研究表明,组合自监督的任务通常会提高表现,并导致更快的训练。
遥感:
由于遥感数据和计算机视觉领域中研究的普通图像之间的差异,设计遥感特定的前置任务也有很大的潜力。Hermann等人[158] 提出预测不同的视图(姿态、投影和深度)以及 重建单目深度估计的输入。高等人[159]提出训练模型,实现从一个频带到其相邻低频带的包络数据外推。He等人[160] 提出用连续缺失的痕迹 重建受损的地震数据,其中 伪标记是从观测数据的未受损部分自动创建的。Ayush等人[161]设计了一种基于 预测输入图像地理位置 的前置任务。李等人[162]使用了GlobeLand30 [163],这是一种全球土地覆盖产品,将地球分为不同的区域,包括10种不同的土地覆盖类型。通过将输入图像的地理位置与来自GlobeLand30的土地覆盖图对齐,输入图像的土地覆盖类别 被用作自监督学习的前置任务。然而,还必须注意的是,像地理位置本身这样的前置通常太简单而不能学习良好的表示,因此它们经常被用作自监督学习的辅助任务(如上面的两个例子)。总之,如何设计或整合一个合适的前置任务仍然是一个有待探索的重要研究课题。
C. 对比式方法
预测性自监督学习的性能在很大程度上取决于一个好的前置任务,这通常很难设计,甚至可能导致 pretext-specified 前置特定的表示,降低网络的泛化能力。为了解决这个问题,对比方法开始发挥作用,让网络更自由地学习不依赖于单一前置任务的高级表示。顾名思义,对比法通过对比语义相同的输入(例如,同一图像的两个增强视图)并将它们推到表示空间中的附近来训练模型。因此,通过设计,对比法通常遵循一种常见的Siamese式结构设计。图8中提供了与生成方法和预测方法的并排比较。
然而,仅仅加强 输入对之间的相似性 很容易导致不重要的解决方案。事实上,constant mapping 常数映射将是该问题的有效解决方案,因为每对输入将具有相同的表示,从而具有最大的相似性。这种现象通常被称为模型崩溃,在SSL文献中已经提出了许多解决方案来减轻它。事实上,根据如何处理模型崩溃,人们可以形成对比自监督学习的子分类:负采样、聚类、知识蒸馏和冗余减少。
1)负采样:
避免模型崩溃的一个基本策略是 包含和利用不相似的样本,使其同时具有正样本对和负样本对。这是第一个被用于对比表征学习的策略。对于任意数据点 x (锚),编码器 f 被训练为:
其中x+(正样本)是相似于x的数据点,x−(负样本)是不同于x的数据点,sim表示度量 f 编码的两对特征之间相似性的指标。正样本需要以 保留锚点x语义的方式生成(例如,使用数据增强)。另一方面,负样本来自数据集中的其他数据点。直觉是,为了 为视觉上不同 但语义上相似的输入 输出相似的表示,同时排斥嵌入空间中的负样本,网络必须学习输入数据有用的高级表示。经过预训练后,编码器f 可以进一步迁移,提取下游数据集的代表性特征。
基于Eq. 4的通用目标,已经发展了许多方法,其中最早的工作[70,164,165]提出了 使用max-margin 方法来 分离正样本和负样本 的三元组损失:
其中x, x+, x−分别代表锚,正样本,负样本。Noroozi等人[67]通过 解决额外的借口任务:计算 tiled平铺的patches 的视觉基元,扩展了这个三元组方案,以获得更好的迁移学习性能。
受噪声对比估计(NCE)[166]和 word2vec[167,168]的启发,Oord等人[71]通过引入 具有InfoNCE loss 的对比预测编码(CPC),开始了另一组负采样对比方法:
其中N是样本数,分母由1个正样本和N-1个负样本组成(见图9)。这其实是 N-way softmax 分类器的交叉熵损失,该分类器对正样本和负样本进行分类,点积作为方程4 中的评分函数。 以一段时间序列为例,连续的时间戳为正样本,而从其他场景中随机采样的片段为负样本(见图9)。这项工作在[169]中专门针对图像识别进行了进一步改进。
InfoNCE 损失也与互信息有关,因为 最小化 InfoNCE 损失可以看作是 最大化 f(x) 和 f(x+) 之间的互信息的下限 [170]。这架起了与 CPC 并行出现的基于互信息的对比学习的联系。例如,深度信息最大化 (DIM) [72] 通过 对 一对全局特征和局部特征是否来自同一图像 进行分类 来学习图像表示。全局特征是卷积编码器的最终输出,局部特征是编码器中间层的输出。通过增强 增强多尺度 DIM (AMDIM) [171] 中 正对的关联 进一步改进了这项工作,其中正样本是从输入图像的增强视图中采样的。
一些进一步的经验证据 [172] 声称,上述模型(最大化互信息)的成功只是松散地与互信息相关联。相反,互信息估计器的上限导致病态和较低的性能表示。因此,应该更多地关注 编码器架构 和 与度量学习相关的负采样策略[173]。沿着这条线,实例-实例对比学习丢弃了互信息,直接研究不同样本的实例级表示之间的关系。一个原型工作是实例判别(InstDisc,见图 10)[73],它扩展了带有 非参数 NCE 损失的exemplar [156] 的想法(都利用实例级判别)。事实上,互信息和实例判别都对表示学习很有用,进一步的工作倾向于将它们隐含地结合起来。
对于负采样的对比方法,主要有两个问题需要考虑:(1)比较什么; (2) 如何选择正负对。尽管不同的方法在对比级别上略有不同(主要是上下文级别,如 CPC [71] 和 DIM [72] 或实例级别,如 InstDisc [73]),但要比较的通常是正/负样本的编码特征 f(x)。正/负样本的选择会导致一系列不同的方法。虽然 CPC [71] 和 DIM [72] 将来自同一输入图像的特征定义为正对,将来自其他图像的特征定义为负对,但 AMDIM [171] 通过从输入图像的增强视图中采样扩展了正样本的选择。对比多视图编码 (CMC) [174] 将这一想法扩展到一个图像的几个不同视图(深度、亮度、亮度、色度、表面法线和语义标签),并将另一个不相关的图像采样为负样本。 InfoMin [175] 研究如何选择最佳视图进一步改进了这项工作。此外,米斯拉等人[74] 提出了 前置不变表示学习(PIRL),在预测性自监督学习中使用前置任务来转换输入图像并让模型学习不变性。
对比方法倾向于使用更多的负样本更好地工作,因为可能更多的负例可能更有效地覆盖底层分布。然而,负样本的数量通常受限于 mini-batch 的大小,因为梯度会通过正样本和负样本两者的编码器流回。因此,更大的 mini-batch 更可取,但这反过来又会 受到硬件内存限制。一种可能的解决方案是维护一个单独的字典,称为内存库,它定期 用最近的样本 存储和更新样本的嵌入。内存库包含数据集 X 中每个样本 x 的特征表示 mx。表示 mx 是在先前时期计算的特征表示的指数移动平均值。它可以在不增加批量大小的情况下,用它们的内存库表示替换负样本 mx−。 PIRL [74] 和 InstDisc [73] 是使用内存库来提高性能的两种代表性方法。
然而,在训练期间 维护记忆库可能是一项复杂的任务,因为 (1) 更新记忆库中的表示可能在计算上很昂贵,因为表示在几次传递中很快就会过时; (2) 存储库中的表示总是比当前编码落后一步,这可能会带来不必要的不匹配。为了解决这些问题,内存库在 MoCo [75] 中称为 动量编码器 的单独模块取代。动量编码器 生成一个字典作为编码键的队列,当前小批量入队,最旧的小批量出队。字典的键是在训练期间 由batch中的一组数据样本动态定义的。 MoCo 还抛弃了传统的端到端训练框架,基于查询编码器更新动量编码器(图 11):
其中 m 是动量系数,k, q 分别代表key 编码器(动量编码器,无反向传播)和查询编码器(反向传播)。因此,它不需要训练两个单独的模型,也不需要维护内存库。
基于以前的工作,Chen 等人 [76] 提出了对比学习的里程碑:视觉表示对比学习的简单框架(SimCLR)。 SimCLR 遵循端到端的训练框架,选择了 8196 大的批大小 来处理 负样本数量的性能瓶颈。 SimCLR 的主要贡献在于,它通过引入 10 种形式的数据增强来说明 硬正采样策略的重要性,并为大多数进一步的工作提供了标准的数据增强方案(见图 12)。 SimCLR 还为对比学习提供了一些其他实用技术,包括 表示和对比损失之间的额外可学习非线性变换(投影头)、加倍负样本和更多训练步骤。遵循 SimCLR 的策略,MoCo 的作者提出了改进版本的 MoCo-v2 [78],通过改进数据增强、添加投影头和适应学习率的余弦衰减。作者还提出了一个transformer 版本 MoCo-v3 [77],将编码器的 ResNet [17] 主干替换为vision transformer [18]。同时,SimCLR 的作者将他们的模型改进为第二版 SimCLR-v2 [176],以便在使用蒸馏的半监督学习中获得更好的性能,具有更大的编码器网络、更大的batch size 和更深的投影头。
遥感:
虽然对比自监督学习相对较新,但对比损失在遥感中的广泛使用 [178、179、180、181、182、183] 可以追溯到 [184],其中作者在 CNN 特征上施加了一个 监督对比正则化项,用于遥感场景分类。第一个利用对比学习进行 遥感图像表示学习的自监督工作是 Jean 等人提出的 Tile2Vec [177]。与 CPC [71] 类似,这项工作也受到 word2vec [167, 168] 的启发。作者在三个tiles上训练了一个卷积神经网络,其中每个三元组 由一个锚tile ta、一个地理上接近的相邻tile tn 和一个更远的遥远tile td 组成。三元组损失用于在特征空间中 将相邻图块移动的更近 并将遥远的图块移动的更远。荣格等人[185] 后来将三元组损失重新表述为二元分类损失,并添加了未更新的全连接层以提高鲁棒性。伦斯特拉等人[186] 提出了三元组损失和二元交叉熵损失(正对作为 1,负对作为 0)的组合,用于自监督变化检测。受 DIM 的启发,Li 等人[187]提出了一种用于高光谱子空间聚类的深度互信息子空间聚类(DMISC)网络。侯等人[188] 依靠对比学习,遵循类似于 SimCLR 的设计,在单个场景上预训练 HSI 分类模型 并 减少对密集注释的需求。通过光谱-空间特征提取 对未标记的像素使用对比学习,随后是微调阶段。同样,赵等人 [189] 也将 SimCLR 应用于 HSI 分类,以非常有限的标签显示有希望的结果。在同一行的作品中,朱等人 [190] 利用多尺度特征提取方法 利用 SimCLR 进行 HSI 分类。浦宏等人 [191] 利用 MoCo 在高光谱图像中进行溢油检测。值得一提的是,所有这些与高光谱数据相关的工作都依赖于 简单的空间和光谱增强(例如,随机裁剪、高斯噪声等)来生成视图。我们认为在这个方向上还有改进的空间。
Jung等人[192]将 tile2vec的采样思想 与 SimCLR的对比架构相结合,利用三个相邻tile的平滑表示作为正样本。Montanaro等人[193]提出使用SimCLR进行编码器的表示学习,使用扰动不变自编码器进行解码器的分割训练,以执行土地覆盖分类。Scheibenreif等人[194] 使用SimCLR和Swin Transformer,并通过对比 光学Sentinel 2和SAR Sentinel 1patches,解决了土地覆盖分类和分割问题。Stevenson等人[195]提出 使用SimCLR 进行激光雷达高程数据的表示学习。Kang等人[196]定义了空间增强标准,以揭示土地覆盖tiles之间的 语义关系,并使用MoCo进行对比自监督学习。李等人[197] 在常用的全局对比损失 (不同图像之间) 的基础上 增加了一个局部匹配对比损失(图像内的patches 之间),以学习丰富的像素级信息 用于语义分割。上述所有方法都考虑了遥感图像的空间上下文,并在此基础上建立正/负对。除了这些方法,对比多视图编码(CMC)在[198,199]和[200]中 用于多光谱和超光谱表示学习,季节性对比(SeCo)在[201]中提出,以利用时间(季节)信息来创建不同的视图。Heidler等人[202]提出了三元组损失 和 所有可能配对(称为批量三元组损失)的组合,用于视听多模态自监督学习,Ayush等人[161]将对比学习和预测学习相结合,提出了MoCo-v2 [78]和地理位置的组合,作为更好地 地理相关图像的表示学习的前置任务。关等人[203]提出将 对比NCE损失 和 掩码图像建模 集成用于跨域高光谱图像分类。
2)聚类:
回溯到最早的无监督学习算法之一,这一系列基于聚类的自监督方法通过使用聚类算法在嵌入空间中将相似的特征分组在一起来学习数据表示。在监督学习中,这种拉近过程是通过标签监督完成的;然而,在自监督学习中,我们没有这样的标签。为了解决这一问题,DeepCluster[51] 提出了迭代利用K-means聚类产生伪标签,并要求判别器预测标签。这也是基于聚类的自监督学习的第一个工作。
自标记[80]和局部聚集[79]进一步拓展了基于聚类的方法的边界。与DeepCluster[51]一样,局部聚集和自标记也使用迭代训练过程,但每次迭代中的具体过程明显不同。在自标记中,代替K均值聚类,解决了最佳传输问题以获得伪标签。DeepCluster将所有示例划分为相互排斥的聚类,在局部聚集中,与DeepCluster的聚类步骤不同,该方法为每个示例分别识别邻居,从而允许更灵活的统计结构。此外,局部聚集采用了一个 直接优化局部软聚类度量 的目标函数,不需要额外的读出层,只需要在特征表示训练的基础上进行少量额外计算。
尽管基于聚类的自监督学习早期取得了成功,但与后来 基于实例判别的方法(如SimCLR[76]和MoCo[75])相比,两阶段训练范式耗时且性能较差,基于实例判别的方法 摆脱了缓慢的聚类阶段,并引入了有效的数据增强策略来提高性能。鉴于这些问题,DeepCluster[51]的作者将 在线聚类 和 多视图数据增强的思想引入了基于聚类的对比自监督方法,提出了通过在同一图像的多个视图之间交换分配来学习特征(SwAV)[81]。直觉是,给定一些(聚类的)原型,相同图像的不同视图应该分配给相同的原型。同时,设计了一种在线计算策略来加速代码(集群分配)计算(见图14)。基于SwAV,SEER[7]在1B随机图像上训练了具有1.3B参数的RegNetY[204],这首次超过了最佳监督预训练模型。此外,最近的一些工作还为连接对比学习和聚类做出了其他努力,例如原型对比学习(PCL)[82]、拼图聚类[126]和对比聚类(CC)[205]
遥感:
Saha等人[206]提出使用深度聚类和三元组对比学习对多模多时相遥感图像进行编码以进行变化检测。作者进一步在像素级集成了DeepCluster、BYOL和MoCov2,以生成分割图[207]。Walter等人[121]比较了DeepCluster、VAE、clolorization作为前置任务 和 BiGAN用于遥感图像检索。同样,Cao等人[208]提出了VAE、AAE和PCL之间的比较,用于高光谱图像分类。胡等人[209]提出了 基于对比聚类的 高光谱图像 空间光谱子空间聚类[205]。刘等人[210]提出了双动态图卷积网络(DDGCN),提出了一种新的基于聚类的对比损失来捕捉视图和场景的结构。除了对视图进行简单的对比学习外,还通过 在小批量中聚类场景索引 将场景结构添加到损失项中。
3) 知识蒸馏:
另一组对比自监督学习方法基于知识蒸馏[211]。这些方法通常使用 teacher-student 网络(仍然是Siamese 结构),并优化同一输入图像的两个增强视图的相似性度量。非对称学习规则 或 非对称架构 用于在学生网络和教师网络之间传递知识,因此不需要负样本。
Grill等人[83]提出了第一个里程碑,称为BYOL(引导你自己的潜能,见图15),用于基于知识提取的自监督学习。通用架构类似于 MoCo[75],但不使用负样本。结果表明,如果使用固定的随机初始化网络(由于未经训练不会崩溃)作为key 编码器,query编码器 生成的表示仍将在训练期间得到改进。如果将目标编码器设置为 经过训练的query编码器 并迭代此过程,则它将逐步获得更好的性能。因此,BYOL提出了一种与MoCo一样 采用 指数移动平均策略 更新目标编码器的架构,并使用 均方误差 作为相似性度量。此外,BYOL还类似于mean-teacher[212](一种半监督方法,还包括分类损失),如果删除分类损失,该方法将崩溃。为了防止崩溃,BYOL在 在线(教师)网络上引入了一个额外的预测器。(文章中图片是错误的,在线网络应该是teacher网络)
SimSiam[84]对不同技巧 在避免崩溃中的重要性 进行了系统研究,并提出了之前自监督对比方法的简化版本,认为BYOL的附加预测器 有助于但不是防止模型崩溃的必要条件。相反,教师(目标)网络的 停止梯度操作 是使目标表示稳定的最关键组件。此外,作者还指出了SimSiam与其他流行的对比方法之间的关系:(1)SimSiam可以被认为是“没有负样本的SimCLR”;(2) SimSiam在概念上类似于“无在线聚类的SwAV”;(3) SimSiam可以被视为“没有动量编码器的BYOL”。
DINO[52] 进一步探索了具有vision transformer 主干的自蒸馏方案,提出了一种新的先进的自监督学习算法。遵循常见的 teacher-student网络架构,教师网络的输出以 在batch上计算的平均值为中心。每个网络输出K维特征,该特征在特征维度上用 温度softmax归一化,然后用交叉熵损失 测量其相似性。使用 停止梯度 和 动量更新 来提高性能。延伸的工作 EsViT[85]通过 在常用的全局视图级任务之外 引入额外的区域级对比任务 来改进DINO。最近,周等人[86]将 掩码图像建模集成到 具有视觉变换的 对比自蒸馏方案中,提出了使用在线标记器(iBOT)进行图像BERT预训练。
遥感:
郭等人[213]提出将GAN和BYOL相结合,以更好地进行区分表征学习。遵循正常的GAN结构,使用生成器生成假图像,并使用鉴别器将其与真实图像区分开来。通过 将鉴别器视为自监督编码器,将额外的相似性损失与鉴别器损失相结合,该编码器将假图像和真实图像编码为类似BYOL的Siamese 网络的两个输入视图。此外,提出了 在生成器和鉴别器中 使用 门自注意力和金字塔卷积。陈等人[214215]利用 Siamese ResUNet 从不同模式(SAR和光学)中提取相关表示,并通过 shift 变换 学习 像素级特征表示。Hu等人[216]使用transformer作为编码器主干,BYOL作为高光谱图像分类的基线结构。董等人[217]使用SimSiam进行 基于ViT的 PolSAR图像分类。王等人[218]利用BYOL进行SAR船舶检测。Jain等人[219]通过使用BYOL对比SAR和光学图像来进行预训练。王等人[220]提出了DINO-MM,这是一种带有视觉变换器的联合 SAR-光学 表示学习方法。遵循DINO这一主要的自监督机制,作者引入了RandomSensorDrop,让模型在训练期间看到这两种模式的所有可能组合。张等人[221]介绍了一种自监督的基于光谱-空间注意力的vision transformer (SSVT),其中全局和局部增强视图基于自蒸馏进行对比[222]。Muhtar等人[223]提出了IndexNet,这是一种用于遥感图像分割的密集自监督方法。他们的方法基于BYOL,在图像和像素级进行对比,以保留空间信息。以类似的方式,陈等人[224]提出了一种用于变化检测的像素级自监督学习方法。他们的方法基于SimSiam,目的是加强视图之间的点级一致性。他们还提出了一种背景交换增强,以关注前景。
4) 冗余减少:
自监督学习的 冗余减少 思想来自神经科学。H.Barlow[225]指出,感官处理的目标是 将高度冗余的感官输入 记录到阶乘码(具有统计独立成分的码)中。受这一原则的启发,Zbontar等人提出了Barlow Twins [87],这是一种使用冗余减少的方法,以避免在没有显式(例如MoCo[75]和SimCLR[76])或隐式(例如DeepCluster[51]和SwA V[81])的负样本的对比学习中出现不重要的解决方案。由于主网络架构类似于之前的对比学习,Barlow Twins 的目标函数测量了两个相同网络嵌入 之间的互相关矩阵,该网络馈送了一批样本的 变形版本,并试图使该矩阵接近 单位矩阵(图16)。这导致样本变形版本的嵌入向量 在最小化这些向量的成分之间的冗余时 变得相似。
Barlow Twins的损失函数为:
其中λ是一个权衡参数,C是沿batch维度 在两个相同网络的输出之间计算的互相关矩阵:
其中b是批样本的索引,i,j 是网络输出的向量维数的索引,A,B代表两个不同的视图。
Bardes等人[88]借鉴了Barlow Twins的 去相关机制,提出了一种新的 基于冗余减少的自监督方法VICReg(variance-invariance-covariance regularization 方差-不变性-协方差 正则化)。VICReg 遵循常见的对比学习架构,通过 沿批次维度引入方差(约束标准差的铰链损失)、跨不同视图的不变性(均方欧几里得距离)和 沿特征维度的协方差(惩罚 嵌入的协方差矩阵的非对角系数),避免了琐碎的解决方案。
遥感:
由于基于冗余减少的算法(Barlow Twins[87]和VICReg[88])相对较新,因此只有在遥感领域使用这些方法的作品。Marsocci等人[226]提出在连续学习环境中 使用Barlow Twins 在避免灾难性遗忘的同时,在一组异构数据集上预训练模型,同时。他们的方法在分割问题上进行了评估。Ait Ali Braham等人[227]在两阶段方法中 使用BarlowTwins进行少量HSI分类。他们提出了两个 成对采样策略,用于 像素 和 patch级分类,使用场景中的空间信息 生成正对,以及一组数据增强。他们的结果支持高光谱图像上冗余减少方法的有效性。在下一节中,我们将进一步讨论冗余减少的概念思想,以及它如何有助于遥感图像的理解。我们认为有很大的潜力有待发掘。
Ⅲ. 从IMAGENET到遥感图像:地理空间地球观测数据的自监督学习
自监督学习是一种数据驱动的方法,它在没有人工注释的情况下学习数据集的表示。然而,计算机视觉领域中大多数现有的自监督方法处理 不同于遥感图像的自然RGB图像(例如,ImageNet[2]),并且需要具体考虑 来自各种类型传感器的 各种类型的数据。此外,虽然旨在学习各种下游任务的常见表示,但 可能得益于不同的自监督设计的 像素级、patch级和图像级任务之间存在着不可忽视的差距。本节深入研究了 在不同类型的遥感数据 和 图像/patch/像素级应用上自监督方法的实现。
A、 遥感数据的特点和挑战
遥感数据包含多种模式,例如来自光学(多光谱和高光谱)、激光雷达 和 合成孔径雷达(SAR)传感器的模式,其中 成像的几何形状和内容完全不同[8]。在讨论这些不同模式之前,与自然图像相比,所有数据类型都具有一些共同的遥感特性。
首先,遥感数据是 地理定位geolocated的,这意味着 每个图像像素对应一个地理空间坐标。该信息 为设计自监督的前置任务(例如,预测输入图像的地理位置[161],见图19)以及与地理资源的间接合作(例如,土地覆盖数据库[162])提供了额外的机会。
其次,遥感数据是 大地测量数据,通常对应于特定的物理意义。如果分析不当,这一特性可能会引发数据增强问题。具体来说,数据增强非常重要,尤其是对于帮助网络 学习语义不变性的 对比方法而言,然而,数据增强的粗心设计可能会改变某些物理特性,这些物理特性对识别遥感图像中的目标确实很重要。
第三,遥感图像 通常比自然图像包含更多的目标(例如,与ImageNet中通常包含一个主要对象的图像相比,遥感图像通常包含 多个重复对象)。这种差异会影响 前置任务和数据增强。例如,拼图 对于低分辨率卫星图像的表示学习可能会很困难,旋转可能会影响建筑物的阴影,这对于模型学习相对高度很重要。另一方面,当图像级表示对于自然图像很重要时,patch级和像素级表示对于遥感图像也同样重要(例如,考虑相邻和远处patch的空间关系以采样正/负对[177196],如图13和20所示)。
最后但并非最不重要的一点是,尽管 模式不同,但 时间变量正变得越来越重要。这引起了人们从视频自监督学习中获得灵感的兴趣,然而 遥感图像中的时间戳 与 视频中的帧 以及特殊目标(例如遥感中的变化检测)有很大不同。因此,如何充分利用时间信息 是所有模式中需要回答的常见问题。早期进展如图21所示,其中季节信息用于数据增强[201]。
除了这些重要的共同特征外,下面我们将讨论遥感数据的不同模式。表二列出了最近 根据模态进行分类的 自监督作品。
1) 多光谱图像:
多光谱图像 在电磁频谱范围内的特定波长内捕获,这允许 提取覆盖或超出人类眼睛感知范围的信息。与高光谱成像相比,多光谱成像测量少量(通常为3到15个)光谱带中的光,其光谱分辨率相对较低,但空间分辨率较高。
多光谱图像是最常用的遥感数据,因为它们相对容易获取,并且接近自然图像,从而使人类更容易感知,并方便从计算机视觉领域 进行技术迁移。由于多光谱图像的普及性和与自然图像的相似性,许多自监督方法已直接转移到遥感领域(见图23)。
一般来说,CV中的所有类别的自监督方法都可以扩展到遥感多光谱图像分析,但需要特别注意:(1)如上所述,需要考虑所有模式的遥感数据的共同特征,(2)预测方法(例如,着色)的光谱上下文现在可能有更多的通道信息,可用于设计前置任务,(3)与颜色相关的数据增强(例如,图12所示的颜色失真),这对于对比自监督学习非常重要,需要仔细修改以适应多个通道。
2) 高光谱图像:
高光谱成像也可以捕获整个电磁频谱的图像,但与多光谱成像相比,在空间分辨率上进行权衡后,光谱波段的数量要多得多(多达数百个)。这种非常高的光谱分辨率使我们能够通过光谱分析 识别像素中包含的材料,但另一方面,需要特别注意波段分析。
事实上,在神经网络时代之前,以降维为基本目标的PCA/ICA/聚类 和 基于流形学习的方法在该领域得到了广泛的研究。沿着这条路线,基于深度学习的自监督方法一直专注于 自动编码器 和 三维卷积 来压缩光谱表示。由于 光谱通道数量众多,网络通常采用 单个像素 或 小的patch 作为输入。在这两种情况下,用于 前置任务 或 数据增强的 空间上下文 倾向于 考虑 样本内部 而不是 样本之间的信息(例如,在对比负采样中,相邻的patches 或 像素可以被视为正样本)。
同时,由于高光谱数据的 高的光谱维数,光谱上下文 具有很大的探索潜力。例如,高光谱图像的两个光谱分割部分可以是两个增强视图。
3) 合成孔径雷达(SAR)图像:
合成孔径雷达(SAR)是一种雷达形式,用于创建物体的二维图像或三维重建。由于成像原理,SAR图像在 动态范围、斑点统计、成像几何和复杂域信息 等特征上 与多光谱和高光谱图像有很大不同。虽然SAR图像的自监督学习也是一个新的研究方向,尚未得到广泛探索,但有一个事实使其成为一个有价值的课题:回归型任务普遍缺乏真值。虽然可以使用 模拟器 为监督学习提供训练数据,但这会带来 网络学习过于简化的模型的风险。因此,如果我们可以使用自监督技术从真实SAR数据中学习表示,这将是非常有益的。
此外,通用的自监督方案也可以在特定情况下 轻松地迁移到SAR图像。例如,颜色失真的数据增强不适用于SAR数据,SAR图像的斑点噪声具有类似于高斯模糊的效果,升序和降序可以作为自然增强策略。
4) 多传感器融合:
由于遥感数据的多模态,多传感器融合始终是各种目标的重要任务,这可以受益于多模态的自监督学习。组合多模态输入通常有两种方式:(1)与各种输入通道类似,不同模态可以被视为语义相同输入的增强视图,可用于 设计 前置任务 或 对比自监督学习中的特定数据增强;(2) 两个编码器分别用于对来自两个不同模式的特征进行编码,然后连接在一起,以实现联合表征学习。
关于遥感数据,一个常见的多模式来自光学和SAR图像,这导致了重要的主题 SAR-光学数据融合,最近一些受益于自监督表示学习的工作[214](见图22)和[220]表明了这一点。此外,音频和社交媒体数据等其他模式的融合也引起了越来越多的兴趣[202]。
B、 应用
尽管自监督学习的总体目标是 执行与任务无关的表示学习,这可以有益于各种下游任务,但必须注意的是,不同的自监督可能对不同的任务产生不同的影响。因此,当我们最终针对特定应用时,有必要预先考虑 自监督方法的选择。
事实上,到目前为止,遥感领域中的大量自监督工作都是基于特定的应用。一般来说,各种应用可以分为三类:图像级任务、像素级任务和patch级任务。表二列出了根据应用分类的代表性近期自监督作品。请感兴趣的读者参阅大量关于机器学习和遥感深度学习的综述[8239、240、241、242、243、244],以了解有关常见下游任务和可用数据集的更多详细信息。
1) 图像级任务:
图像级任务对应于期望 识别整个图像或图像块的应用,更侧重于全局知识。最常见的图像级任务是 多光谱[92、130、133、213]、SAR[235]和其他可能模式的 场景分类。场景分类与自然图像分类直接相关,通常是自监督方法评估的 默认下游任务。与上述大多数预测和对比自监督方法一样,图像级任务需要关注全局表示,全局表示可以通过 预测高级前置 或 对比两个增强图像视图的编码特征 来完成。其他图像级任务包括 时间序列分类 [152]和 图像检索[121]。
2) 像素级任务:
像素级任务对应于期望 识别每个图像像素的应用,更侧重于局部细节。最常见的像素级任务是 语义分割[245229132197],这需要 更精细的像素级表示。生成性自监督方法,如自动编码器 和 前置任务/数据增强,如图像修复 和 基于像素的对比学习 可能会有所帮助。变化检测[93、120、151、98、230、199、215、186、186]通常也是一项像素级任务,它利用多时相信息来检测变化的像素。在高光谱图像分析中,大多数任务都基于像素级,包括高光谱图像分类4[106100101]、图像去噪[233]、光谱分离[99]、目标检测[232]、图像恢复[102]和超分辨[105104]。其他像素级任务包括 深度估计 [158,95]和SAR去斑点[110,109]。
3) patch 级任务:
patch 级任务主要对应于 目标检测,位于图像级和像素级应用之间。当需要目标 在图像中的位置和标签时,patch 级任务 受益于全局表示和局部细节。因此,为了在目标检测应用中取得良好的性能,需要考虑 集成表示学习流程[231]。此外,基于patch的 变化检测考虑了图像的tiles(变化或无变化)之间的比较,而不是 由于时间戳之间可能的错位[246] 或 快速预处理以检索感兴趣区域的要求 和 数据通信的有限带宽[247] 等原因 而导致的像素之间的比较。我们注意到,patch级变化检测也可以分为图像级任务。然而,我们把它们放在这里,因为小的patches 和 大的场景之间的相关性更强。
Ⅳ、 A PRELIMINARY BENCHMARK 初步基准
作为图像领域大规模无监督预训练道路上的一个里程碑,对比自监督学习在过去两年取得了重大进展。然而,由于大多数最近有代表性的方法都是在自然图像上开发和验证的,因此缺乏对其在遥感图像上性能的全面研究。因此,为了给遥感界提供一个参考,本节中对几种流行的遥感数据集上的最新对比自监督方法提供了一个初步基准。
A、 方法、数据集和实现细节
1) 方法和数据集:
本文考虑了四种具有代表性的对比自监督方法来提供基准:MoCo-v2[78]、SwAV[81]、SimSiam[84]和Barlow Twins[87],每种方法都代表了现代对比自监督学习的一个子类别:负采样、聚类、知识蒸馏 和冗余减少。本文使用三种流行的遥感数据集进行 预训练 和 评估:BigEarthNet[13]、SEN12MS[14]和So2SatLCZ42[15]。BigEarthNet是一个多标签场景分类数据集,包含590326个大小为128*128的非重叠Sentinel-2图像块,覆盖10个欧洲国家。SEN12MS是一个全球数据集,包含180662 256*256个Sentinel-1、Sentinel-2和MODIS土地覆盖图的三元组。So2SatLCZ42是一个为本地气候带分类而构建的数据集,包含400673 32*32个 Sentinel-1/2 对,覆盖全球42个城市。它们都是大规模数据集,具有不同的地理覆盖范围,并针对不同的任务而构建,这为 评估自监督方法的通用性 提供了坚实的多样性。此外,本文使用 EuroSAT[248]进行迁移学习评估,这是一个小的单标签土地覆盖分类数据集,包含27000个64×64 Sentinel-2 patches。
2) 实现细节:
本文在三个预训练数据集的每一个上 使用四种方法中的每一种 对100个时代的ResNet-18编码器进行预训练。我们的实验仅基于Sentinel-2。在预训练方面,我们使用311667个patch在BigEarthNet上进行预训练;对于SEN12MS,所有图像均裁剪为128×128,以避免原始数据集相邻patch之间50%的重叠;对于So2SatLCZ42(culture-10版本),我们在352366训练分割上进行预训练。在下游评估方面,我们对训练分割进行线性探测或微调,并报告测试分割精度。
我们主要遵循四种自监督方法在官方文件中的默认实现。重要的是,MoCo-v2的队列大小为65536,特征维数为128;SwAV的原型数量为60个;SimSiam中编码器的特征维度为2048,投影头的特征维度为512;三个维度为2048的投影头 用于Barlow Twins。数据增强包括裁剪、灰度、高斯模糊、水平翻转和通道丢弃。为了简单起见,我们不包括主要基准的颜色抖动(会产生崩溃的SimSiam除外,稍后将讨论),因为它是为自然RGB图像设计的。
实验使用了4个NVIDIA A100 GPU,其上的批量大小总计为256。这四种方法的官方网站的链接以及我们使用的所有超参数的详细信息都可以在我们的代码库中找到。在下游任务中,我们为MoCo、SwAV和Barlow Twins 迁移 100个epoch的预训练编码器,并为SimSiam传输10个epoch预训练编码器(之后模型会崩溃)。此外,本文报告了使用 随机初始化 编码器的全监督学习和训练的性能,以进行更彻底的比较。
B、 基准测试结果
1)SSL方法的一般比较:
线性探测评估的一般基准测试结果如图24(a)所示。
第一个结论是,通过从自然图像到卫星图像的纯简单迁移,所有自监督方法都为所有数据集提供了有意义的表示(与随机初始化相比)。利用 来自 标签独立的预训练的冻结特征,我们可以训练更少的参数(例如,一个完整的ResNet-18有10M个参数,而最后一个线性层只有500K个参数),与完全监督训练具有相当的性能。
第二个观察结果是,代表 对比负采样 的MoCo-v2[78]在数据集上通常优于其他方法。这证明了在遥感中 使用负样本 进行自监督学习的鲁棒性和可转移性,这也符合以下事实:遥感界最近的大多数自监督工作 更倾向于将MoCo[75]和MoCo-v2[78]作为基线结构。
第三个观察结果是,与其他方法相比,SimSiam[84]的训练非常不稳定。从图24(b)中的训练曲线可以看出,SimSiam的训练损失在开始阶段迅速显著下降,并在接下来的阶段开始振动。这可以归因于SimSiam的简化设计(如第II-C节所述),这使得模型的相似性匹配任务易于求解。当利用后期epoch的checkpoints 作为预训练权重时,该模型甚至无法击败随机初始化。也就是说,SimSiam在10个时代之后崩溃了。因此,在实际应用中,最好添加动量编码器或其他技巧,以获得更好的性能和更稳定的训练。
2) 数据增强:
在本小节中,对数据增强的影响进行了扩展研究,这些影响已被证明对自然图像非常重要[76]。以BigEarthNet为重点,本文进行了自监督的预训练,考虑了一组丰富的增强:“RandomResizedCrop”、“RandomColorJitter”(仅改变对比度和亮度的简化版本)、“RandomGrayscale”、“RandomGaussianBlur”、“RandomHorizontalFlip”和“RandomChannelDrop”(将一个或多个通道替换为零)。如图25所示,与计算机视觉领域相比,结果显示了共同和不同的趋势。
当只删除“RandomResizedCrop”变换时,SwAV和BarlowTwins立即崩溃,MoCo-v2和SimSiam的性能显著下降。所有方法都确认了裁剪的重要性,这与自然图像一致。令人惊讶的是,当仅使用裁剪作为所有四种方法的数据增强时,几乎没有观察到明显的性能下降。与自然图像相比,这是一个显著的差异,在自然图像中,其他增强(尤其是颜色失真)也具有很大的重要性。因此,除了裁剪这一关键增强外,还需要进一步研究其他增强的设计,以更好地处理遥感多光谱图像。此外,为了进一步分析裁剪的影响,我们探索了最小裁剪尺寸的不同设置。结果表明,最小尺寸越大(裁剪激进性越小),性能越差。这与计算机视觉文献一致,该文献强调了 具有更强增强 的重要性,以使训练任务对网络足够困难。
3) 有限标签制度:
虽然图24证明了自监督预训练模型的能力,但线性探测结果仍然低于全标签全监督学习的上限。因此,我们想知道 当减少标签数量并启用微调时,这些预训练模型的行为如何。我们用MoCov2 预训练ResNet18 100个epoches,并在BigEarthNet上进行评估。图26显示了将标记样本量减少到50%、10%、1%和0.1%时的线性分类和微调性能。该图的总体趋势证明了当我们没有足够的标签时,自监督预训练的潜力:当可用标签数量减少到1%时,具有自监督的线性分类优于普通监督学习。微调的优势更为显著,它在所有场景下都优于监督学习,并在少量标签上提供了巨大的改进。一般来说,我们使用的标签越少,自监督预训练的优势就越大。
4) 迁移学习:
此外,我们使用在BigEarthNet上预训练的ResNet18 在EuroSat上通过线性分类和微调报告了迁移学习性能。如图27所示,性能图类似于图26,证明 预训练模型 能够很好地 跨数据集迁移数据表示。令人鼓舞的是,对50%的标签进行微调优于使用完整标签的监督学习。事实上,与全标签监督学习相比,对10%的标签进行微调可以获得非常接近的性能。
Ⅴ、 挑战和未来方向
自监督学习在各种视觉任务中取得了巨大的成功,但它仍然是计算机视觉和遥感领域中一个相对较新的技术分支。在本节中,总结了遥感中自监督学习面临的挑战,并讨论了未来可能的方向。
模型崩溃。
随着自监督学习,尤其是现代对比学习的发展,模型崩溃是一个主要挑战。尽管对比自监督学习在该领域取得了巨大的成功,但这些对比方法(尤其是那些使用 非负样本 的方法)背后的基本理论仍然没有很好的理解。已经有一些作品,如SimSiam[84]和[249]试图研究潜在的理论,但它们还不够。事实上,如第四节所述,SimSiam在地球观测数据中很容易崩溃。未来的工作需要深入研究自监督表示学习,并探索遥感数据中模型崩溃背后的理论基础。
前置任务和数据增强。
前置任务和数据增强在自监督学习中发挥着类似且非常重要的作用,因为它们直接对应于网络需要学习的不变性以及对图像理解重要的信息。有一些早期研究对不同的前置任务和数据增强 的评估 以及 可能的改进[250251],但它们 主要关注自然图像,并对 图像级分类任务 进行评估。正如第四节所证明的那样,通用计算机视觉基准的结果可能不完全适用于多光谱图像,更不用说其他模式。在第三节中,我们讨论了不同遥感数据的特征,但仍需要进行实验。因此,总的来说,需要对 前置任务和数据增强 进行更多的研究,以更好地了解哪些任务对不同类型的遥感数据有用。
预训练数据集。
现有的大多数遥感数据集都是用于监督学习的。虽然它们也可以通过 丢弃标签 来用于自我监督的预训练,但是数据量是有限的,并且数据通常偏向于数据集的任务。因此,需要研究在大规模非精确数据集上进行自监督预训练的必要性。沿着这条思路已经有了一些早期的贡献:Leenstra等人[186] 提出了一个Sentinel-2 多时相 城市对数据集,用于变化检测;Manas等人[201]提出了大规模自监督的Sentinel-2数据集;Heidler等人[202]提出了一种 用于 多模态自监督学习的视听数据集。然而,仍有许多空间需要探索和贡献(例如,数据集大小、图像采样策略和更多模态的可用性)。
多模式 / 多时相自监督学习。
作为遥感数据最重要的特征之一,多模态是自监督表示学习中需要探索的一个重要方面[214、220、151]。另一方面,随着 数据采集和传输频率 的增加,多时相图像分析越来越受到人们的关注。无需任何人工注释,自监督表示学习 在执行大数据分析方面 具有很大优势,而大数据分析通常是对多模态和多时相数据的挑战。然而,添加 模式 和 时间戳 也会给要训练的模型带来复杂性。因此,如何平衡不同的模式或时间戳,使模型能够从这两种模式中学习良好的表示是一项具有挑战性的任务。
计算高效的自监督学习。
与监督学习相比,自监督预训练通常需要大量计算资源,因为预训练数据量大、各种数据增强、大批量的要求和更多的训练周期等。很少有人努力降低计算成本,但这是实际使用的一个重要因素。因此,需要探索有效的数据压缩[252]、数据加载、模型设计[58]和硬件加速。
网络主干。
大多数现有的自监督方法使用 ResNet[17] 作为其模型主干,而Vision Transformer(ViT)[18]是一种热门趋势。由于ViT在自监督学习[77,52,85]方面已显示出良好的结果,并且最近的进展正在探索 语言和视觉的 大规模预训练之间的联系[58,86],因此它也值得在遥感图像中进行更多的探索。此外,特定编码器架构 本身也很重要,因为大多数现有方法倾向于保持不变,重点是自监督的概念设计。
面向任务的弱监督学习。
与任务无关的自监督学习的进展 平行,还需要合并 “少量标签”或“弱标签”,以便在实践中更好地实现与任务相关的弱监督学习。换句话说,自监督学习不仅可以 为下游任务提供预训练的模型,而且还可以将表示学习在线化。例如,数据表示 和 监督任务可以一起学习,其中自监督分支 有助于模型捕获更多有用信息。当移动到没有公共大型数据集 进行预训练的极端应用时,此场景尤其重要。此外,这也是一种缓解训练SSL算法通常较高计算成本的方法。
Ⅵ. 结论
本文对自监督学习在遥感领域的应用进行了系统的介绍和文献综述。本文总结了三种主要的自监督方法,介绍了具有代表性的作品,并将它们从自然图像到遥感数据联系起来。此外,我们对三种常用遥感数据集上的四种现代对比自监督学习进行了初步的基准测试和扩展分析。最后,对基本问题和未来发展方向进行了讨论。