Deep Learning for Hyperspectral Image Classification:An Overview(2019)
文章目录
-
- Deep Learning for Hyperspectral Image Classification:An Overview(2019)
-
- ABSTRACT
- 1.INTRODUCTION
- 2.DEEP MODELS
-
- SAEs(堆叠自编码器):
- DBNs(深度信念网络):
- CNNs(卷积神经网络):
- RNNs(循环神经网络):
- GANs(生成对抗网络):
- 3.DEEP NETWORKS-BASED HSI CLASSIFICATION
-
- Spectral-Feature Networks:
- Spatial-Feature Networks:
- Spectral-Spatial-Feature Networks:
-
- (1)preprocessing-based networks
- (2)integrated networks
- (3)postprocessing-based networks
- 4.STRATEGIES FOR LIMITED AVAILABLE SAMPLES
-
- Data Augmentation
- Transfer Learning
- Unsupervised/Semisupervised Feature Learning
- Network Optimization
- 5.EXPERIMENT
-
- Experiment data sets
- Compared Methods
- Classification Results
- Deep Feature Visualization
- Effectiveness Analysis of Strategies for Limited Samples
- 6.CONCLUSION
ABSTRACT
首先,总结了传统机器学习方法的不足以及深度学习的优势。
然后,根据文献中网络提取的特征将最近的研究成果分为3类:spectral-feature networks,spatial-feature networks,spectral-spatial-feature networks。
此外,针对limited training samples的问题提出几个strategy。
最后,利用几个deep learning-based分类方法对高光谱数据集进行分类和比较。
1.INTRODUCTION
高光谱分类的2大挑战:
(1)spectral signatures的空间变异大;(2)样本数量有限,而高光谱数据维数高。
高光谱分类方法:
(1)逐项元(pixelwise)分类方法:NN,SVM,MLR(多项式Logistic回归),动态或随机子空间(focus on spectral signature);PCA,ICA,LDA(线性判别分析)(focus on特征提取或降维)
------------------------------------------------加入spatial features------------------------------------------------
(2)SSFC(spectral-spatial features-based classification,即将空间上下文信息加入上述的像元级分类器中):EMP(extended morphological profiles,通过形态学操作获取spatial information),Mutiple kernel learning(设计composite kernel和morphological kernel来获取spectral-spatial information),EPF(边缘保持滤波,优化SVM概率结果的后处理方法),sparse representation model(加入邻域的spatial information,稀疏表示模型基于高光谱像元可以用少量同类的像元的线性组合表示这一发现)。
传统机器学习方法的不足:
(1)依赖于hand-crafted or shallow-based descriptors,而人工特征是为了完成特定的任务而设计的,并且在参数初始化阶段需要专家知识,这限制了模型应用的场景。
(2)人工特征的表示能力不足以识别不同类间的小变异和类内的大变异。
深度学习的优势:
(1)能够提取信息丰富的特征
(2)深度学习是自动的,所以模型应用的场景更加灵活。
2.DEEP MODELS
简要介绍几个在高光谱分类中常用的deep network models——SAEs(堆叠自编码),DBNs(深度信念网络),CNNs(卷积神经网络),RNNs(循环神经网络),GANs(生成对抗网络)。
SAEs(堆叠自编码器):
“自编码器与堆叠自编码器简述”(这篇文章对SAEs的讲解很全面)
AE是SAEs的基本单元,AE网络由input layer(x),hidden layer(h),output layer(y)构成。由x到h的过程称为“encoder”,由h到y的过程称为“decoder”。我们注重“encoder”这个过程,希望将x做某种变换后得到的h可以最大程度复原为y,这样就提取出了x的某种特征h。
训练完AE提取出h特征以后,我们会去掉output layer这一层,然后进行堆叠,以便提取出更深层的特征。最后加上一个Logistic regression classifier,便得到SAEs。
输入pixel vector,输出class labels,便可将SAEs视为一个spectral classifier。
DBNs(深度信念网络):
“Restricted Boltzmann Machine(限制玻尔兹曼机)”,版权声明:本文为CSDN博主「Hiro大好」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
深度学习–深度信念网络(Deep Belief Network)
RBM(受限玻尔兹曼机)是DBN的基本单元,它类似于SAEs中的AE,属于非监督分类,前向传播即编码过程,反向传播即解码过程。神经元节点之间的连接是双向的。
RBM的每一个结点都是随机二值结点(取值为0/1),这也是“受限”的来源。RBM的能量函数基于能量Boltzmann分布。每个可视节点和隐藏节点之间的连接结构有一个能量,通过v和h中参数的学习,我们可以计算出它的能量。神经网络的变化过程,实质是一个能量不断减少的过程,最终达到能量的极小值点,也就是稳态。
DBN是由多层RBM构成的,可看作生成模型或判别模型。加上Logistic regression classifier即构成一个spectral classifier。
CNNs(卷积神经网络):
“一文让你彻底了解卷积神经网络”
CNNs可以提取出图像二维的空间特征,也可利用参数共享减少网络参数。包括卷积层、池化层、全连接层。其中全连接层将feature maps转换成feature vectors。
RNNs(循环神经网络):
“深度学习之RNN(循环神经网络)”,版权声明:本文为CSDN博主「笨拙的石头」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
RNNs中隐藏层中的结点是有连接的,隐藏层的输入不仅包括输入层的输出还包括上一时刻隐藏层的输出。所以RNNs适合于处理与时间序列相关的问题。
又因为在光谱空间中,高光谱数据的每一个pixel vector能被看作一系列有序而连续的光谱序列,所以RNNs适合于高光谱分类。
对于梯度消失或者梯度爆炸的问题,也提出了RNNs的改进算法:LSTM 和 GRU。
GANs(生成对抗网络):
机器学习领域,模型可大体上分为2类:生成模型和判别模型。生成模型从数据中学习到参数分布,然后根据已学习的模型产生新样本;判别模型关注数据之间的差异,根据样本数据建立一个由x到y的映射,再根据这个映射进行预测。
“一文读懂生成对抗网络(GANs)【下载PDF | 长文】”
生成模型通过噪音生成以假乱真的false data,通过判别模型判断true data和false data来提升生成模型生成假数据的能力。
3.DEEP NETWORKS-BASED HSI CLASSIFICATION
Spectral-Feature Networks:
早期,用原始的spectral vector直接以非监督方式训练SAE或DBN。
后来,提出deep learning和active learning结合的分类框架,其中DBN用来提取deep spectral feature,深度学习算法用来选择高质量的训练样本待人标注;提出diversified DBN,即正则化DBN的预处理和微调程序。
此外,1-D CNN,1-D GAN,RNN也被用于提取spectral feature;在spectral domain中执行conv提取pixel-pair features(PPFs)
最后,用字典学习训练深度网络被reformulated。
Spatial-Feature Networks:
学习到的spatial features将会和通过别的特征提取的方法提取出的spectral features融合在一起,来进行更精确的高光谱分类。
PCA(使原始数据降维)+2-D CNN(提取空间领域中的spatial information);
采用sparse representation将CNN提取到的deep spatial feature进行编码,使其变成低维的sparse representation;
直接采用AlexNet和GoogleNet的CNNs来提取deep spatial feature;
SSFC框架,即用balanced local discriminant embedding(BLDE)和CNN来提取spectral and spatial features,然后将特征融合来训练multiple-features-based classifier;
multiscale spatial-spectral feature extraction algorithm,训练好的FCN-8被用来提取deep multiscale spatial features,然后采用加权融合法融合original spectral features和deep multiscale spatial features,最后将融合的特征放入classifier中;
Spectral-Spatial-Feature Networks:
这种网络不是用来提取spectral features或者spatial features,而是用来提取joint deep spectral-spatial features。
获取joint deep spectral-spatial features有3种方式:(1)通过深度网络将low-level spectral-spatial features映射为high-level spectral-spatial features;(2)直接从原始数据或几个主成分中提取deep spectral-spatial features;(3)融合2个deep features,即deep spectral features和deep spatial features。
因此根据将光谱信息和空间信息融合的处理阶段不同,将spectral-spatial-feature networks也分为3类:preprocessing-based networks,integrated networks,postprocessing-based networks。
(1)preprocessing-based networks
在连接deep network之前spectral features和spatial features就已经融合了。
处理步骤:①low-level spectral-spatial feature fusion;②用deep networks提取high-level spectral-spatial feature;③将deep SSFC与simple classifier(如SVM、ELM极限学习机、多项式Logistic回归)连接起来。
由于全连接网络(如DBN、SAE等)只能处理1维输入,所以我们想到把空间邻域reshape为1维向量,与1维的光谱信息叠加之后放入全连接网络;
将一个空间邻域内所有像元的光谱信息取平均变为一个光谱向量,这个平均光谱向量其实就包括了空间信息在内,我们再将其放入接下来的deep network中;
也有一些不是获取邻域内的spatial information的滤波方法(如用Gobar滤波、attribute滤波、extinction滤波、rolling guidance滤波来提取更有效的spatial features),它们结合了deep learning和spatial-feature提取方法。
(2)integrated networks
不是分别获取spectral features和spatial features再融合,而是直接获取joint deep spectral-spatial features。
通过2-D CNN或3-D CNN在原始数据中直接提取joint deep spectral-spatial features;
FCN(fully convolutional network)能够通过监督方式或非监督方式学习到高光谱的deep features;
RL(residual learning)可以帮助建立deep和wide的网络,一个残差单元中输出是输入和输入的卷机值的和;
用3-D GAN来提取特征,其中一个CNN是判别模型,另一个CNN是生成模型;
修正CapsNets作为一个spectral-spatial capsules来提取特征;
------------------------------------------------提出hybrid deep networks------------------------------------------------
three-layer stacked convolutional autoencoder可通过未标记的像元来学习generalizable features;
convolutional RNNS(CRNNs)中用CNN从高光谱序列中提取middle-level features,用RNN从middle-level features中提取contexture information;
用spectral-spatial cascaded RNN model来提取特征。
(3)postprocessing-based networks
处理步骤:①用2个deep networks提取deep spectral features和deep spatial features;②在全连接层将2种特征融合产生seep spectral-spatial features;③将deep SSFC与simple classifier(如SVM、ELM极限学习机、多项式Logistic回归)连接起来。
第①步中的2个deep networks可能共享权重,也可能不共享。
1-D CNN用来提取spectral features,2-D CNN用来提取spatial features。然后这2种特征被融合并与全连接层连接提取spectral-spatial特征用于分类;
对于每个输入像元,用堆叠去噪自编码器编码提取spectral features。对于相应的图片块,用deep CNN提取spatial features,然后2个预测概率被融合;
2个主成分分析网络用来提取spectral features,2个堆叠稀疏自编码器用来提取spatial features+全连接层+SVM;
multiple CNNs同时处理multiple spectral sets(共享权值),each CNN提取相应的spatial feature+在全连接层里将individual spatial features融合起来。
4.STRATEGIES FOR LIMITED AVAILABLE SAMPLES
Data Augmentation
DA通过training samples产生virtual samples,包括2种方式:(1)transform-based sample generation;(2)mixture-based sample generation
(1)transform-based sample generation
由于同类物体在不同的光照条件下会有不同的辐射率,因此我们可以通过现有训练样本的旋转、镜像操作来产生新数据。
(2)mixture-based sample generation
通过2个同类样本的线性组合即可产生1个新样本。
Transfer Learning
TL可以从其他已训练好的网络中复制参数来初始化参数。directly transfer the network parameters of low and middle layers to a new network that has the same architecture as the previous network。
top layers的参数还是随机初始化的,以便处理特定的问题。
一旦迁移了网络参数,后面的分类也可以被分为非监督和监督方法。非监督方法则直接用迁移网络提取的特征进行分类;非监督分类还要加入少量training samples被fine-tuned。
Unsupervised/Semisupervised Feature Learning
非监督特征学习只用到无标签数据集,可以把它当做一个encoder-decoder过程。半监督分类特征学习可以通过迁移训练好网络的参数和标记数据集的微调来提取特征。
用全连接网络来进行HSIs分类,其中网络的训练分为非监督式的pretraining和fine-tuning with labeled data。在pretraining时期,参数的学习可以看成一个encoder-decoder过程(unlabled data–intermediate feature–reconstruction)。但是这样比较低效,所以一个unsupervised end-to-end training framework被提出,它将卷积网络视为encoder,将解卷积网络视为decoder。
GAN也被用来构建半监督特征学习框架。
用大量unlabeled data和用无参数贝叶斯聚类算法获得的pseudo labels来预训练CRNN。
Network Optimization
通过采取更有效的模块或函数,网络优化可以改善网络性能。
ReLU激活函数可以缓解训练过程中的过拟合。
RL有2中映射方式:identity mapping、residual mapping。通过引入残差函数G(X)=F(X)-X使得F(X)=X转化为G(X)=0。
正则化pre-training和fine-tuning程序可以改善DBN的性能;
SAE训练中加入了label consistency constraint;
考虑样本之间的相关性。
5.EXPERIMENT
Experiment data sets
Compared Methods
这篇论文讨论了6种深度学习分类方法——3-D-CNN、Gabor CNN、CNN with PPFs、Siamese CNN(S-CNN)、3-D-GAN、deep feature fusion network(DFFN)和4种传统分类方法——SVM、EMP、joint sparse representation(JSP)、EPF。
3-D-CNN用3-D卷积滤波直接从原始cube中提取spectral-spatial features,但忽略了不同层间的相关性;
DFFN才用了DRN,考虑了层间的相关性,能够提取出更有判别力的特征。但它依赖于人工特征;
Gabor CNN使用Gabor滤波提取spatial features,通过CNN来获取joint deep spectral-spatial features;
CNN-PPF和S-CNN都考虑样本之间的相关性。其中CNN-PPF不考虑spatial information,S-CNN用two-branch CNN来直接提取spectral-spatial features,但是由于维数太高,计算量也比较大;
3-D-GAN在样本少的情况下,可以有效地改善判别CNN的泛化能力。
SVM是一种spectral feature-based method,EMP、JSP和EPF都是spectral-spatial feature-based methods。
EMP用前3个主成分构建形态学剖面,对于每一个主成分都用一个步长为2的结构单元做4次开闭运算;
JSP用joint sparse regularization获取邻域的spatial information;
总结一下,除了SVM和CNN-PPF在分类过程中使用了spectral features,其他方法都是基于spectral-spatial fetures的分类方法。
Classification Results
对于the Houston数据集,SVM和JSP结果不好,有很多可见的噪音。EPF和Gabor-CNN都是filtering-based方法,ESF的分类图过于平滑,而Gabor-CNN则保留了边缘的细节。
除了3-D-DAN,其他的深度学习方法OAs都大于80%,比传统分类方法都高。
在深度学习方法中,只考虑spectral information的CNN-PPF比其他方法的分类结果都差。
DFFN结合了RL和feature fusion,在OA、AA和Kappa中都取得了最高的精度。
对于University of Pavia数据集和Salinas数据集,深度学习方法不管是在分类图结果和定量结果上,精度都比传统分类方法要高。
SVM、EMP、EPF和S-CNN都是SVM-based classifiers,S-CNN分类精度最高。
EPF和Gabor-CNN都是filtering-based方法,Gabor-CNN的OA比EPF高3.5%,这表明filter与deep learning结合能有更好地分类结果。
尽管CNN-PPF只考虑了spectral information,但还是比传统分类方法有更好地表现。
Deep Feature Visualization
通过对比学习前和学习后卷积核的权重,我们可以发现学习后卷积核的权重更规则。
通过上面2张图可看出前面的卷积层主要提取一些如边缘或纹理信息的simple features,这些lower level features能通过后面的卷积层被组合成更复杂的high-level features。这一特性使得CNNs适合处理不同情境下的问题。
Effectiveness Analysis of Strategies for Limited Samples
我们建立了一个简单的CNN并分别运用3种策略(DA、TL、RL)来检验其有效性。
CNN-Original、CNN-DA、CNN-TL、CNN-RL被用于Salinas数据集,其中training sets分别包括5、10、15、20、25、30个标记样本/类,其他的标记样本就被当做测试集数据了。
CNN-TL中的CNN在Indian Pines中预训练,因为Indian Pines和Salinas images有一样的传感器。
观察分类结果,我们发现这3种策略均能改善OA,CNN-RL在大部分情况都表现得最好,这表明了RL是一个非常有用的网络优化方法。
6.CONCLUSION
首先,介绍了几个在HSIs分类中常用的deep models——SAE、DBN、CNN、RNN、GAN、
然后,将deep learning-based分类方法分为3类:spectral-feature networks、spatial-feature networks、spectral-spatial networks。
其次,我们比较了深度学习分类和传统分类方法的分类精度,发现深度学习分类方法总体都比传统分类方法表现更好,其中结合了RL和特征融合的DFFN方法表现得最好。
还有,deep features和network weights被可视化。
此外,我们验证了针对样本量少提出的几个策略,发现使用RL能够更好地改善网络性能。
Swear to be overdramatic☀ and true❤ to the world
我发誓将以极致的热忱与真诚,献与这个美丽的世界。