一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于剪枝元学习的小样本SAR图像目标检测方法

2022-06-29 22:28:46 来源:中国专利 TAG:

一种基于剪枝元学习的小样本sar图像目标检测方法
技术领域
1.本发明属于雷达技术领域,特别涉及一种基于剪枝元学习的小样本sar图像目标检测方法。


背景技术:

2.合成孔径雷达(synthetic aperture radar,sar)是一种主动式微波成像雷达,它具有全天时、全天候的观测能力。随着sar成像技术的发展,sar图像检测技术已经广泛应用于军事领域。然而,sar图像与传统的光学图像有较大的差异,目标特征不明显,目标尺寸小且成像时存在的相干斑、叠掩现象等都会造成对目标的误判、漏判,这使得sar图像舰船目标检测困难重重。
3.近年来,随着深度学习的发展,基于卷积神经网络(convolutional neutral network,cnn)的目标检测算法取得了优异的成果,并广泛的应用于遥感图像目标检测领域,克服了传统方法存在的困难。目前基于cnn的目标检测算法可以分为两大类:双阶段目标检测器和单阶段目标检测器。双阶段目标检测算法以faster r-cnn、fast r-cnn、mask r-cnn为代表,双阶段目标检测器较好的检测精度,但获取候选框的阶段耗时耗力导致其检测速度较慢。单阶段目标检测算法以yolo、ssd为代表,单阶段算法虽然提高了检测速度,但是牺牲了检测精度。为了提高检测精度,单阶段目标检测算法yolov3、yolov4、yolov5相继推出,其中,yolov5在小目标检测上取得了较好的效果且速度和精度都有了显著的提高,是目前最先进的目标检测技术之一。
4.基于深度学习的目标检测算法在检测的准确率和速度上都取得了显著的效果。然而,深度学习方法的特点是需要大量的训练样本作为支撑,但sar舰船图像采集成本高,采样条件复杂,且标记过程耗时耗力,很难获得大量已标记的sar舰船样本,样本数量较少,这使得传统的深度学习目标检测算法的效果并不理想。大多数工作主要研究小样本数据的分类任务,小样本目标检测的任务却很少受到关注。与分类任务不同,目标检测主要包含两个子任务:分类和定位。因此将小样本学习集成到目标检测中是一项更具挑战性的任务。
5.元学习能够利用从少量样本中学习到的元知识作为网络模型的先验以实现对新任务的快速学习,在有效提升训练时间的同时保证一定的算法精度,提高了模型泛化能力。然而传统的以图像检测为代表的网络结构为了应对大量标签任务,往往采取较深的卷积过滤器和网络层数,这样复杂的网络在训练结束后往往参数被固定,而元学习需要在适应新场景时修改网络参数,过多的参数带来了过拟合的风险,也拖慢了适应速度,因此速度与计算空间开销优先的网络便成为优化方向之一。


技术实现要素:

