1.本发明属于图像信息处理技术领域,特别是涉及遥感图像目标识别的方法。
背景技术:
2.目前,与本专利相关的方法包括两方面:第一是基于深度学习的长尾分布图像目标识别算法;第二是基于特征表示的蒸馏学习算法。
3.基于深度学习的长尾分布图像目标识别算法主要分为三类:一类是对长尾分布数据进行重采样的方法,在训练集上实现样本平衡,包括对头部样本欠采样以及对尾部样本过采样。ren等人在文献《ensemble based adaptive over-sampling method for imbalanced data learning in computer aided detection of microaneurysm》中提出了一种基于集成的自适应过采样算法,减少了不平衡数据引入的归纳偏差,克服了假阳性减少中的类不平衡问题。一类是给不同类别的损失设置不同权重的方法,通常会对损失函数中的尾类分配较大的权重,对头类的权重相对较小,使损失函数更关注尾类,加强尾类的优化。cui等人在文献《class-balanced loss based on effective number of samples》中引入了一种新的理论框架,通过与每个样本的一个小的邻近区域关联来测量数据重叠,并设计了一个重新加权方案,使用每个类的有效样本数来重新平衡损失。第三类是最近提出的多专家网络,训练一个多专家网络,然后设计不同的方法来结合不同专家网络的学习结果。wang等人在文献《long-tailed recognition by routing diverse distribution-aware experts》中提出了一种新的共享早期层和独立的通道减少的后期层的多专家模型,通过分布感知多样性损失减少了模型偏差,通过动态专家路由模型降低了计算成本。
4.基于特征表示的蒸馏学习算法的研究也有多种方式,例如,he等人在文献《distilling virtual examples for longtailed recognition》中从知识精馏的角度解决了长尾视觉识别问题,提出了一种虚拟实例的提取方法。ju等人在文献《relational subsets knowledge distillation for long-tailed retinal diseases recognition》中提出了根据先验知识将长尾数据划分为多个类子集并分别进行学习,强制模型集中学习特定于子集的知识。zhang等人在文献《balanced knowledge distillation for long-tailed learning》中通过最小化实例平衡分类损失和类平衡蒸馏损失的组合来训练学生模型,解决了修改分类损失以增加对尾类的学习重点但却牺牲了头类的性能的问题。
5.现实生活中的数据通常呈现极端不平衡现象,使得真实数据的分布通常呈现出“长尾”分布的形态。另外,针对于遥感图像的目标识别问题,同样可以使用自然域的图像的目标识别方法来完成,但是遥感图像和自然图像在域上具有较大的差别,直接使用准确度必然下降。因此由于遥感数据集呈现极端的长尾分布状态,导致使用传统分类器对遥感图像分类时性能恶劣。我们的方法将整个过程分为两个阶段,第一阶段将呈长尾分布的数据集根据每个类别的数量划分成三个子集分别训练三个教师模型,由于大量数据训练的模型具有良好的特征提取能力,为了充分利用这一优势,提出教师模型之间渐进式学习,第二个阶段可以利用已经训练好的教师模型辅助学生模型进行学习,这个过程中我们还提出自校
正采样学习方法,有效的针对每个训练迭代过程中学生模型的学习结果动态更新采样权重,增加学生模型的识别准确度。
技术实现要素:
6.针对提升遥感网络识别准确度的问题,提出了一种利用头尾数据之间的联系,并结合知识蒸馏完成遥感图像分类的方法。我们使用结构相同的三个教师模型与一个学生模型。提出了渐进式教师模型的学习以及自校正采样算法,在学生模型训练过程中可以很好的解决长尾问题,使最终的分类准确度得到提升。
7.本发明的技术方案:
8.一种逐步蒸馏学习的长尾分布的遥感图像目标识别方法,步骤如下:
9.整个训练过程主要分为教师模型的训练阶段和学生模型的训练阶段;
10.(1)教师模型的训练阶段
11.构建一个基础的分类网络用于教师模型的训练:resnet50的前四个模块作为网络的特征提取主干的卷积模型,resnet50的第四个模块输出的特征作为辅助其他教师模型进行训练的特征表示;
12.首先将呈长尾分布的训练集划分成三个子集,分别为头部子集、中部子集和尾部子集;教师模型包括头部教师模型、中部教师模型和尾部教师模型;将头部子集输入到对应的头部教师模型中,训练出一个具有良好特征提取能力的头部教师模型,然后将中部子集输入到对应的中部教师模型中,在进行训练时,该中部子集还将输入到头部教师模型中,此时头部教师模型冻结,将头部教师模型第四个模型输出的特征与中部教师模型对应位置对应图片的特征进行比较,对比的mse损失为:
[0013][0014]
其中,下角标m表示中部教师模型,fm'和fm分别为头部和中部教师模型的特征,n为batch size;
[0015]
同样,训练尾部子集对应的尾部教师模型时,利用头部教师模型和中部教师模型进行辅助训练,对比的mse损失为:
[0016][0017]
其中,下角标t表示尾部教师模型,f
″
t
、f
t
'和f
t
分别为中部、头部和尾部教师模型的特征;
[0018]
通过式(1)和(2)的约束可训练得到三个特征提取能力以及分类能力都比较好的教师模型th、tm和t
t
;
[0019]
(2)学生模型的训练阶段
[0020]
在第二个阶段进行学生模型的训练时,将th、tm和t
t
学到的知识蒸馏到学生模型中,学生模型的网络结构与教师模型的网络结构完全相同;由于学生模型在学习开始时对任何类都具有相同的特征提取能力,因此在每次训练开始时采用均匀采样,然后再使用提出的自校正采样学习;具体来说,教师模型第四个模块输出的特征与学生模型对应位置对应图片的特征进行比较,该mse损失为:
[0021][0022]
其中,f'和f分别为教师模型和学生模型的特征;然后,根据损失l
mse
来评估学生模型的学习质量,设计了一个公式来根据l
mse
得到每个类的权重w:
[0023]
w=α
×
log(l
mse
+1)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)
[0024]
其中,α为超参数;最后将获得的权重w应用到采样器中,学生模型对应某一类学习质量越好,损失越小,w越小,所以该类在下一个batch中的采样概率越小,反之亦然;
[0025]
另外,三个学生模型和教师模型的分类损失函数都是相同的,每个模型的分类损失为:
[0026][0027]
其中,c为数据集的类别,fi为模型分类的概率,yi为真值;
[0028]
最终教师模型学习到的知识全部蒸馏到学生模型中,并且利用自校正采样算法让学生模型对于某个学习效果不好的类进行再次学习。
[0029]
本发明的有益效果:本发明的长尾遥感图像目标识别的逐步蒸馏学习方法,利用了蒸馏的方法以及提出的渐进式教师学习和自校正采样学习算法,增强了网络特征提取能力,目前存在的解决长尾问题的各种方法仍然存在各种弊端,比如:不能充分利用头部数据的优势、对超参数敏感等等,本发明的逐步蒸馏学习方法方法有效的解决了这些问题,本发明方法能够提升分类网络的准确度。
附图说明
[0030]
图1为网络整体训练流程图。
[0031]
图2为有监督阶段结构示意图。
[0032]
图3为半监督阶段结构示意图。
具体实施方式
[0033]
以下结合附图和技术方案,进一步说明本发明的具体实施方式。
[0034]
图1为网络整体训练流程图,第一步,通过划分好的子集训练得到三个具有较好特征提取能力的教师模型th、tm和t
t
,第二步,将第一步训练好的三个教师模型学习到的知识,蒸馏到学生模型s中,同时使用自校正采样实现对模型s的训练。图2的教师模型训练的具体流程包括,首先用划分好的子集对教师模型进行训练,将图片输入到卷积层中实现特征提取,图中的长方体为提取到的特征,然后再对分类器进行训练,由于数据量大所以训练得到的模型的特征提取能力越好,为了充分利用这一优势,对教师模型进行渐进式训练,即利用已经训练好的教师模型进行辅助训练,图中用虚线表示模型之间的辅助训练,具体来说,首先用传统方法对头部教师模型进行训练,得到特征提取能力很好的头部教师模型;然后,中部子集不仅输入到对应的中部教师模型中,还会输入到训练好的头部教师模型中,此时,头部教师模型参数固定,使用公式(1)、(2)对比对应位置对应图片的特征表示,获得特征提取能力较好的中部教师模型;尾部教师模型类似,将尾部子集输入到头部教师模型和中部教师模型中,固定头部教师模型和中部教师模型的参数,对比对应特征。利用这种方法可以提
高数据量较少的教师模型的特征提取能力。图3主要是学生模型训练的展示,输入为完整的长尾分布的训练集,固定三个教师模型的参数,将三个教师模型学习到的知识通过特征比较蒸馏到学生模型中,根据特征对比,得到关于每个类的特征对比损失,由此对学生模型的学习效果进行评估,损失越大说明学习效果越差,再次对该类采样的概率也就越大,反之亦然,通过不断对学生模型学习效果的评估,逐渐改善模型学习能力,这样整个学生模型的分类能力也会得到显著提升。
技术特征:
1.一种逐步蒸馏学习的长尾分布的遥感图像目标识别方法,其特征在于,步骤如下:整个训练过程主要分为教师模型的训练阶段和学生模型的训练阶段;(1)教师模型的训练阶段构建一个基础的分类网络用于教师模型的训练:resnet50的前四个模块作为网络的特征提取主干的卷积模型,resnet50的第四个模块输出的特征作为辅助其他教师模型进行训练的特征表示;首先将呈长尾分布的训练集划分成三个子集,分别为头部子集、中部子集和尾部子集;教师模型包括头部教师模型、中部教师模型和尾部教师模型;将头部子集输入到对应的头部教师模型中,训练出一个具有良好特征提取能力的头部教师模型,然后将中部子集输入到对应的中部教师模型中,在进行训练时,该中部子集还将输入到头部教师模型中,此时头部教师模型冻结,将头部教师模型第四个模型输出的特征与中部教师模型对应位置对应图片的特征进行比较,对比的mse损失为:其中,下角标m表示中部教师模型,f
m
'和f
m
分别为头部和中部教师模型的特征,n为batch size;同样,训练尾部子集对应的尾部教师模型时,利用头部教师模型和中部教师模型进行辅助训练,对比的mse损失为:其中,下角标t表示尾部教师模型,f
″
t
、f
t
'和f
t
分别为中部、头部和尾部教师模型的特征;通过式(1)和(2)的约束可训练得到三个特征提取能力以及分类能力都比较好的教师模型t
h
、t
m
和t
t
;(2)学生模型的训练阶段在第二个阶段进行学生模型的训练时,将t
h
、t
m
和t
t
学到的知识蒸馏到学生模型中,学生模型的网络结构与教师模型的网络结构完全相同;由于学生模型在学习开始时对任何类都具有相同的特征提取能力,因此在每次训练开始时采用均匀采样,然后再使用提出的自校正采样学习;具体来说,教师模型第四个模块输出的特征与学生模型对应位置对应图片的特征进行比较,该mse损失为:其中,f'和f分别为教师模型和学生模型的特征;然后,根据损失l
mse
来评估学生模型的学习质量,设计了一个公式来根据l
mse
得到每个类的权重w:w=α
×
log(l
mse
+1)
ꢀꢀꢀꢀꢀꢀꢀ
(4)其中,α为超参数;最后将获得的权重w应用到采样器中,学生模型对应某一类学习质量越好,损失越小,w越小,所以该类在下一个batch中的采样概率越小,反之亦然;另外,三个学生模型和教师模型的分类损失函数都是相同的,每个模型的分类损失为:
其中,c为数据集的类别,f
i
为模型分类的概率,y
i
为真值;最终教师模型学习到的知识全部蒸馏到学生模型中,并且利用自校正采样算法让学生模型对于某个学习效果不好的类进行再次学习。
技术总结
本发明属于图像信息处理技术领域,提出了一种逐步蒸馏学习的长尾分布的遥感图像目标识别方法,具体为一种利用头尾数据之间的联系,并结合知识蒸馏完成遥感图像分类的方法。我们使用结构相同的三个教师模型与一个学生模型。提出了渐进式教师模型的学习以及自校正采样算法,在学生模型训练过程中可以很好的解决长尾问题,使最终的分类准确度得到提升。本发明利用蒸馏的方法以及提出的渐进式教师学习和自校正采样学习算法,增强了网络特征提取能力,目前存在的解决长尾问题的各种方法仍然存在各种弊端,比如不能充分利用头部数据的优势、对超参数敏感等等,本发明的逐步蒸馏学习方法方法有效的解决了这些问题,本发明方法能够提升分类网络的准确度。够提升分类网络的准确度。够提升分类网络的准确度。
技术研发人员:赵文达 刘佳妮 刘瑜 卢湖川 何友
受保护的技术使用者:大连理工大学
技术研发日:2021.12.06
技术公布日:2022/3/8