基于多任务生成对抗网络的高光谱图像分类
原文:《Classification of Hyperspectral Images via Multitask Generative Adversarial Networks》
摘要
深度学习在高光谱图像(HSI)分类领域显示出巨大的潜力。然而,大多数深度学习模型严重依赖于可用训练样本的数量。在本文中,我们提出了一种多任务生成对抗网络(MTGAN),通过利用未标记样本的丰富信息来缓解这个问题。具体来说,我们设计了一个生成器网络来同时执行两个任务:重建任务和分类任务。前者旨在重建输入高光谱立方体,包括标记和未标记的立方体,而后者的任务试图识别立方体的类别。同时,我们构建了一个鉴别器网络来区分来自真实分布或重构样本的输入样本。通过对抗性学习方法,生成器网络将产生类似真实的立方体,从而间接提高分类任务的辨别能力和泛化能力。更重要的是,为了充分探索浅层的有用信息,我们在重建和分类任务中采用了跳跃连接。所提出的 MTGAN 模型在三个标准 HSI 上实现,实验结果表明它能够实现比其他最先进的深度学习模型更高的性能。
研究思路
在本文中,我们提出了一种用于HSI光谱空间分类的多任务GAN(MTGAN)。在MTGAN中,生成器同时承担两个不同的任务:重构任务和分类任务。重构任务的目标是利用编码器子网和解码器子网重构输入HSI多维数据集,分类任务的目标是通过CNN识别输入多维数据集的类别。分类任务中CNN的第一层卷积层与重构任务中的编码器子网共享相同的结构。MTGAN的鉴别器由另一个CNN构建,该CNN的输入是真实的HSI立方体或由生成器重建的HSI立方体。在训练过程中,鉴别器试图准确区分真实的HSI立方体和重建的HSI立方体,而生成器则试图通过重建尽可能真实的立方体来欺骗鉴别器。经过这种对抗性训练,生成器能够重建类似真实的立方体,这表明编码器子网捕获了HSI立方体的内在表示。由于分类任务共享编码器子网的结构,其分类能力也将得到提高。 与现有的基于GAN的HSI分类模型相比,我们提出的MTGAN模型至少有两个优点。首先,与[36]和[37]不同的是,MTGAN中的生成器可以在对抗性训练后直接应用于HSI分类,而不需要训练额外的分类器,这也可能花费大量时间。其次,MTGAN能够从输入的HSI立方体中同时充分学习光谱和空间特征,这对于HSI光谱-空间分类至关重要。 本文贡献如下:
- 我们提出了一种用于HSI光谱空间分类的MTGAN。MTGAN中的生成器和鉴别器都是基于CNN的。该生成器可以同时对输入数据集进行重构和分类。得益于重构过程,未标记样本被充分利用来提高CNN的分类性能。
- 我们在重构任务和分类任务中都采用了跨层连接。通过这些连接,可以传递空间信息和浅层的判别信息,分别辅助重建和分类任务。
- 我们在三个具有挑战性的HSI数据集上测试了提出的MTGAN模型:Indian Pines 2010、Houston 2013和Houston 2018。在所有这些模型上,MTGAN都能够获得比所比较的深度学习模型更高的性能,这充分验证了其有效性。
本文方法
MTGAN的结构
我们提出的MTGAN模型尝试在GAN中加入多任务学习框架,可以充分利用未标记的样本来提高CNN的分类性能。如图2所示,MTGAN的生成器包含三个模块:编码器模块、解码器模块和分类器模块。生成器的输入是每个像素周围裁剪的小立方体,而不是随机噪声。将编码器和解码器模块组合在一起重建输入立方体,而编码器和分类器模块用于对输入立方体进行分类。这两个任务共享编码器模块,使它们相互促进。MTGAN的鉴别器由一个CNN构成,期望能区分真实立方体和重建立方体。下面,我们将详细介绍产生器和鉴别器的结构。
针对数据分布不平衡和不同类别学习难度带来的负面影响,我们提出了一种用于半监督高光谱图像分类的新型双流类适应型网络(DSCA-Net)。首先,为了缓解数据分布不平衡的问题,我们提出了一种超像素引导有标签传播
(SGLP)
模块,该模块通过基于超像素的相似性测量和标签传播来传播已知标签,为后续训练提供类别平衡的无标签训练集。在过去的遥感图像分类研究中,基于超像素的技术被证明是非常有用的。例如,Zhao
等人 [37]
提出了一种超像素引导的可变形卷积方法,可以根据高光谱图像的空间结构自适应地提取特征。Jia
等人 [38]
则提出了一种无需任何参数调优的超像素级加权标签传播方法。之前的方法旨在在超像素层面实现连续迭代的特征学习或标签更新,但这需要大量的计算。与这些工作不同,我们提出的模块在网络训练之前只进行一次余弦相似度测量和标签传播,因此计算量较低。然后,通过一致性正则化,我们设计了两个不同的分类器,以强制对同一无标签样本的不同增强版本做出相似的预测,从而使无标签样本能够以监督方式训练模型。最重要的是,传统固定阈值方法(即为每个类别设置相同的阈值)存在不足之处
[39]。为此,我们提出了一种类别自适应动态阈值(CADT)策略。该策略根据模型的学习状态计算难度估计,并由此获得每个类别的对应阈值。此外,我们设计了一个非线性映射函数,将难度估计值映射到每个类别的最终自适应阈值。综上所述,我们方法的主要贡献如下:
内核大小为
FLOPs
的数量随着输入图像的大小线性增长。参数数量随着通道数量和内核大小呈二次方增加。然而,由于两者通常都很小,因此它们不是限制因素。
为使核大小
例如,当内核大小为
内核大小为
CE
的目的是调整维度和令牌数量。大多数后续的工作也应用了一个或两个卷积嵌入层
[58,18,67,55,33]。然而,这些嵌入层无法提供足够的 ERF
来捕获具有理想归纳偏差的复杂视觉表示。由于堆叠更多的卷积层可以增加 ERF
[37],我们构建了一个仅具有 1 层 CE 的简单基线,并逐渐增加 CE
中的卷积层数量以获得更多变体。同时,保持尽可能小的浮点运算 FLOPs
和参数数量变化。我们观察到,每个阶段 CE
的微小变化都会导致最终模型的性能显着提高。 基于大量实验,我们进一步了解
CE 如何通过注入所需的归纳偏差来影响 CNN/ViT
的混合网络设计。我们做出了一些观察。1) CNN
即使在网络的深层也能带来很强的归纳偏差,使得整个网络更容易训练,更容易捕获更复杂的视觉特征。同时,ViT
让整个网络拥有更高的泛化上限。2)CE可以施加有效的归纳偏差,但不同的卷积层表现出不同的有效性。此外,大的
ERF 对于设计 CE 或向 ViT 注入所需的归纳偏差至关重要,即使它是纯 CNN
网络中的传统设计 [50,37]。3) CNN 甚至可以帮助 ViT
在深度网络中看得更清楚,为指导如何设计混合 CNN/ViT
网络提供有价值的见解。4) 将宏观和微观相结合引入归纳偏差有利于获得基于
ViT 的网络的更高泛化上限。 我们的结果证明了卷积嵌入(CE)和深度混合
CNN/ViT 设计对于视觉任务的重要性。ViT 是 CNN 的通用版本
[10],大量的工作已经证明了基于 ViT
的网络的高度泛化性,这激励研究人员纯注意力网络的性能上限。在发现归纳偏差对于显着提高
ViT 的训练速度和样本效率至关重要之后,人们的努力主要致力于创建 ViT
的微观设计以增强它 [35,15]。同时,EarlyConv [59] 和 CoAtNet [14]
验证了基于 ViT 的网络浅层卷积的效率。我们的研究进一步突破了混合 CNN/ViT
网络宏观设计的界限。我们的结果还表明,即使在 ViTs 网络的深层,正确选择
CNN/ViTs
设计的组合,也可以进一步改善整个网络的上限性能限制。最后,我们提出了一系列混合
CNN/ViT 模型作为通用视觉主干。
总而言之,我们希望本文中提出的发现和讨论能够为社区提供可能的见解,并鼓励人们重新思考
CE 在混合 CNN/ViT 网络设计中的价值。
如图1(a)所示,Swin Transformer
通过从小尺寸的补丁(用灰色表示)开始并逐渐合并更深 Transformer
层中的相邻补丁来构建分层表示。借助这些分层特征图,Swin Transformer
模型可以方便地利用先进技术进行密集预测,例如特征金字塔网络 (FPN) [42] 或
U-Net
[51]。线性计算复杂度是通过在分割图像的非重叠窗口(以红色框出)内局部计算自注意力来实现的。每个窗口中的
patch 数量是固定的,因此复杂度与图像大小成线性关系。这些优点使 Swin
Transformer 适合作为各种视觉任务的通用骨干网,与之前基于 Transformer
的架构 [20] 形成鲜明对比,后者生成单一分辨率的特征图并具有二次方复杂度。
Swin Transformer
的一个关键设计元素是连续自注意力层之间窗口分区的移动,如图 2
所示。移动的窗口桥接了前一层的窗口,提供了它们之间的连接,从而显着增强了建模能力(参见表
4)。这种策略在现实世界的延迟方面也很有效:窗口内的所有查询补丁共享相同的
key
集,这有利于硬件中的内存访问。相比之下,早期基于滑动窗口的自注意力方法由于不同
query 像素的 key
集不同,因此在通用硬件上延迟较低。我们的实验表明,所提出的移位窗口方法的延迟比滑动窗口方法低得多,但建模能力相似(参见表
5 和表 6)。事实证明,移位窗口方法对于全 MLP 架构也是有益的。
图2展示了 FixMatch 的推理结果。真实类别是“猫”,FixMatch
被几个 top
类别(例如“狗”、“青蛙”)混淆并做出低置信度预测,但它显示出对某些低等级类别(例如“飞机”、“马”)不是真实类别的高度置信度,因此我们可以安全地为这些类别分配负伪标签。基于这一见解,我们提出了一种名为自适应负学习(ANL)的新方法。具体来说,ANL
首先根据预测一致性自适应计算