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

一种基于迁移学习的改进视觉Transformer海底底质声呐图像分类方法

2022-10-13 05:31:35 来源:中国专利 TAG:

一种基于迁移学习的改进视觉transformer海底底质声呐图像分类方法
技术领域
1.本发明属于海底底质声学勘探、反演、图像分类技术与人工智能领域,具体涉及一种基于迁移学习的改进视觉transformer海底底质声呐图像分类方法。


背景技术:

2.海底探测的目标是利用一定的技术手段获取海底底质的空间分布特性及其随时间的变化规律,是一种基于连续时空系统的模式研究。声波在海水中具有非常优越的传播特性,随着声呐技术的迅速发展,海底底质声呐图像已能够包含十分丰富的海底地貌及底质特征信息,根据海底底质声呐图像反演海底地形地貌,对于海底探究、水下、沉船打捞及深海保护具有重要意义。但受水下复杂声场环境和声呐设备性能的限制,声呐图像可能具有斑点噪声、边缘模糊等问题,这就对分类器的性能要求更为严格。
3.海底科学研究中,已经发展出多种海底声学探测技术,水下声学技术为探测海底浅部剖面乃至深部地层结构发挥了重要的作用。由于不同类型底质的声吸收系数、反射系数、表面粗糙度等参数具有显著差异性,传统的声学海底反演利用海底声反射特性对海底底质类型进行识别。这种方式大多基于一些声学指标以及经验公式,实际上这种反演方式虽然计算简单,但由于海底复杂的环境,分类准确率并不是很理想。
4.现代的声学海底底质分类以声呐系统获取的声呐图像为基础,结合机械取样方法获得的真实海底底质样品数据,利用分类算法建立底质类型自动分析模型,进而实现高效、准确的海底底质分类。diesing利用随机森林算法对4种底质类型的声呐图像进行分类,得到的结果优于传统的目标分析法和地质统计分析法,也有许多国内外学者应用多种人工神经网络方法实现了对海底底质的分类识别。chakraborty等应用自组织特征映射(sofm)及学习向量量化(lvq)神经网络方法对海底底质的分类识别进行了研究。唐秋华将ga与bp神经网络有效结合起来,实现了对海底基岩、砾石、砂、细砂以及泥等底质类型的自动分类识别,其中基岩、砾石、砂、细砂和泥的分类精度分别为92.2%、81.9%、89.3%、85.9%、88.2%。但是lvq神经网络无法充分利用神经元并对初值敏感。而且bp神经网络存在收敛速度慢,初始化参数较为随机,易陷入局部最优等问题,算法运算效率不高,特别是网络层数较多,复杂度较大时,训练时间较长。之后出现了使用卷积神经网络,将声呐图像的纹理特征和统计量特征与cnn相结合,构建了一种分类器。该分类器能够实现底质的自动识别分类功能。但是普通的卷积神经网络在训练时存在过拟合问题,并且卷积神经网络由于原理的限制,无法有效获得较大视野范围内的全局信息与特征图的位置信息。即无法学习图片的长距离依赖,从而影响网络的分类性能。此外,深度学习方法需要大量的训练样本以获取图像的共同特征,而海底底质声呐图像数量的不足也限制了深度学习海底底质声呐图像分类准确率的提高。


技术实现要素:

5.本发明的目的在于提供一种基于迁移学习的改进视觉transformer海底底质声呐图像分类方法。
6.本发明的目的通过如下技术方案来实现:
7.一种基于迁移学习的改进视觉transformer海底底质声呐图像分类方法,包括以下步骤:
8.步骤1:获取用于训练的数据集;
9.需要已知图像所属的底质类型,获得n类海底底质声呐图像;
10.步骤2:将这些图像进行预处理操作;
11.预处理包括图像去噪、图像特征增强;
12.步骤3:获取用于预训练的源域图像;
13.步骤4:建立改进视觉transformer网络;
14.包括前置卷积变换层、patch与位置嵌入层、transformer编码层和多层感知机输出层;层与层之间相互连接,组合成整个改进视觉transformer网络;
15.步骤5:在源域纹理图像上训练网络,获得预训练模型;
16.使用交叉熵损失函数,将纹理图像分为训练集和验证集输入网络进行网络训练;
17.步骤6:根据步骤2,依照4:1-7:1的比例设置训练集以及验证集的数量;
18.步骤7:将训练集中的图像与其实际类别输入网络中进行调整,每训练一轮在验证集上验证分类准确率;
19.步骤8:调整网络参数,获得训练后的transformer分类器;
20.步骤9:将需要判断底质类型的声呐图像输入分类器,分类器自动输出分类结果。
21.进一步地,步骤1中所选图像属于同一种底质类型,使用相同大小的声呐图像切片,网络采用100
×
100分辨率的输入图像。
22.进一步地,步骤2具体包括:
23.步骤2.1:分别对海底底质声呐图像进行平滑去噪和特征增强;
24.步骤2.2:利用小波变换技术对经过平滑去噪和特征增强的海底底质声呐图像进行滤波;
25.步骤2.3:利用多级中值滤波方法对经过滤波后的海底底质声呐图像进行加强处理。
26.进一步地,步骤4中各层结构具体为:
27.前置卷积变换层为:将输入的图片转换为12
×
12
×
512的特征图,输出的张量的维数为12
×
12
×
512,供后续patch嵌入操作;
28.patch与位置嵌入层为:将前置卷积变换层输出的张量转换为能够为transformer所使用的patch,记录各个patch的位置信息,同时加入一个类别token;
29.transformer编码层为:包括12个编码块和多头注意力结构,并且不改变张量的维度数;其中多头注意力结构使用了12个头,为含有12个q,k,v值,进行了如下计算:
[0030][0031]
headi=注意力(qw
iq
,kw
ik
,vw
iv
)
[0032]
多头注意力(q,k,v)=拼接(head1,...,headi)wo[0033]
w矩阵是变换参数矩阵,softmax函数可以将输入映射成各种类别的概率,函数如下:
[0034][0035]
其中h(x,yj)为对第j项的预测结果;
[0036]
多层感知机输出层为:使用一层全连接层实现维度变换,以获得类别输出;输出为n维张量,n为样本的类别数,可直接得到输入图片所属类型。
[0037]
进一步地,步骤5以网络的输出与真实的输出间的差异为网络训练的依据,将训练集图像分割成多个batch,批量输入网络进行训练;当网络的验证准确率不再提升时,训练完成。
[0038]
进一步地,步骤7的调整方式如下:
[0039]
将预训练后模型中的transformer编码层中的参数复制至新的模型中,为迁移后模型;再将训练集中的图像输入网络,也使用交叉熵损失函数进行训练训练过程与步骤5中相似;每次训练集迭代完毕后需要在验证集上验证分类准确率,当网络的验证准确率不再提升时,得到最终微调后的模型。
[0040]
进一步地,步骤9输出结果将以n维向量形式展现,n为图片类别数;每个类别对应位置的数字大小为其概率,结果向量中最大值对应位置的数字为分类器输出的类别结果。
[0041]
本发明的有益效果在于:
[0042]
本发明采用了迁移学习方法,将已有的先验知识迁移至新模型的方法。采用源域预训练,目标域微调的基本思路,有效提升小样本下的训练速度与分类准确率与收敛速度。预训练后的模型可适用于其他海底底质声呐图像。使用迁移学习深度学习分类器能够通过预训练,将相似数据域中学到的方法用到新的目标域中。这种迁移过程只需要微调即可获得更好的分类效果,能够大大降低所需训练样本的数量。
[0043]
本发明transformer是一种新型的神经网络架构,它的典型特征是大量注意力模块的使用。transformer分类器采用了多头注意力机制,可以有效捕捉图像中有益于分类的细节信息,抑制其他无用信息,并且能够学习大尺度范围内的有效信息,不再受限于卷积神经网络的窗口大小,能够有效把握海底底质声呐图像的全局以及局部特征,具有较强的泛化能力,保留了注意力机制,把握重要特征的能力,多头的引入还能降低过拟合,并行地计算从输入信息中选取多个信息,在gpu这种高并行环境中计算具有更高的效率。具有快速获取需要关注区域的能力,多头注意力机制的使用能够使网络综合全局、局部特征,有效把握住各类图像的独有特征。网络中使用了许多层标准化(layernorm)、droppath等正则化方法,以降低网络过拟合。同时,本发明针对海底声呐图像的特性,本发明改进调整了网络结构,使其能够处理单通道图,解决了原始视觉transformer无法处理灰度图像的问题。通过调整输入patch的构造方式,提升了网络在少样本上训练的收敛能力。本发明可以实现底质类别的快速、自动识别,大批量的实现声呐图像分类操作,可以实现仅仅使用较少的训练样本,获得较高的分类准确率。
附图说明
[0044]
图1为本发明的基于视觉transformer的海底底质声呐图像分类方法步骤流程图;
[0045]
图2为本发明采用的迁移学习示意图;
[0046]
图3为本发明提出的改进transformer网络整体网络结构图;
[0047]
图4为本发明网络中前置卷积变换层细节图;
[0048]
图5为本发明的单个编码块详细结构图。
具体实施方式
[0049]
下面结合附图对本发明做进一步描述。
[0050]
本发明采用的改进视觉transformer分类方法属于一种深度学习方法。它将图像通过前置卷积处理形成patch,依次通过patch嵌入、位置嵌入transformer编码层和多层感知机输出层后得到分类结果。通过反向传播的方法最小化网络残差,以实现分类器的训练。深度学习目的是学习样本数据的内在规律和表示层次,具有很强的非线性拟合学习能力,能够有效发掘出同类图像之间的共同特征。通过多层编码层的堆叠,网络会逐步学习到全局、局部特征,会主动关注图像中“重要”的部分。
[0051]
下面,根据技术方案所述步骤,结合附图对本发明作进一步详细描述。
[0052]
步骤一:获取用于训练的数据集,需要已知图像所属的底质类型,获得n类海底底质声呐图像若干。由于深度学习需要学习图像中的相同特征实现分类,由此,一定数量的同类声呐图像是不可或缺的。在这一步中,需要确保所选图像属于同一种底质类型。为了获得具有一致性的特征,还需要使用相同大小的声呐图像切片,我们的网络采用100
×
100分辨率的输入图像。
[0053]
步骤二:对数据集图像进行预处理。由于声呐图像可能具有分辨率低、噪声干扰严重、边缘纹理恶化等特点,因此需要对这些海底底质声呐图像进行预处理。预处理具体包括:首先分别对海底底质声呐图像进行平滑去噪和特征增强,特征增强包括校正增强和边缘锐化;然后利用小波变换技术对经过平滑去噪和特征增强的海底底质声呐图像进行滤波,获取信噪比更高、去噪效果更好的海底底质声呐图像,所述滤波采用尺度不同的小波带通滤波器,所述尺度是指小波函数对低频和高频部分使用不同的阈值,最后利用多级中值滤波方法对经过滤波后的海底底质声呐图像进行加强处理,所述加强处理包括对包含的纹理、边缘形状信息。对图像进行滤波、特征增强等操作,降低了由声场环境和声呐设备性能等产生的噪声模糊图形边缘的影响,并突出了声呐图像的特征信息。
[0054]
步骤三:获取用于预训练的源域图像。迁移学习要求用于预训练的源域图像与用于微调的目标域图像具有相似的特征与分布,这样才能保证预训练学到的模式可以用于目标域图像分类。而已有的预训练模型大多基于imagenet图像,与海底底质声呐图像特征相关性弱。本发明提出使用纹理数据集作为源域图像进行预训练,它们相似性较强,数据分布接近,更加适合用于模型迁移,选用数据与迁移学习流程如图2所示。
[0055]
步骤四:建立改进视觉transformer网络。本发明使用的网络采用了前置卷积变换层,patch与位置嵌入(patch and position embedding)层,transformer编码(encoding)层,多层感知机(multilayerperceptron)输出层。层与层之间相互连接,组合成整个改进视觉transformer网络,如附图2所示,各层右边给出的是当前张量的维度。下面详细介绍各层
结构。
[0056]
前置卷积变换层:它将输入的图片转换为12
×
12
×
512的特征图,供后续patch嵌入操作。如附图3所示为前置卷积变换层的详细结构。先通过一个7
×
7的二维卷积层,经过组标准化和dropout操作,它们可以防止过拟合产生,之后通过两个残差模块。残差连接有助于保存前后信息,最终输出的张量维数为12
×
12
×
512。其中每个阶段获得张量维数均在图中列出。本发明改进后的网络新增前置卷积变换模块,针对声呐图像进行了优化,使得网络能够直接处理单通道的声呐图像,且较原网络能够更快收敛。
[0057]
patch与位置嵌入层:它的作用是将前置张量转换为能够为transformer所使用的patch,并且记录各个patch的位置信息。同时,加入一个类别token,他是一个可训练参数,会随着网络的训练发生变化。如附图2对应结构所示,使用1
×
1的卷积操作提升patch维数为768,将张量展平至二维。此时,额外拼接入一个位置patch,使用一个同样为145
×
768的可训练参数与其相加,实现位置嵌入。
[0058]
transformer编码层:它由12个编码块堆叠而成,每个编码块以及多头注意力的结构如图4所示,这一部分将不改变张量的维度。其中最重要的是多头注意力模块,本发明使用了12个头,也就是含有12个q,k,v值。多头处理会并行执行多个不同参数初始化的注意力来计算两个元素之间匹配参数,并将每个元素注意力结果拼接为随后投影网络的一个输入。多头注意力层进行了如下计算:
[0059][0060]
headi=注意力(qw
iq
,kw
ik
,vw
iv
)
[0061]
多头注意力(q,k,v)=拼接(head1,...,headi)wo[0062]
w矩阵是变换参数矩阵,softmax函数可以将输入映射成各种类别的概率,函数如下
[0063][0064]
其中h(x,yj)为对第j项的预测结果。
[0065]
此外,结构中多层感知机的详细结构也在图4中给出。transformer编码层的主要作用是学习输入数据中关键信息,是整个网络的核心部分,它并不改变数据的维度。
[0066]
多层感知机输出层:本发明使用一层全连接层实现维度变换,以获得类别输出。输出为n维张量,n为样本的类别数,由此输出可直接得到输入图片所属类型。
[0067]
本发明选择sgd优化器进行梯度下降。针对在海底底质声呐图像分类任务中的表现来看,sgd优化器能够获得更高的准确率。
[0068]
步骤五:在源域纹理图像上训练网络,获得预训练模型。
[0069]
使用交叉熵损失函数,将纹理图像分为训练集和验证集输入网络进行网络训练。以网络的输出与真实情况下的输出间的差异为网络训练的依据,不断学习更新网络参数。将训练集图像分割成若干个batch,批量输入网络进行训练。当网络的验证准确率不再提升时,训练完成。此时网络掌握了源域的数据提取能力。
[0070]
步骤六:依照4:1-7:1的比例设置训练集以及验证集的数量,确保图像的类别标签
正确。将步骤二处理后的数据集按照特定比例划分训练集以及验证集。目的是为了使训练集与验证集均有合理、相似的分布,令网络能够更好的归纳学习图像的共同特征。
[0071]
步骤七:将训练集中的图像与其实际类别输入网络中进行微调,每训练一轮在验证集上验证分类准确率。微调方式如下:将预训练后模型中的transformer编码层中的参数,复制至新的模型中,此即为迁移后模型。再将训练集中的图像输入网络,也使用交叉熵损失函数进行训练训练过程与步骤五中相似。而此时由于网络已学习了源域的先验知识,往往仅需训练较少的轮数网络即可收敛。注意,每次训练集迭代完毕后需要在验证集上验证分类准确率,当网络的验证准确率不再提升时,得到最终微调后的模型。
[0072]
步骤八:调整学习率、优化器的动量大小等参数,使得分类器在验证集上的表现最佳,获得训练后的transformer分类器。为了获得分类效果最佳的网络,需要调整学习率,batch size等参数,使网络达到最优解。学习率越大,网络收敛速度越快,但是会导致损失爆炸、震荡等现象出现;学习率过小,网络就容易陷入局部最优解,导致训练损失不再减小,验证准确率不再提升,网络效果受限,因此需要根据经验调整学习率的大小。
[0073]
增加batch size,可以提升train loss收敛的稳定性,但是batch size的大小受制于内存。而batch size过小,网络可能无法收敛。
[0074]
本发明提出使用0.0001-0.001的学习率,随着迭代次数的增加,训练损失的减少,还可以适当降低学习率的大小,实现最优解的逼近。16-64的batch size较为适合海底底质声呐图像分类工作,选取的batch size应该同时考虑内存、显存、计算资源限制,不能超过最大值。
[0075]
步骤九:将需要判断底质类型的声呐图像输入分类器,分类器将自动输出分类结果。输出结果将以n维向量形式展现,n为图片类别数。每个类别对应位置的数字大小为其可能的概率,故结果向量中最大值对应位即为分类器给出的类别。
[0076]
本发明会对分类器准确率产生影响的因素如下:
[0077]
1、作为分类器训练集的图像最好能够良好体现出各类底质的特征。噪声、分辨率等图像质量问题会影响算法提取出特征的泛化性,优秀的训练集图像会带来最良好的分类性能。本发明通过图像的去噪、特征增强等手段希望能够减少训练集图像质量带来的影响。
[0078]
2、学习率大小要依照训练集的情况设定使网络获得更优的收敛速度以及更高的分类准确率。学习率过大会造成网络无法收敛,在最优值附近徘徊。学习率过小则会使网络陷入局部最优点。
[0079]
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献