6.本发明的目的在于克服上述现有技术的缺点,提供一种基于剪枝元学习的小样本sar图像目标检测方法。
7.为达到上述目的,本发明采用以下技术方案予以实现:
8.一种基于剪枝元学习的小样本sar图像目标检测方法,包括以下步骤:
9.1)构建sar图像舰船检测的稀疏训练数据集、元训练数据集和元测试数据集;将sar图像作为样本的输入,sar图像的舰船目标作为标签;
10.2)对单阶段目标检测器yolov5进行稀疏化训练,之后并做剪枝处理,得到轻量化目标检测器;
11.3)在所述轻量化检测器的基础上加入maml算法,得到元学习器,利用所述元训练数据集进行训练,得到训练后的元学习器;
12.4)以所述元学习器的参数作为初始化参数,利用元测试数据集的一个任务的支持集对所述初始化参数进行一步更新,得到适用于当前任务的元学习器;
13.利用元测试数据集的当前任务的查询集输入所述元学习器内,得到检测任务检测精度、检测任务目标的定位与分类。
14.进一步的,步骤1)包括:
15.从ssdd数据集中随机采样若干张样本构建稀疏训练数据集;
16.从ssdd数据集中随机采样若干张构建元训练数据集;
17.从ssdd、sar-ship-dataset、air-sarship-1.0、hrsid和ls-ssdd-v1.0数据集中各采样若干张构建测试数据集;
18.其中,稀疏训练集、元训练数据集和元测试测试集的数据不重合。
19.进一步的,步骤2)具体包括:
20.201)选择单阶段目标检测器yolov5中能够执行剪枝处理的网络通道进行剪枝设置,同时构造新的网络损失函数,以所述稀疏训练数据集作为输入,根据新的网络损失函数对单阶段目标检测器yolov5进行训练,训练完毕后得到稀疏网络;
21.202)判断得到的稀疏网络是否满足剪枝要求,若满足,则对网络通道进行剪枝得到轻量化检测器;否则,返回201)。
22.进一步的,步骤201)中若单阶段目标检测器yolov5的网络结构中出现卷积结果相加,则所述网络结构不执行剪枝操作;否则,将所述网络结构的bn层中的γ参数设置为网络通道剪枝的比例因子;
23.步骤201)中构建新的网络损失函数如公式(1)所示
[0024][0025]
其中,公式(1)中前三项为yolov5的损失函数,包含边框回归损失l
reg
、目标置信度损失l
conf
以及分类损失l
cls
,其中,j为第j个样本,t*,c*,obj*分别表示真实目标的坐标、类别以及置信度;最后一项为γ的正则化项,λ为惩罚系数;
[0026]
步骤201)中训练过程为:
[0027]
以公式(1)为目标函数对网络进行反向传播,联合训练网络权重θ和比例因子γ,得到稀疏网络。
[0028]
进一步的,步骤202)中对网络通道进行剪枝的具体操作为:
[0029]
获取能够剪枝网络通道的每一个bn层参数γ绝对值的最大值,将所述最大值中的最小值设置为剪枝上限值;
[0030]
设置剪枝比例t,按比例因子γ的绝对值进行排序,取从小到大排序的比例因子中
t%的位置对应的比例因子为剪枝阈值,若剪枝阈值大于所述最小值,则满足剪枝要求,剪掉低于阈值的通道;否则,为不满足剪枝要求,返回步骤2),重新设置惩罚系数λ。
[0031]
进一步的,步骤3)包括以下步骤:
[0032]
(301)对元训练数据集进行one-way k-shot的任务划分;
[0033]
(302)将分布为p(t)元训练数据集划分为多组任务,每组任务由多个不同的任务组成,每一个任务均包含一个支持集和查询集,其中,支持集和查询集中均包含k张sar图像样本,查询集和支持集的样本不重合;
[0034]
将一个任务作为轻量化检测器的一组样本;
[0035]
(303)将一组任务的支持集输入元学习器中,计算总损失并进行反向传播,对网络参数进行一次更新得到一组处于中间状态的元学习器;
[0036]
(304)将所述任务的查询集样本输入到处于中间状态的元学习器中,计算网络总损失并进行反向传播完成一次更新;
[0037]
(305)重复步骤(303)~(304),直至所有任务均输入完成,完成训练。
[0038]
进一步的,步骤(303)所述的中间状态的元学习器,具体表示为:
[0039][0040]
其中,i指第i个任务,θ为元学习器的参数,θ
′i为元学习器中间状态的参数,α指内部学习率,l(f
θ
)是元学习器的损失函数,是以支持集样本作为元学习器的输入所产生的总损失对参数θ的梯度。
[0041]
进一步的,步骤(304)中元学习器的目标函数为:
[0042][0043]
其中,为查询集样本作为中间状态的元学习器的输入得到的损失。
[0044]
进一步的,步骤(304)中元学习器参数的一次更新具体表示为:
[0045][0046]
其中,β是元学习器的外部学习率。
[0047]
与现有技术相比,本发明具有以下有益效果:
[0048]
本发明的基于剪枝元学习的小样本sar图像目标检测方法,利用network slimming算法对单阶段目标检测器yolov5做剪枝处理,再将元学习与剪枝后的轻量化检测器相结合,解决了元训练过程中由于参数繁多造成的过拟合等问题,面对小样本新任务时,能够快速微调网络适应新任务,提高sar舰船目标检测在同一数据集的准确性和跨数据集的泛化能力。本发明在面对小样本新任务时,能够快速微调网络适应新任务,在新任务上较强的检测能力。同时,剪枝后的网络加入maml算法,解决了元训练过程中由于参数繁多造成的过拟合等问题,加快了模型训练速度,降低了对计算机资源的要求,提高了小样本sar图像的目标检测精度。本发明得到的元学习器能够克服遗忘,除了在小样本新任务上获得较高的检测精度外,还能够保持对旧任务的检测性能。
附图说明
[0049]
图1为本发明提供的基于剪枝元学习的小样本sar图像目标检测方法的总体框架图;
[0050]
图2为本发明提供的元训练一次迭代示意图;
[0051]
图3为本发明与对比算法在测试集的部分新任务和基础任务上的检测结果对比图,其中,图3(a)~图3(e)依次为在ssdd、sar-ship-dataset、air-sarship-1.0、hrsid、ls-ssdd-v1.0数据集上的部分表现;
[0052]
图4为本发明与分别加入maml算法、剪枝算法的yolov5目标检测器在测试集的部分新任务和基础任务上的检测结果对比图,其中,图4(a)~图4(e)依次为在ssdd、sar-ship-dataset、air-sarship-1.0、hrsid、ls-ssdd-v1.0数据集上的部分表现。
具体实施方式
[0053]
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0054]
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0055]
下面结合附图对本发明做进一步详细描述:
[0056]
请参阅图1所示,本发明提出的基于剪枝元学习的小样本sar图像目标检测方法,构建了一个完整的小样本sar图像舰船目标检测框架。总体框架如图1所示,主要分为四个阶段:构建数据集、稀疏训练 剪枝、元训练、元测试四个阶段。
[0057]
1)构建数据集:构建sar图像舰船检测的稀疏训练数据集、元训练数据集和元测试数据集;sar图像作为样本的输入,sar图像的舰船目标作为标签;
[0058]
从ssdd数据集中随机采样910张样本构建稀疏训练数据集,采样200张构建元训练数据集;从(a)ssdd、(b)sar-ship-dataset、(c)air-sarship-1.0、(d)hrsid、(e)ls-ssdd-v1.0数据集中各采样50张构建测试数据集。其中,稀疏训练集、元训练数据集和测试集的数据不重合。
[0059]
2)稀疏训练 剪枝阶段:使用network slimming算法对单阶段目标检测器yolov5(you only look once)稀疏化训练并做剪枝处理,得到轻量化目标检测器。
[0060]
2.1稀疏训练
[0061]
network slimming算法是一种通道级的稀疏化裁剪的方法,通过对网络通道进行裁剪达到网络压缩的目的,network slimming引入一个比例因子γ,即bn层的可学习参数
对网络稀疏化处理,γ对应网络的每一个通道。在原网络的损失函数中加入γ的正则化项,通过训练网络对γ稀疏正则化,最后裁剪掉数值较小的γ及其对应通道。
[0062]
在单阶段目标检测器yolov5(you only look once)中加入network slimming算法对网络稀疏训练,得到训练完毕的稀疏网络包含以下步骤:
[0063]
(1)选择yolov5中可执行剪枝操作的部分网络通道,若该部分中出现卷积结果相加,则该部分不能执行剪枝操作,否则,将网络通道bn层中的可学习参数设置为网络通道剪枝的比例因子γ;
[0064]
(2)在yolov5的损失函数中加入γ的正则项,设置λ的值,构造新的网络损失函数,新的网络损失函数为:
[0065][0066]
其中,公式(1)中前三项为yolov5的损失函数,主要包含边框回归损失l
reg
、目标置信度损失l
conf
以及分类损失l
cls
,其中,j为第j个样本,θ为网络参数,t*,c*,obj*分别表示真实目标的坐标,类别以及置信度;最后一项为γ的正则化项,λ为惩罚系数。
[0067]
(3)以公式(1)为目标函数对网络进行反向传播,联合训练网络参数θ和比例因子γ。
[0068]
2.2剪枝
[0069]
获取可剪枝部分每一个bn层参数γ绝对值的最大值,并按从小到大对这些最大值进行排序,设置剪枝上限值为最大值的最小值。设置剪枝比例,若剪枝比例为t,则整个网络中将被剪去t%的通道,将比例因子γ按照绝对值大小进行排序,取从小到大排序的比例因子中t%的位置的比例因子为剪枝阈值,若剪枝阈值大于上限值,则满足剪枝要求,剪掉低于阈值的通道;否则不满足剪枝要求,重新设置惩罚系数λ,重新对网络进行稀疏训练;
[0070]
稀疏训练 剪枝阶段得到的轻量化检测器为下一步的元训练提供了网络基础,避免元训练因为参数过多出现的欠拟合或者过拟合问题,提高网络泛化能力;同时减少了网络参数,加快了模型训练速度,降低了对计算机资源的要求。
[0071]
3)元训练阶段:使用maml算法元训练轻量化检测器,并迁移其网络权重,得到元学习器,得到一组泛化能力强的参数。
[0072]
maml算法是一种基于优化的元学习算法,maml算法的关键是训练一组好的模型初始化参数,使模型能够面对具有少量样本的新任务时,只需要对参数执行数次梯度更新就能得到优异的表现。在轻量化检测器的基础上加入maml算法对网络进行元训练,元训练的具体步骤包括以下步骤:
[0073]
(1)迁移轻量化目标检测器的权重,初始化元学习器的权重为轻量化目标检测器的权重。
[0074]
(2)从元训练的思想出发,对元训练数据集进行one-way k-shot的任务划分。每个训练回合从分布为p(t)元训练数据集采样n个不同的任务,每一个任务均包含一个支持集和查询集,其中支持集和查询集中均包含k张sar图像样本,且查询集和支持集的样本不重合,一个任务作为元学习器的一个样本。
[0075]
(3)将支持集输入元学习器中,计算总损失并对网络参数进行一次更新得到元学习器的过渡状态,具体表示为:
[0076][0077]
其中,i指第i个任务,θ为元学习器的参数,θ
′i为元学习器过渡状态的参数,α指元学习器的内部学习率,l(f
θ
)是元学习器的损失函数,是以支持集作为元学习器的输入所产生的总损失对参数θ的梯度。
[0078]
(4)将第i个任务的查询集输入到处于过渡状态的元学习器中计算网络总损失;
[0079]
重复步骤(3)~(4),直至n个任务完成,对查询集上总损失取均值并反向传播完成一次元学习器的一次更新。元学习器为加入maml算法的轻量化目标检测器,目标函数为:
[0080][0081]
其中,为查询集作为中间状态的元学习器的输入得到的损失。元学习器参数的一次更新具体表示为:
[0082][0083]
其中,β是元学习器的外部学习率。
[0084]
为了更清楚地说明元训练的过程,图2为元训练一次迭代的训练流程图,以3个任务为例,迭代前模型初始参数为θ0,迭代后为θ1。当训练一组新任务时,首先采样任务计算参数为θ0时支持集上的损失值lossi(θ0),并利用内部学习率α对θ0更新,得到更新参数θi′
;其次采样任务t
iq
并计算参数为θi′
时查询集上的损失值lossi(θi′
);最后对查询集上的损失求均值,并利用外部学习率β对初始参数θ0更新得到θ1,完成一次优化。
[0085]
元训练阶段主要利用元学习的思想对轻量化检测器进行训练以获得一组泛化性能强的初始化参数。通过元训练,得到一组对任务敏感的参数,在面对小样本新任务时,能够快速微调网络适应新任务,这意味着模型不会只针对特定的任务去学习样本特征,而是通过不同的任务来学习学习能力。
[0086]
4)元测试阶段:对测试数据集进行元测试,得到对新任务的检测精度和新任务目标的定位与分类。
[0087]
在元训练结束后,此时轻量化目标检测模型获得了一组泛化性能良好的初始化参数,能够快速适应新任务的状态。当少量sar图像检测样本出现时,该模型仅使用少量新任务微调网络就能快速适应新任务的样本。利用测试数据集中少量样本微调得到ssdd、sar-ship-dataset、air-sarship-1.0、hrsid和ls-ssdd-v1.0上的检测精度和检测结果预测图。该模型保持在旧任务上的检测性能,同时在新任务上也具备较强的检测能力。
[0088]
元测试主要利用元训练阶段得到的初始化参数作为新任务的初始权重,并利用新任务的训练样本对网络模型微调后,快速准确的检测新任务的测试样本并获得最终检测结果。
[0089]
实施例
[0090]
为了验证上述方法对小样本sar图像数据集检测的有效性,设计了以下实施例:
[0091]
在测试集的新任务和旧任务上对检测性能进行评价,评价指标使用ap(平均精
度)。为保证实验结果的公平性,采用一致的实验设置,稀疏训练迭代1000步对应传统训练1000步,元训练1000步对应微调1000步。初始学习率设置为0.001,批处理大小设置为48,优化方法为随机梯度下降,动量设置为0.937,正则化系设置为0.0005。元训练的每个训练回合从分布为p(t)元训练数据集采样n个不同的任务,n设置为4,一个任务包含24个样本,选择其中12个作为支持集,其余的12个作为查询集。
[0092]
将本实施例与faster r-cnn、yolov5、meta-ssd作对比,检测结果如表1所示,可以看出,本实施例在基础任务上和所有新任务上的平均精度均好于对比方法。因此,说明实施例能够从元训练数据中学习到充分的先验知识,学到了一组适应能力较强的初始参数,能够快速对自身参数进行调整以适应新的任务,有更强的泛化能力。图3为本实施例和对比例在测试集的部分新任务和基础任务上的检测结果图,图3中每一行分别代表不同的数据集,每一列为不同的方法,其中,第一列为图像中目标实际所在位置。从图3可以看出,图3(c)、图3(e)为极小目标,除了本方法外,其他方法都无法检测出目标,验证了本文方法在极小目标上的检测能力也较强。在其他数据集上,本文方法的误检率和漏检率较低,且标记出目标的置信度较高,进一步验证了本文方法在小样本数据集上的检测能力更优,泛化能力更强。
[0093]
表1不同检测方法在基础任务和旧任务上小样本检测性能
[0094][0095]
为了评估maml算法和network slimming剪枝算法对本实施例的影响,另外设计了一组消融实验,本技术中network slimming算法统一写成ns。可以看出,加入maml算法,可以提升yolov5目标检测器对新任务的检测性能,但其泛化能力不稳定,在sar-ship-dataset和air-sarship-1.0上出现了检测性能下降。剪枝后微调的网络虽然在新任务上的检测性能有所提升,但不能克服遗忘,即在基础任务上的检测性能显著下降。而本方法既可以克服遗忘,由具有稳定的泛化性能,即在新任务上具有较高的检测精度。图4为本实施例和分别加入maml算法、剪枝算法的yolov5目标检测器在测试集的部分新任务和基础任务上的检测结果图,从图4可以看出,不同数据集目标特征存在一定的差异性,本方法不论是在差异性较小的数据集还是差异性较大的数据集上检测能力都是最强的。数据集图4(c)和图4(e)图像目标较小,特征不明显,在此种情况下,yolov5 maml和yolov5 ns finetune都无法检测到目标,本方法可以实现对目标的识别与定位。在其他数据集上,相较仅加入maml算法或剪枝算法的yolov5检测器,本方法漏检和误检的数量也更少,说明本方法具有更好的检测能力,即面对新任务时可以通过少量样本学习到目标的某些基础特征,仅需一步更新
就可以获得较好的检测结果,解决了传统深度学习方法需要大量样本训练模型的问题。
[0096]
表2消融实验结果
[0097][0098][0099]
以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献