深度学习在遥感影像分类与识别中的研究进展综述
2019-03-06范冬林
王 斌,范冬林
(1. 桂林理工大学测绘地理信息学院,广西 桂林 541004; 2. 广西空间信息与测绘重点实验室,广西 桂林 541004)
1 遥感影像与识别算法发展历程
遥感影像分类与识别工作对于研究物体或现象的发展过程和分布规律有着重要意义,经典算法有监督分类和非监督分类。监督分类又称训练场地法,指根据已知样本区类别信息对非样本区进行判别的方法。常见方法有:最小距离分类法、最大似然分类法等。非监督分类也称聚类分析,是指无先验知识的“盲判”。常见方法包括:分级集群法、K-均值算法、ISODATA聚类法。随着遥感影像分辨率的不断提高,以及“同物异谱”和“同谱异物”现象的出现,经典算法不再满足高精度要求,于是,出现大量机器学习算法。早期出现的人工神经网络(artificial neural network,ANN)是一种数学模型的机器学习分类方法,其中反向传播神经网络(back propagation,BP)在有足够的隐层和隐层节点时,可以映射出任意的非线性关系。另外,支持向量机(support vector machine,SVM)最早从最优分类面问题提出,是一种有监督的机器学习方法,常用于遥感影像研究。机器学习算法也存在一些问题,如BP神经网络存在收敛速度慢和隐层及隐层节点难以确定问题,SVM在样本数量较大时存在漏分和错分的概率变大[1-2]。近年来,深度学习发展迅速,在机器算法中脱颖而出,本文综合分析深度学习算法在遥感影像分类与识别中的应用现状,探讨其在分类与识别算法中的发展趋势。
2 深度学习算法在遥感影像分类与识别中的研究进展
深度学习的概念由文献[3]于2006年首次提出。在遥感领域,深度学习在分类与识别方面的应用使得分类效果得到了进一步优化,前人利用遥感高分辨率和高光谱影像作出的研究,证明了深度学习能够充分提取遥感影像特征。目前,深度学习主流算法模型有4种:受限波尔兹曼机(restricted boltzmann machine,RBM)、深度信念网络(deep belief networks,DBN)、卷积神经网络(convolutional neural networks,CNN)以及自动编码器(auto encoder,AE)等。其中AE和DBN算法属于无监督学习,而CNN算法则是一种深度的监督学习。现阶段深度学习在遥感影像分类与识别中应用广泛的主要为DBN、CNN及AE这3种算法,RBM为组成DBN的浅层结构,因此研究者对于RBM算法主要是加入到DBN算法中应用。
2.1 深度信念网络在遥感影像分类与识别中的应用现状
2.1.1 DBN算法简介
DBN由多个RBM组成,是具有若干潜变量层的深层无监督学习网络模型。其中RBM是包含一层可观察变量和单层潜变量的无向概率图模型,它们可以层与层堆叠起来形成更深的模型(RBM结构如图1所示),可见层和隐层中的任何单元之间不允许存在连接。DBN模型对RBM进行单独的训练是采用了逐层初始化和整体反馈的方法,以此来完成整个网络的训练过程。DBN的训练过程见表1,通常由预训练和微调两大部分组成。
表1 DBN训练过程
续表1
2.1.2 DBN在遥感影像分类与识别中具体应用的研究进展
文献[4]2014年首次将DBN模型用于SAR影像中的城市地图制作,并利用RADARSAT-2卫星6d的极化合成SAR影像进行了验证试验。基于极化SAR地物分类方法基础,文献[5]2015年提出了一种基于稀疏极化DBN的模型,该模型充分利用了极化SAR影像极化信息进行特征提取,旨在解决极化SAR影像数据复杂且量大导致的分类困难问题,试验证明精度效果和训练速率比SVM和NN算法有所提高。同阶段,不少研究者研究了单源光谱信息的分类局限性。文献[6]2015年将DBN应用在高光谱数据分类中,分别从光谱、空间及光谱-空间3个信息角度使用DBN和LR分类器结合方式进行数据分类。利用影像纹理特征信息,文献[7]将DBN用于准确地挖掘高分辨率遥感影像的空间分布规律。针对高光谱影像图谱合一、高维度和存在非线性成分数据,文献[8]2017年提出一种基于空-谱特征的DBN模型,利用PCA降维重组后的空-谱特征作为DBN的输入,解决了单源光谱信息在高光谱影像分类的局限性。另外,一些研究者在DBN模型结构参数上进行了大量研究。文献[9]2016年提出了一种快速去噪和DBN结合的高光谱影像分类方法,结合DBN对去噪后的图像进行地物分类,当DBN的参数设置为:权重学习率为0.1,可见层和隐藏层偏置学习率均为0.1,权重为0.000 2,初始动量为0.5,最终动量为0.9,以及当迭代次数高于80次时,分类效果很好。利用高分辨率遥感影像具有高维、多尺度、异构等内外部特征和丰富的空间信息,文献[10]2017年通过对比分类精度、Kappa系数以及参数敏感度,分析出当设置迭代次数为15,每个batch大小为100,网络深度为3层,每个隐含层的节点个数为64,学习速率为0.01时,分类精度达到92%左右。前人大量试验结果显示,一般将学习率设为0.01或0.1,隐含层设为3层,隐含层节点在50-500不等时,精度基本都达到90%以上。
2.2 卷积神经网络在遥感影像识别与分类中的应用现状
2.2.1 CNN算法简介
CNN是一种前向反馈神经网络,它的低隐含层由卷积层、池化层(降采样层)交替组成,高层通常由全连接层作为分类器使用(典型CNN模型结构如图2所示)。
ANN分类方法模拟人脑神经系统结构和功能,不需要有关统计分布的先验知识和预定义各数据源的先验权值。CNN将ANN和深度学习相结合,基于改进梯度反向传播算法来训练网络中的权重,实现了深度学习的多层过滤器网络结构以及过滤器和分类器结合的全局训练算法,降低了网络模型的复杂度,减少了权值的数量,在影像处理领域的试验,效果良好。
2.2.2 CNN在遥感影像分类与识别中具体应用的研究进展
CNN在处理高维影像数据时有独特的优势。根据高光谱影像中包含丰富的空间和光谱信息,文献[11]提出了将谱信息变换成图像的方法。一种是转换为灰度图,利用CNN提取纹理特征进行分类;另一种是转换为波形图,利用CNN训练波动特征进行分类。试验表明,在样本种类多时比PCA降维的高斯核SVM方法优越,样本数量少时也有部分优越性。同阶段,前人在不同高光谱影像特征作为CNN的输入信息方面展开了研究。基于光谱域开展的CNN分类算法,文献[12]通过构建5层网络结构,继而逐个分析像素的光谱信息,在输入端输入全光谱段集合,通过神经网络对代价函数值进行计算,实现光谱特征的提取与分类,试验正确率达90.16%。在空间邻域信息作为输入端的研究上,文献[13]将每个像素点空间邻域信息作为CNN框架的输入,同时为缓解梯度弥散,提高网络执行效率和分类精度,对激活函数ReLU进行了设计,研究表明mini-batch随机梯度下降法可以提高CNN框架执行效率,试验精度达到97.57%。CNN也在目标检测物的检测、建筑物的提取中被广泛应用。文献[14]利用DCNN构建水体识别模型,先利用最大稳定极值区域(MSER)算法对无人机高分辨率遥感影像进行分割,通过输入待识别目标子区,导入DCNN水体识别模型识别水体,试验证明,识别精度高达95.36%。鉴于不同激活函数下的目标检测研究差异较大,文献[15]利用CNN算法在不同激活函数应用下对SAR影像目标进行识别试验,试验精度均达95%以上,同时得出ReLu函数为最适合的激活函数的结论。在建筑物的提取识别与分类中,文献[16]通过在CaffeNet学习框架下的农村建筑物和非建筑物的影像进行CNN训练和测试,建筑物识别率达到95.00%。当然,CNN模型在研究中也存在一些缺陷,文献[17]利用CNN在水田中提取地物特征进行分析,根据不同的卷积核能提取不同的特征,又对富锦市遥感影像进行了分类试验及精度评价,但由于CNN的网络性质和参数的选择,使线条特征提取模糊,分类边界粗糙,影响分类效果。从上述具体应用分析,对于不同的激活函数和不同的卷积核都会使试验精度不同,网络性质和参数的选择也会有一定影响。
2.3 堆栈自动编码器在遥感影像识别与分类中的应用现状
2.3.1 SAE算法简介
AE由编码器和解码器共同组成(SAE结构模型如图3所示),经过训练后,能够将输入复制到输出,即编码器输入数据映射到特征空间,然后通过解码器返回特征映射回到数据空间。SAE的学习过程取决于网络最顶层有无标签信息而分为无监督学习和有监督学习过程。
2.3.2 SAE在遥感影像分类与识别中具体应用的研究进展
SAE既可作为特征提取方法,也可自身作为分类模型。早期,文献[18]提出了AE-SVM和SAE-LR分类器两种分类方案。SAE能提取更好的特征为SVM分类识别做准备,另外利用PCA提取空间信息,融合空-谱特征,利用SAE-LR分类器进行空-谱分类要优于SVM。利用空间特征在遥感影像中含有丰富的信息,文献[19]通过构建SAE来进行高光谱遥感影像的分类,并结合Softmax分类器和利用AVIRIS和ROSIS数据集进行验证,与稀疏多项式逻辑回归相比,加入空间特征的SAE的方法更好。另外,在SAE算法提取光谱特征中加入能量函数会使试验效果更加明显,文献[20]采用SAE逐层提取光谱特征,并加入正则项的能量函数,使之最小化优化网络,实现深度空谱特征提取,并在此基础上进行多个试验,试验精度结果均明显。另外,为解决高光谱遥感影像数据类型复杂和分类效率低等问题,文献[21]提出基于深度极限学习机的高光谱遥感影像分类方法,首先将原训练集特征分割,利用SAE变换子特征,然后将SAE变换后的数据输入D-ELM,通过试验确定D-ELM的隐含层数,进而确定最终模型,其分类精度较高。为解决高分辨率极化SAR影像标注样本费时费力和浅层算法有限的表达能力,文献[22]研究了一种主动深度学习的极化SAR图像分类方法,主要通过SAE对无标记样本实现无监督学习,同时,利用少量无标记样本训练分类器与SAE连接,有监督地微调整个网络,再利用分类器对有价值样本进行人工标记,重新训练。
3 深度学习在遥感影像识别与分类中的问题及发展趋势
深度学习在遥感影像处理方面发展很快,但也存在不少问题,总结阐述如下:
(1) DBN在发挥无监督学习的特点时,能更好地提取影像特征,而且在遥感影像数据复杂、有限的基础上,逐渐摸索出的DBN模型结构参数对后人研究大有裨益,但是其网络参数选择需要人工和先验知识的干预,难以确定合适的试验参数。
(2) CNN在处理像高光谱数据的高维影像时优势明显,但是遥感影像有限的样本限制了CNN算法的泛化能力,另外,不同的激活函数、卷积核及网络参数的选择都会对试验精度和效果有所影响,合适的选择会大大加强CNN执行效率。
(3) SAE在现实应用中发挥了无监督分类的特点,同时,在降维跟特征提取方面,比PCA方法产生更少的重构误差,但是仍需与其他分类器联合才能获取分类与识别的高精度,而且需要参数的优化和人工标记样本等,这些都使得SAE并不是完全的无监督学习。
结合上述存在的问题,对未来深度学习在遥感影像分类与识别中应用的预测分析如下:
(1) 进一步完善和调优深度学习网络参数和函数。不同的网络参数和函数选择会对研究项目的精度效果产生不同的影响,合理的选择会对试验起到很大帮助。
(2) 向更深的模型层次和复杂的模型结构展开研究。深层次模型会带来更加精确的结果,复杂的结构会降低过拟合程度,从而提高模型学习能力,也对大规模训练数据有利。
(3) 深入探讨样本扩容问题。现有的遥感影像数据不满足深度学习训练需求,研究者需结合图像数据进行平移、旋转、缩放等方式产生更多有效数据,以提高模型精度。
(4) 搭建多算法结合的深度学习模型结构。目前单一的深度学习模型难以达到遥感影像处理所需的精度,因此研究者多利用改进模型提高精度,如SAE与SVM算法的结合。
4 结 语
本文简要介绍遥感影像分类与识别算法发展历程,发现其不断向更迭的机器学习算法发展,然后阐述了深度学习的几个典型算法,以及在具体遥感应用层面算法的研究进展,总结了各学习模型的发展和各自的优缺点。通过与目前存在的其他机器学习算法在遥感分类与识别中的研究相比,深度学习算法可以确保分类精度并同时降低运算复杂度。最后指出了深度学习应用于遥感图像存在的一些问题,并根据这些问题及现阶段的深度学习发展预测了未来深度学习在遥感领域的研究范畴。