APP下载

基于模型迁移的遥感影像场景分类方法对比研究

2022-06-19杜梓维苏友能洪丹阳白思雨

关键词:深度分类图像

刘 波, 杜梓维, 刘 华, 苏友能, 洪丹阳, 白思雨

(东华理工大学 测绘工程学院,江西 南昌 330013)

遥感影像场景分类是将遥感图像信息进行提取,根据图像特征对场景实行分类(章晨等,2020),广泛应用于地质调查(吴志春等,2013)、生态环境监测(程朋根等,2015)、生态质量评价(李万钰等,2020)等领域。

随着深度学习方法与技术的不断发展,其在图像分类中的应用越来越广泛。相较于传统线性回归分类方法(龚循强等,2019),深度学习的图像分类方法能够很好地发现隐藏在高维图像数据中的复杂结构和判别信息。VGG、GoogLeNet、ResNet等深度学习网络的提出,提高了图像分类准确度(Szegedy et al.,2015; He et al.,2016)。另外,通过特征融合,改进网络结构等方式来完成遥感影像场景分类,也能取得较好的分类效果(张桐等,2020;杨州等,2018;Tombe et al., 2020; Guo et al.,2020)。训练和使用以上现有的高性能网络时,往往需要考虑数据获取、数据标注、计算资源是否满足实际需求等问题,这些问题也影响了已有高性能深度学习网络的进一步应用。

迁移学习方法从目标任务相似性出发,充分利用历史源域数据在计算能力强的设备上训练好的模型信息,解决了目标任务数据稀缺、领域分布异构的问题,满足了实际应用中个性化需求(Pan et al.,2010)。该方法恰好能解决使用深度学习网络时所遇见的问题,因此基于迁移学习的深度学习方法在遥感影像分类中得到了广泛的应用。李冠东等(2019)利用参数迁移方法训练了Inception-v3模型,完成了遥感影像分类。乔婷婷等(2020)结合了数据增广和迁移学习方法,训练了几种常用卷积神经网络,完成了遥感影像分类。余东行等(2020)结合了迁移学习和集成学习方法,在只有10%的数据作为训练样本情况下,也取得了很好的分类效果。Zhang等(2020)基于迁移学习方法迁移了VGG16网络前13层作为主结构,并增加6层网络结构来提取遥感影像更深层次特征,从而提高了分类精度。Li等(2018)提出了一个高分辨率遥感影像多模型特征提取框架,将不同网络模型通过迁移学习方法提取的特征进行了融合,从而提高了分类精度。Zhao等(2019)等结合了迁移学习和PCA方法,提出了一种非对称异构模型,解决了源数据和目标数据之间的不匹配问题,提高了预训练CNN模型的泛化能力。Yao等(2017)等利用迁移学习训练了Inception-v5网络模型,结合视觉词包和随机森林方法,得到了广州市珠海区的土地利用分类结果。Limar等(2019)阐述了遥感影像分类中迁移学习在不同数据集和不同深度学习网络模型中的应用情况,但没有讨论不同迁移方法在不同深度学习网络上的学习性能。

综上所述,虽然迁移学习方法在深度学习应用中取得了较好的成果,但目前关于不同迁移方法在不同深度学习网络上学习的特性、迁移源域的差异等方面研究较少。为了更好地了解迁移学习在深度学习中的应用情况,本研究对比分析了不同的模型迁移方法在不同深度的ResNet网络上的迁移特性,以及迁移源域的差异对于迁移学习结果的影响,探讨如何利用迁移学习的方法更好地完成遥感影像的场景分类,为遥感影像场景分类在方法、模型、数据集等方面的选择上提供参考。

1 模型迁移的原理与方法

1.1 残差网络

残差网络是由微软实验室提出的卷积神经网络,其运用了批量标准化解决了网络训练时间长,收敛慢甚至不收敛问题。利用如图1所示残差模块完成了浅层和深层残差网络搭建,有效解决了随着训练进行,网络性能趋于饱和甚至下降的深度网络退化问题(He et al.,2016)。

1.2 迁移学习

迁移学习是一种运用已有知识对不同但相关的领域问题进行求解的机器学习方法(Pan et al.,2010)。实现迁移学习方法有样本迁移、特征迁移、参数迁移、关系迁移和混合迁移等5种。其中参数迁移为本研究采用的方法。通过深度学习网络利用参数迁移方法能够更快、更好地完成模型训练。在遥感影像场景分类中,即先采用预训练CNN模型参数迁移,后对遥感影像进行特征提取,再利用全连接层和分类器完成场景分类任务。

