宋海峰 ,杨巍巍,2
(1.台州学院 电子与信息工程学院(大数据学院) ,浙江 台州 318000;2.哈尔滨工程大学 计算机科学与技术学院, 黑龙江 哈尔滨 150000)
近几年,卷积神经网络在计算机视觉领域得到广泛应用。例如:运动目标检测、图像特征提取和图像分类等,多层次结构特征使得卷积神经网络可以提取图像或视频的非线性特征[1]。在遥感影像处理领域,对高光谱遥感影像(Hyper-Spectral Sensing Image,HSI)处理的需求日益增长。然而,由于对卷积神经网络进行训练需要大量的标记样本,在实际应用中很难获取到大量带有标记的HSI,严重制约卷积神经网络在遥感影像领域中的应用。常见解决方法是对数据进行降维,同时降维还可以解决休斯效应对分类精确度的影响[2]。降维是将高维数据投影到低维空间,常见的投影降维算法有:主成分分析法[3-4]、独立成分分析法[5]、流行学习法[6]等。另外一类降维的方法是从HSI数据中直接提取出最具代表性的波段图像,比如排序算法[7]、聚类算法[8]等。一方面降维会丢失一些重要的信息,另一方面通过在谱域上提取到的降维后的数据特征往往不足以用来表示某一类实际地物。因此,需要寻找更具区分能力的数据特征。
HSI的空间信息确定空间上相邻像素间的空域特征,空域特征弥补谱域特征的不足,应用空域特征提升HSI的分类精确度。几何形态法是一种典型的空域特征提取算法,该算法对开放或者闭合区域进行变换,从而提取空间结构特征[9]。除几何形态法外还有许多其他的空域滤波器用来提取HSI的空间特征。算法大多需要大量的标记数据集,实际应用中很难满足这一需求。为了进一步提取谱域—空域特征,一些学者提出应用Gabor滤波器来同时提取谱域—空域特征的方法,该方法在小规模HSI分类中取得良好的效果[10]。最近的研究表明,定义不同方向和尺度的Gabor滤波器实际是一种卷积滤波器,卷积神经网络可以自动的学习卷积滤波器的参数[11],这一结论进一步说明本文应用卷积神经网络提取空域特征的可行性。
卷积神经网络由若干卷积层和池化层构成。卷积层用线性激活函数来提取特征图,卷积层之后一般连接一个非线性激活函数,比如recfier,sigmod和tanh函数等。池化层是将相邻的像素点进行组合,从而提取出本地特征,池化层的作用是增强对图像轻微形变的鲁棒性。卷积神经网络已经在计算机领域广泛应用,LeCun采用反向传播和梯度下降算法来训练卷积神经网络,并将训练好的网络模型应用到手写数字识别中[12]。Krizhevsk在包含1 000个不同类别图像的ILRSRC2012数据集上应用卷积神经网络进行分类的正确率成功超越以往的手工设计特征分类法[13]。自2012年以来,卷积神经网络在图像分类、语义分割、目标识别、视频分析等领域广泛的应用。在应用卷积神经网络对HSI进行分类方面,文献[14]提出一种卷积神经网络,将原始的HSI数据作为输入,对应像素点的类别作为输出,每个类别有200个训练数据。
本文首先分析卷积神经网络的构成、基本原理和训练方法,在此基础上提出一种基于多尺度卷积神经网络(Multi-CNN)的HSI分类模型,最后通过实验验证该模型在HSI分类正确率上优于其他算法。证明本文所提出的基于Multi-CNN的高光谱遥感影像分类模型可广泛用于HSI分类。
如图1所示,典型的卷积神经网络主要由输入层、卷积层、下采样层(池化层)、全连接层和输出层组成。
图1 卷积神经网络结构图
卷积神经网络的输入通常为原始图像X。本文用Hi表示卷积神经网络第i层的特征图(H0=X)。Hi的计算过程可以描述为:
Hi=f(Hi-1⊗Wi+bi) .
(1)
其中:Wi表示第i层卷积核的权值向量;运算符号⊗代表卷积核,表示第i层与第i-1层图像或者特征图进行卷积操作,卷积的输出与第i层的偏移向量bi相加,最终通过非线性的激励函数f(x)得到第i层的特征图Hi。
下采样层跟随在卷积层之后,依据一定的下采样规则对特征图进行下采样。下采样层的功能主要有两点:①对特征图进行降维;②在一定程度上保持特征的尺度不变特性。假设Hi是下采样层,则有:
Hi=subsampling(Hi-1) .
(2)
经过多个卷积层和下采样层的交替传递,卷积神经网络依靠全连接网络对提取的特征进行分类,得到基于输入的概率分布Y(li表示第i个标签类别)。卷积神经网络本质上是使原始矩阵(H0)经过多个层次的数据变换或降维,映射到一个新的特征表达(Y)的数学模型。
Yi=P(L=li|H0:(W,b)) .
(3)
卷积神经网络的训练目标是最小化网络的损失函数L(W,b)。输入H0经过前向传导后,通过损失函数计算出与期望值之间的差异,称为“残差”。常见损失函数有均方误差(Mean Squared Error,MSE)函数,负对数似然(Negative Log Likelihood,NLL)函数等:
(4)
(5)
为了减轻过拟合的问题,最终的损失函数通常会通过增加L2范数以控制权值的过拟合,并且通过参数λ(weight decay)控制过拟合作用的强度:
(6)
训练过程中,卷积神经网络常用的优化方法是梯度下降方法。残差通过梯度下降进行反向传播,逐层更新卷积神经网络的各个层的可训练参数(W和b)。学习速率参数η用于控制残差反向传播的强度:
每个病理学知识点的发现到证实跃为理论,都伴随着曲折有趣的科研历程,折射出医学前辈的科学智慧,融合教学法在病理实习课中,大胆实施以问题为中心,以学生为主人的教学方式,注重培养学生主支、独立、探索、多渠道的获取知识,这本身就激发学生对医学知识无限的探索欲望,使学生科研增加,而融合教学法,培养学生创新的思维模式有肋于挑战旧观念,提出新问题,从而激发学生们的科研兴趣[10]。
(7)
(8)
根据卷积神经网络的基本原理,本文提出了一种基于多尺度特征融合的卷积神经网络模型,该模型分为多尺度特征提取与融合和HSI分类两部分,如图2所示。
(a)多尺度特征提取与融合模型
本文所提出的多尺度特征提取与融合模型,如图2(a)所示,该模型以原始的HSI作为输入,然后分别用1×1×B, 3×3×B, 5×5×B的卷积核对原始图像做卷积运算(B为HSI的波段数),经过卷积的图像可用来提取HSI的空间特征,卷积运算后的输出为三组卷积特征图。随后3组特征图进行特征融合,形成W×H×3B的特征图。
从图2(a)可以看出,3个不同大小的卷积核计算卷积图的大小也各不相同。将3种不同尺寸的卷积核调整为大小一致的卷积核。首先,将原始图像的四周扩大两像素,并将像素值置为0,这样扩大后的原始图像经过1×1,3×3,5×5的卷积核,步长为1的卷积运算后,输出的特征图大小分别为(H+4,W+4),(H+2,W+2),(H,W),H和W分别为原始图像的高度和宽度。然后对卷积图用(5×5),(3×3)的Max Pooling计算,这样三个卷积图的大小最终都调整为H×W。
本文所提出的HSI分类模型如图2(b)所示。该模型由3个卷积层、2个Normalization层、2个Dropout层和1个全连接层构成。输入数据是以HSI待分类像素点为中心的5×5×N图像(N为HSI波段数)。在第一个卷积层中,本文采用1×1的卷积核,共有128个这样的卷积核,所以第一个卷积层输出的特征图大小为5×5×128。第一个卷积层之后是Normalization层和Dropout层。在第二个卷积层中,本文采用1×1×64的卷积核,所以第二个卷积层输出的特征图大小为5×5×64,第二个卷积层之后仍然为2×2大小的Normalization层和Dropout层。在第三个卷积层中采用1×1×C的卷积核(C为待分类的类别数),所以第三个卷积层的输出特征图的大小为5×5×C。最后一个为全局评价池化层,该层的输入为5×5×C的特征图,输出为1×1×C的特征向量,输出特征向量的第i个最大值,表示该像素所属的类别。
基于Multi-CNN的HSI模型的训练过程示意图,如图3所示,详细训练步骤如下。
图3 基于Multi-CNN的HSI模型的训练过程示意图
Step1:对原始训练数据集进行随机抽样,生成M个含有相同数据量的子集,本文中M=16。
Setp2:应用随机梯度下降算法,分别对16个子数据集进行训练,每次只针对一个子数据集进行迭代,直至达到最大迭代次数后停止迭代。
本节实验所用数据集为伊春凉水林场数据集,首先,测试了基于Multi-CNN的HSI模型的各主要组成部分,包括多尺度卷积核、卷积核大小和Dropout对分类精确度的影响;然后,通过实验对本文所提出的分类模型和目前主流的HSI分类模型在总体分类精确度方面进行了对比分析。实验所用软硬件环境如表1所示。
实验所用数据为黑龙江省伊春市凉水林场数据集,该数据集是2012年7—8月间由B5飞机拍摄于黑龙江省伊春市带岭区凉水林场地区,该数据集一共有144个波段,空间分辨率为1.5 m,光谱覆盖范围为371~1 051 nm,图像大小为1025像素×767像素,该数据集的地面实况标记了5类地物(针叶林、阔叶林、草地,水域,房屋)。
本实验验证基于空间特征提取的多尺度卷积核对分类结果的影响。首先,本实验分析多尺度卷积核的基本结构,如图4所示。其次,本实验分别对比了大小为1×1,3×3,5×5,7×7的卷积核对分类结果的影响。如表2所示,综合应用多尺度卷积核的分类精度明显好于单独使用1×1卷积核的分类精度。在对伊春凉水林场数据集的实验中,综合应用多尺度卷积核的分类正确率高出单独使用1×1卷积核的分类正确率7.84%。
分类正确率提高的原因主要有两点:①多尺度卷积核能够以不同尺度提取原始HSI的特征,生成多种不同的特征,多种不同的特征有利于分类正确率的提高。②多尺度卷积核运算相当于增加了原始数据集的样本数,这使得训练过程更加充分。同时,在实验中发现分类正确率并不是随多尺度卷积核的增加而提升,当应用1×1-7×7的多尺度卷积核时,由于出现过拟合现象,导致分类的正确率开始下降。因此本文选用1×1,3×3,5×5三个卷积核。
图4 多尺度卷积核的基本结构
表2 不同卷积核对分类结果的影响 %
本实验测试不同大小的卷积核对训练和测试过程的影响,一个训练好的卷积神经网络模型不仅应该在训练数据集上的损失值趋近于零,而且在测试数据集上的损失值也应该趋近于零。如果该模型仅在训练数据集上的损失值趋近于零,而在测试数据集上的损失值很大,则说明该卷积神经网络出现了过拟合现象,这样的卷积神经网络的泛化能力将会很差。
在本实验中,本文分别使用1×1和3×3大小的卷积核对所提出的基于Multi-CNN的HSI模型(如图2(b))进行训练和测试。训练和测试过程中损失函数值的变化如图5所示。由图5可以看出,当使用1×1的卷积核时,在训练和测试过程中,随着迭代次数的增加,损失函数的值逐渐收敛于0;当使用3×3的卷积核时,在训练过程中,随着迭代次数的增加,损失函数值逐渐收敛于0,但在测试过程中,随着迭代次数的增加,损失函数的值并不收敛,这说明使用3×3卷积核时,出现了过拟合现象。所以得出以下结论:在有限的数据集中,使用1×1的卷积核,可以得到具有良好泛化能力的卷积神经网络模型。
图5 不同卷积核对应训练和测试过程损失函数变化情况
本实验验证基于Multi-CNN空间特征提取的高光谱遥感影像分类模型中Dropout层对分类结果的影响。本实验分别对两种结构的高光谱遥感影像分类模型进行测试,第一种模型的结构如图2(b)所示,在第一种模型中去掉Drop层即为第二种模型结构。在第一种模型中Dropout层置零的概率设置为0.6,训练和测试过程中损失函数值的变化过程如图6所示,从图(2)中可以看出本文所提出的带有Dropout层的模型,在训练和测试过程中的损失函数值均小于没有Dropout层的模型。这说明Dropout可以提升基于Multi-CNN空间特征提取的高光谱遥感影像分类模型的分类正确率。
图6 有无Dropout对应训练和测试过程损失函数变化情况
本实验主要对本文所提出的基于Multi-CNN空间特征提取的高光谱遥感影像分类模型和目前主要的分类模型在分类正确率方面进行对比,从而验证本文所提出的分类模型的分类效果。参与对比的模型有:①两层全连接神经网络(两层NN),②包含一个隐含层的全连接神经网络(三层NN),③LeNet-5卷积神经网络模型,④基于RBF核函数的SVM分类器,⑤多样化的深度置信网络(D-DBN),⑥浅层卷积神经网络(Shallower CNN)。分类结果如表3所示,从表3可以看出,两层NN、三层NN以及RBF-SVM的分类正确率均在88%以下,这是由于这几种分类模型的层数较少,无法提取出高光谱遥感影像的深层次特征所造成的。随着分类模型层数的逐渐曾多,LeNet-5、Shallower CNN和D-DBN的分类效果明显好于浅层神经网络,分类正确率均在90%左右。本文所提出的基于Multi-CNN空间特征提取的高光谱遥感影像分类模型,由于从不同尺度提取了高光谱遥感影像的空间特征,因此分类效果明显好于其他几种分类器,分类正确率达到了92.31%。通过该实验可以看出本文所提出的基于Multi-CNN空间特征提取的高光谱遥感影像分类模型在分类正确率方面优于其他常见分类器。
表3 分类正确率对比结果表
针对难以获得大量的带有标记的高光谱遥感影像的问题,本文提出了一种基于Multi-CNN空间特征提取的高光谱遥感影像分类模型。该模型将原始高光谱遥感影像作为输入,经过对尺度空间特征提取、特征融合、卷积运算、Normalization运算、Dropout运算和全连接运算,输出为最终的分类结果。该模型具有如下特点:
1)不同于以往的人工设计的图像特征,该模型可以自动从不同的尺度提取输入数据的空间特征;
2)由于采用了多尺度特征提取,使得更多的样本点参与到分类中,解决了难以获得大量有标记高光谱遥感影像样本的问题;
3)本文所提出的模型由多尺度卷积空间特征提取层、特征融合层、1×1卷积核、全局池化层和Dropout层组成,实验结果表明该模型更适合于高光谱遥感影像分类。
在伊春凉水林场数据集上的实验结果表明,本文所提出的分类模型在分类正确率上优于其他分类模型,分类正确率达到了92.31%。