本实验在Pytorch深度学习框架下实现。Pytorch框架提供了微调网络和冻结网络参数迁移方法。这2种模型迁移方法过程如图2所示,均使用了预训练模型参数作为网络的初始权重参数,而不是通过随机初始化来得到网络权重参数。微调网络方法(图2A)会在导入预训练网络模型参数的基础上进行网络训练。冻结网络参数方法(图2B)会冻结神经网络特征提取部分,将神经网络作为一个固定的特征提取器,只训练最后用于分类的全连接层部分。深度学习训练大量数据需要极强的计算能力,耗费大量时间,但使用预训练模型迁移能够在普通笔记本电脑上花费很短的时间得到很好的训练结果。

2 模型迁移的遥感影像场景分类实验

2.1 实验基本配置和数据集

本实验采用Python编程语言,在Pytorch深度学习框架下实现,实验基本配置如表1所示。

表1 实验基本配置

本实验采用3类公开的高分辨率遥感影像数据集,数据集的分布特点如下。

(1)UC Merced Land-Use数据集(Yang et al.,2010)是用于研究21级土地利用的遥感影像数据。该数据选自美国USGS国家城市地图图像中不同地区的航空遥感影像,包含了农田、机场、棒球场、沙滩、建筑物等21类图像,每类有100张图片,共有2 100张。每张图片分辨率为0.3 m,图像大小为256像素×256像素,其部分数据图像如图3A所示。

(2)RSSCN7数据集(Zou et al.,2015)是武汉大学2015年发布的遥感影像数据。基于4个不同的尺度采集了7个类别的场景图像,包括草地、森林、农田、停车场、住宅区、工业区和河流湖泊。其中每个类别有400张图片,共有2 800张。每张图像大小为400像素×400像素,其部分数据图像如图3B所示。

(3)NWPU-RESISC45数据集(Cheng et al.,2017)是西北工业大学发布的遥感影像数据集。包含了飞机、机场、棒球场、篮球场等45个类别的遥感影像,其中每个类别有700张图片,共有31 500张图片,图像大小为256像素×256像素,其部分数据图像如图3C所示。

2.2 对比实验

2.2.1 基于ImageNet数据集训练的ResNet网络模型迁移对比实验

将UC Merced Land-Use数据集按8∶1∶1的比例划分为训练集、验证集和测试集。根据ResNet网络结构的深度设置不同的batch_size,整个数据集迭代30个epoch。以ResNet18为例,batch_size=64,训练集图片共有1 680张,1个数据集需要迭代27次,30个epoch共迭代810次。实验对比微调网络、冻结网络参数2种参数迁移方法,以及随机初始化权重参数重新训练网络的结果。2种模型迁移方式都是利用Pytorch框架提供的在ImageNet数据集上训练的ResNet18/34/50/101网络模型进行参数迁移,训练时训练集损失值和验证集精度变化如图4所示。在验证集准确率变化图中(图4B,D,F,H)圆圈表示在30个epoch以下验证集分类准确率最高时对应的epoch。网络模型在UC Merced Land-Use数据集分类精度和训练过程统计结果如表2和表3所示。以ResNet18为例,微调网络和冻结网络参数方法在UC Merced Land-Use数据集上分类精度为99.3%和85.2%。其类别分类准确率如表4所示,数据集混淆矩阵如图5所示。

2.2.2 数据集ImageNet和Places365源域迁移对比实验

Places365数据集(Zhou et al.,2018)是由MIT发布的场景图像数据集,该数据集总共包含了1 000万张图像,400多个不同类型的场景环境,范围广泛,数据庞大,对于场景分类模型的训练具有很强的帮助性。考虑到Places365数据集的图像纹理、线条、色彩、结构、空间上的特征与目标域的遥感影像有更多的相同之处,因此实验迁移基于Places365数据集训练的ResNet18/50模型,对比这2种迁移方法在不同源域数据集上的迁移结果。

实验数据集为2.1节所示数据集,其中RSSCN7和NWPU-RESISC45数据集也按照8∶1∶1的比例划分数据集。实验使用ResNet18/50网络结构进行参数迁移,将数据集迭代20个epoch。以RSSCN7数据集为例,ResNet18/50网络上在不同源域验证集分类准确率变化如图6所示,数据集基于ImageNet和Places365源域进行迁移后,ResNet18微调网络的方式在RSSCN7数据集准确度能够达到97.1%和98.6%,其数据集混淆矩阵如图7所示。UC Merced Land-Use、RSSCN7和NWPU-RESISC45数据集迁移学习分类准确率统计结果如表5所示。

表2 ResNet网络模型分类准确率

表3 ResNet网络训练过程统计表

表4 ResNet18网络在UC Merced Land-Use数据集上各类别准确率

3 实验结果对比分析

3.1 基于ImageNet数据集训练的ResNet网络模型迁移对比实验

(1)与冻结网络参数、重新训练网络方式相比(图4,表3),微调网络训练的网络模型鲁棒性更好,能在很少的epoch迭代下获得一个泛化能力更好的网络模型,但耗时与重新训练一个完整的神经网络时间一致。若网络模型参数较多、深度较深,需要耗费很多计算资源和训练时间。

与微调网络、重新训练网络方式相比,冻结网络参数方式节省了计算资源和训练时间,但模型的泛化能力不如微调网络。随着网络深度加深,ResNet50/101损失函数的损失值会比ResNet18/34下降得更快,且神经网络的特征提取部分表现得更好,使得只训练全连接层的网络模型也能取得很好的分类效果。

(2)冻结网络参数方式在类间相似的类别(表4,图5),如密集住宅区、中等住宅区分类准确度较差,而微调网络方式能很好地改善这一问题,提高了分类准确度。

(3)2种参数迁移方式整体上优于重新训练一个神经网络,且随着网络深度加深,在ResNet50/101上表现更为明显,训练时损失值会降得更低,验证集分类准确率会更高。另外,迁移学习省去了烦琐的调参过程,能够更快、更好地训练一个符合应用需求的神经网络模型。

3.2 数据集ImageNet和Places365源域迁移对比实验

(1)不同源域迁移在验证集上精确度变化相差不大(图6),与目标域相关性更高的Places365源域微调网络训练的模型,泛化能力更好,在数据集上的分类准确度要高于ImageNet训练的模型。从RSSCN7数据集混淆矩阵(图7)可以看出,相关度越高的模型,能进一步减少类间相似分类错误问题。冻结网络参数训练的模型,虽然能更快收敛提升验证集的精度,但模型在数据集泛化能力上不如ImageNet训练的网络模型,整体表现较差。

(2)从不同数据集分类准确率统计表(表5)可以看出,训练的ResNet网络在UC Merced Land-Use、RSSCN7、NWPU-RESISC45数据集上分类准确率最高分别为99.5%、98.6%、97.8%,表明基于模型迁移训练的网络模型很好地完成了遥感影像场景分类任务,且很好地解决了遥感领域高质量标签数据缺乏的问题。

(3)从实验可以看出,深度学习框架提供的预训练模型不能适用所有情况下的模型训练,为了满足实际应用个性化需求,可以使用与目标域相关性很高的开源模型进行参数迁移,将其模型参数作为网络初始化权重参数,能更快地完成实际应用模型的训练。

4 结论

(1)参数迁移训练的ResNet网络在UC Merced Land-Use、RSSCN7、NWPU-RESISC45数据集上分类准确率最高分别为99.5%、98.6%、97.8%,说明参数迁移方法很好地完成了遥感影像的场景分类。

(2)当计算机硬件设备满足需求时,使用微调网络的方法能够训练出一个鲁棒性、泛化能力更好的网络模型。冻结网络参数的方法能够更快地训练好一个神经网络模型,虽然其鲁棒性不如微调网络训练的模型,但当迁移的网络模型具有足够的深度和特征提取能力时,也能训练出一个比较好的网络模型。

(3)当深度学习框架提供的预训练模型不能满足实际应用时,可以选择与目标任务相关性更高的源域训练的模型进行参数迁移,以此满足实际的应用需求。

表5 ResNet18/50不同数据集模型迁移分类准确率统计表

猜你喜欢

深度分类图像
四增四减 深度推进
深度思考之不等式
基于生成对抗网络的CT图像生成
浅析p-V图像中的两个疑难问题
巧用图像中的点、线、面解题
简约教学 深度学习
按需分类
教你一招:数的分类
说说分类那些事
给塑料分分类吧