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

目标检测模型的训练方法、装置、计算机设备及存储介质与流程

2022-05-17 22:13:24 来源:中国专利 TAG:


1.本方案属于图像识别技术领域,尤其涉及一种目标检测模型的训练方法、装置、计算机设备及存储介质。


背景技术:

2.为了保证信息传输的可靠性,信息传输系统必须具备稳定的抗干扰能力,信号检测是抵抗干扰的最佳方法之一。现有的信号检测方案是时频分析法,其过程如下:将一维信号映射到二维平面,生成信号时频图。用深度神经网络来检测信号时频图中的目标信号数据,称为目标检测问题。可以通过yolo算法、yolov3算法、poly-yolo算法对信号时频图进行目标检测,yolo算法对信号时频图进行目标检测时,对小目标和密集型目标检测效果很差,几乎无法在信号短而密集的信号时频图上进行目标检测。yolov3算法对信号时频图进行目标检测时,则存在对大目标识别不准确,且边框回归不准,对密集型小目标也无法精确检测的问题;而poly-yolo算法由于其网络结构原因,训练时收敛困难,训练和测试速度都很慢,无法满足信号检测的快速和实时性。


技术实现要素:

3.为了改善现有的目标检测算法对信号时频图中不同类型的信号数据检测效果差、训练困难的问题,本技术提出了一种目标检测模型的训练方法、装置、计算机设备及存储介质,能够准确地检测出信号时频图不同类型的信号数据,且训练和检测速度快,可以满足信号检测的实时性。
4.为了实现上述目的,本发明采用了如下的技术方案:第一方面,本技术实施例提供了一种目标检测模型的训练方法,所述方法包括:获取训练集,所述训练集包括多个信号时频图;构建初始检测模型,所述初始检测模型包括主干网络和头部网络;将所述多个信号时频图输入所述主干网络,通过所述主干网络对各信号时频图进行计算,输出多个特征层;将多个所述特征层输入所述头部网络,通过所述头部网络分别对各所述特征层进行计算,得到所述各信号时频图对应的最终预测结果;获取所述各信号时频图的真实目标信息;构建预设损失函数,通过所述预设损失函数计算所述各信号时频图对应的最终预测结果与真实目标信息之间的当前训练损失;根据所述当前训练损失反馈调整所述初始检测模型的参数,得到目标检测模型。
5.在一种可能的实现方式中,所述头部网络包括:第一变换卷积层、第二变换卷积层、第三变换卷积层、第四变换卷积层、第一膨胀卷积层、第二膨胀卷积层、第一反卷积层、第二反卷积层、后续卷积层;所述多个特征层包括:第一特征层、第二特征层、第三特征层;所述将所述第一特征层、第二特征层、第三特征层输入所述头部网络,通过所述头
部网络分别对所述第一特征层、第二特征层、第三特征层进行计算,得到所述各信号时频图对应的最终预测结果的步骤,包括:将所述第二特征层通过所述第二变换卷积层得到第一输出结果;将所述第三特征层通过所述第三变换卷积层变换通道数,通过所述第一膨胀卷积层扩充视野度,通过所述第一反卷积层进行上采样,得到第二输出结果;将所述第一输出结果和所述第二输出结果相加得到第三输出结果;将所述第三输出结果通过所述第四变换卷积层变换通道数,通过所述第二膨胀卷积层扩充视野度,通过所述第二反卷积层进行上采样,得到第四输出结果;将所述第一特征层通过所述第一变换卷积层得到第五输出结果;将所述第四输出结果和所述第五输出结果相加得到第六输出结果;将所述第六输出结果通过所述后续卷积层得到所述各信号时频图对应的最终预测结果。
6.在一种可能的实现方式中,所述方法还包括:将各所述信号时频图划分为多个网格,对所述各网格设置预设数量的锚框;所述预设损失函数包括:第一损失函数、第二损失函数、第三损失函数;所述通过所述预设损失函数计算所述各信号时频图对应的最终预测结果与真实目标信息之间的当前训练损失的步骤,包括:通过所述第一损失函数计算各所述锚框的目标有无损失,并计算各所述锚框的目标有无损失的总和,得到第一预测损失;通过所述第二损失函数计算各所述锚框的目标类别损失,并计算各所述锚框的目标类别损失的总和,得到第二预测损失;通过所述第三损失函数计算各所述锚框的目标坐标损失,并计算各所述锚框的目标坐标损失的总和,得到第三预测损失;将所述第一预测损失乘以第一权重系数的积值、所述第二预测损失乘以第二权重系数的积值、所述第三预测损失乘以第三权重系数的积值求和,得到所述当前训练损失。
7.在一种可能的实现方式中,所述通过所述第一损失函数计算各所述锚框的目标有无损失的步骤,包括:在第i个网格的第j个锚框包含真实目标信息时,通过所述第一损失函数根据预测的第i个网格的第j个锚框存在所述真实目标信息的置信度计算第i个网格的第j个锚框的目标有无损失;在第i个网格的第j个锚框不包含真实目标信息时,通过所述第一损失函数根据预测的第i个网格的第j个锚框存在所述真实目标信息的置信度和第i个网格的第j个锚框与所述真实目标信息所在区域的交并比计算第i个网格的第j个锚框的目标有无损失。
8.在一种可能的实现方式中,所述在第i个网格的第j个锚框包含真实目标信息时,通过所述第一损失函数根据预测的第i个网格的第j个锚框存在所述真实目标信息的置信度计算第i个网格的第j个锚框的目标有无损失,包括:根据以下公式(1)计算第i个网格的第j个锚框的目标有无损失:公式(1):
;其中,为第i个网格的第j个锚框的所述目标有无损失,为预测的第i个网格的第j个锚框存在所述真实目标信息的置信度,表示第i个网格的第j个锚框包含真实目标信息。
9.在一种可能的实现方式中,所述在第i个网格的第j个锚框不包含真实目标信息时,通过所述第一损失函数根据预测的第i个网格的第j个锚框存在所述真实目标信息的置信度和第i个网格的第j个锚框与所述真实目标信息所在区域的交并比计算第i个网格的第j个锚框的目标有无损失,包括:根据公式(2)计算第i个网格的第j个锚框的目标有无损失:公式(2)为:
ꢀꢀꢀꢀ
其中,为第i个网格的第j个锚框的所述目标有无损失,为预测的第i个网格的第j个锚框存在所述真实目标信息的置信度,为第i个网格的第j个锚框与所述真实目标信息所在区域的交并比,表示第i个网格的第j个锚框不包含真实目标信息。
10.在一种可能的实现方式中,所述通过所述第二损失函数计算各所述锚框的目标类别损失的步骤,包括:根据公式(3)确定各所述锚框的所述目标类别损失,其中:公式(3)为:;其中,为第i个网格的第j个锚框的所述目标类别损失,nc为所述预设数量,k为所述真实目标信息的类别,当第i个网格的第j个锚框对应的预测类别为所述真实目标信息的类别时为1,否则为0,为预测第i个网格的第j个锚框属于所述真实目标信息的类别的概率。
11.在一种可能的实现方式中,所述通过所述第三损失函数计算各所述锚框的目标坐标损失的步骤,包括:根据公式(4)确定各所述锚框的所述目标坐标损失,其中:公式(4)为:;其中,为第i个网格的第j个锚框的所述目标坐标损失,表示第i个网格的第j个锚框对应的预测目标区域与所述真实目标信息所在区域的交并比,表示第i个网格的第j个锚框对应的预测目标区域的中心点与所述真实目标信
息所在区域的中心点的直线距离,c表示第i个网格的第j个锚框对应的预测目标区域与真实目标信息所在区域最小外接矩阵的斜对角线长度,α为第一预设参数,v为第二预设参数。
12.在一种可能的实现方式中,所述方法还包括:通过kmeans算法将各所述信号时频图中的真实目标信息聚成所述预设数量的聚类类别,获取各聚类类别对应的聚类中心;获取所述各聚类中心的坐标,根据所述各聚类中心的坐标调整对应锚框的尺寸。
13.在一种可能的实现方式中,所述根据所述当前训练损失反馈调整所述初始检测模型的参数,得到目标检测模型的步骤,包括:判断所述当前训练损失是否小于预设训练损失阈值;若所述当前训练损失大于所述预设训练损失阈值,则继续对所述初始检测模型进行训练,将所述当前训练损失通过小批量梯度下降算法以反向传播的方式对所述初始检测模型进行调整,直至连续在n个训练周期获取到的训练损失小于所述预设训练损失阈值,则将调整后的初始检测模型作为所述目标检测模型。
14.第二方面,本技术实施例提供了一种目标检测模型的训练装置,所述装置包括:第一获取模块,用于获取训练集,所述训练集包括多个信号时频图;第一构建模块,用于构建初始检测模型,所述初始检测模型包括主干网络和头部网络;第一计算模块,用于将所述多个信号时频图输入所述主干网络,通过所述主干网络对各信号时频图进行计算,输出多个特征层;第二计算模块,用于将多个所述特征层输入所述头部网络,通过所述头部网络分别对各所述特征层进行计算,得到所述各信号时频图对应的最终预测结果;第二获取模块,用于获取所述各信号时频图的真实目标信息;第二构建模块,用于构建预设损失函数,通过所述预设损失函数计算所述各信号时频图对应的最终预测结果与真实目标信息之间的当前训练损失;调整模块,用于根据所述当前训练损失反馈调整所述初始检测模型的参数,得到目标检测模型。
15.第三方面,本技术实施例提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器存储有计算机程序,所述计算机程序在所述处理器运行时执行第一方面所述的目标检测模型的训练方法。
16.第四方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行第一方面所述的目标检测模型的训练方法。
17.相对于现有技术而言,本技术具有以下有益效果:本实施例提供的目标检测模型的训练方法、装置、计算机设备及存储介质,使用加入了膨胀卷积层和反卷积层的网络结构,扩充了特征层的视野度;使用加入了负样本权重值的损失函数,使得目标检测模型在训练中快速收敛。最后得到的目标检测模型可以快速并且准确地检测出信号时频图中各种类型的信号数据。
附图说明
18.为了更清楚地说明本技术的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对本技术保护范围的限定。在各个附图中,类似的构成部分采用类似的编号,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
19.图1是本发明实施例提供的一种目标检测模型的训练方法的一流程示意图;图2是本发明实施例提供的信号时频图的一示例图;图3是本发明实施例提供的初始检测模型的一示例图;图4是本发明实施例提供的一种目标检测模型的训练方法的另一流程示意图;图5是本发明实施例提供的一种目标检测模型的训练装置的一结构示意图。
具体实施方式
20.下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
21.通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
22.在下文中,可在本发明的各种实施例中使用的术语“包括”、“具有”及其同源词仅意在表示特定特征、数字、步骤、操作、元件、组件或前述项的组合,并且不应被理解为首先排除一个或更多个其它特征、数字、步骤、操作、元件、组件或前述项的组合的存在或增加一个或更多个特征、数字、步骤、操作、元件、组件或前述项的组合的可能性。
23.此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
24.除非另有限定,否则在这里使用的所有术语(包括技术术语和科学术语)具有与本发明的各种实施例所属领域普通技术人员通常理解的含义相同的含义。所述术语(诸如在一般使用的词典中限定的术语)将被解释为具有与在相关技术领域中的语境含义相同的含义并且将不被解释为具有理想化的含义或过于正式的含义,除非在本发明的各种实施例中被清楚地限定。
25.实施例1本实施例提供了一种目标检测模型的训练方法。如图1所示,本实施例提供目标检测模型的训练方法包括以下步骤:步骤s110,获取训练集,所述训练集包括多个信号时频图。
26.信号时频图通常为灰度图,当通过目标检测模型对信号时频图中的信号数据进行检测时,存在信号的区域为信号目标区域,不存在信号的区域则为噪声区域,信号目标区域通常与噪声区域有很清晰的界限。如图2所示,图2为一个信号时频图示例,横坐标代表时域,纵坐标代表频域,有些持续时间短、频率范围小的信号数据,反映到信号时频图上为小而密集的矩形目标,如图2中的201;有些持续时间长,频率范围广的信号数据,反映到信号
时频图中为长和宽都较大的矩形目标,如图2中的202。在实际应用中,这些不同类型的信号可能会同时出现一张信号时频图中,为了对信号时频图中多种类别,多种形状的信号数据都能较好地检测,本实施例提出了一种目标检测模型及其训练方法。
27.步骤s120,构建初始检测模型,所述初始检测模型包括主干网络和头部网络。
28.在一种实施方式中,所述主干网络为resnet18网络,其网络结构较小,训练和运行时较快,可以较好的满足目标检测的实时性要求。
29.在一种实施方式中,所述头部网络包括:第一变换卷积层、第二变换卷积层、第三变换卷积层、第四变换卷积层、第一膨胀卷积层、第二膨胀卷积层、第一反卷积层、第二反卷积层、后续卷积层。在步骤s130、s140中,将对上述卷积层的作用详细说明。
30.步骤s130,将所述多个信号时频图输入所述主干网络,通过所述主干网络对各信号时频图进行计算,输出多个特征层。
31.如图3所示,在一种实施方式中,信号时频图在通过主干网络resnet18时,经过stem层和四个block层(b1,b2,b3,b4),其中,经过第二个block层b2后得到的特征层为f2,即第一特征层;经过第三个block层b3后得到的特征层为f3,即第二特征层;经过最后一个block层b4后得到的特征层为f4,即第三特征层。特征层包含三个维度:特征图的长宽和通道数,其中每个特征图的长宽都相等,通道数代表着特征图的层数,通常为该特征层之前经过的卷积层的卷积核个数。
32.步骤s140,将多个所述特征层输入所述头部网络,通过所述头部网络分别对各所述特征层进行计算,得到所述各信号时频图对应的最终预测结果。所述头部网络,即图3中的headnet。
33.如图3、图4所示,所述将所述第一特征层、第二特征层、第三特征层输入所述头部网络,通过所述头部网络分别对所述第一特征层、第二特征层、第三特征层进行计算,得到所述各信号时频图对应的最终预测结果的步骤,包括:步骤s410,将所述第二特征层通过所述第二变换卷积层得到第一输出结果。
34.第二特征层f3通过第二变换卷积层conv2改变了通道数,得到了第一输出结果。
35.步骤s420,将所述第三特征层通过所述第三变换卷积层变换通道数,通过所述第一膨胀卷积层扩充视野度,通过所述第一反卷积层进行上采样,得到第二输出结果。
36.第三特征层,即图3中的f4。在一种实施方式中,第三变换卷积层conv3为一个1
×
1的卷积层;第一膨胀卷积层diaconv1的膨胀率为2,作用是扩充视野度;第一反卷积层transconv1用于将第三特征层中的特征图的长宽变换为原来的2倍,但不改变通道数。
37.步骤s430,将所述第一输出结果和所述第二输出结果相加得到第三输出结果,即图3中的h1。
38.步骤s440,将所述第三输出结果通过所述第四变换卷积层变换通道数,通过所述第二膨胀卷积层扩充视野度,通过所述第二反卷积层进行上采样,得到第四输出结果。
39.第四变换卷积层conv4、第二膨胀卷积层diaconv2、第二反卷积层transconv2的参数根据具体任务设定,在此处不做限制。
40.步骤s450,将所述第一特征层通过所述第一变换卷积层得到第五输出结果。
41.第一特征层f2通过第一变换卷积层conv1改变了通道数,第一变换卷积层conv1的参数根据具体任务设定,在此处不做限制。
42.步骤s460,将所述第四输出结果和所述第五输出结果相加得到第六输出结果,即图3中的h2。
43.步骤s470,将所述第六输出结果通过所述后续卷积层得到所述各信号时频图对应的最终预测结果。
44.后续卷积层convs只改变了第六输出结果的通道数,不改变第六输出结果中的特征图的尺寸,最终预测结果即图3中的h3。
45.在本实施方式中,所有特征层、特征图、输出结果均以矩阵的形式存储在计算机设备中,其中的加减运算遵循矩阵的运算法则。
46.步骤s150,获取所述各信号时频图的真实目标信息。
47.在本实施方式中,真实目标信息为信号时频图中真实目标所在区域的信号数据,包括真实目标所在区域中信号数据是否存在,信号数据的类别,以及信号数据的坐标。
48.步骤s160,构建预设损失函数,通过所述预设损失函数计算所述各信号时频图对应的最终预测结果与真实目标信息之间的当前训练损失。
49.在一种实施方式中,所述通过所述预设损失函数计算所述各信号时频图对应的最终预测结果与真实目标信息之间的当前训练损失的步骤,包括:将各所述信号时频图划分为多个网格,对所述各网格设置预设数量的锚框;在目标检测算法中,锚框(anchor box)是以所述网格的中心点为中心,预设的多个不同尺寸的用于检测信号数据的矩形框,锚框的尺寸在配置模型时就已经配置好。
50.在一实施方式中,锚框的尺寸是通过kmeans算法得到的。通过kmeans算法将各所述信号时频图中的真实目标信息聚成所述预设数量的聚类类别,获取各聚类类别对应的聚类中心;获取所述各聚类中心的坐标,根据所述各聚类中心的坐标调整对应锚框的尺寸。kmeans算法为一种常见的聚类算法,用于将数据集中的每个样本分到距离最小的聚类中心所对应的类中。
51.对网格设置的锚框数量等于在聚类时设定的聚类类别,如:将信号时频图中的真实目标信息聚成9类,则对每个网格设置的锚框也为9个。
52.在一种实施方式中,所述预设损失函数包括:第一损失函数、第二损失函数、第三损失函数。
53.通过所述第一损失函数计算各所述锚框的目标有无损失,并计算各所述锚框的目标有无损失的总和,得到第一预测损失;通过所述第二损失函数计算各所述锚框的目标类别损失,并计算各所述锚框的目标类别损失的总和,得到第二预测损失;通过所述第三损失函数计算各所述锚框的目标坐标损失,并计算各所述锚框的目标坐标损失的总和,得到第三预测损失;在一种实施方式中,所述通过所述第一损失函数计算各所述锚框的目标有无损失的步骤,包括:在第i个网格的第j个锚框包含真实目标信息时,通过所述第一损失函数根据预测的第i个网格的第j个锚框存在所述真实目标信息的置信度计算第i个网格的第j个锚框的目标有无损失;在第i个网格的第j个锚框不包含真实目标信息时,通过所述第一损失函数根据预
测的第i个网格的第j个锚框存在所述真实目标信息的置信度和第i个网格的第j个锚框与所述真实目标信息所在区域的交并比计算第i个网格的第j个锚框的目标有无损失。
54.所述真实目标信息的置信度由目标检测模型计算得出,第i个网格的第j个锚框与所述真实目标信息所在区域的交并比即第i个网格的第j个锚框的面积与所述真实目标信息所在区域的面积的交集与并集的比值。
55.在一种实施方式中,所述在第i个网格的第j个锚框包含真实目标信息时,通过所述第一损失函数根据预测的第i个网格的第j个锚框存在所述真实目标信息的置信度计算第i个网格的第j个锚框的目标有无损失,包括:根据以下公式(1)计算第i个网格的第j个锚框的目标有无损失:公式(1):;其中,为第i个网格的第j个锚框的所述目标有无损失,为预测的第i个网格的第j个锚框存在所述真实目标信息的置信度,表示第i个网格的第j个锚框包含真实目标信息。
56.需要注意的是,虽然在书写时省略了公式(1)中的对数函数log的底数,但是在实际应用中对数函数log的底数为1,公式(2)、(3)同理。
57.在一种实施方式中,所述在第i个网格的第j个锚框不包含真实目标信息时,通过所述第一损失函数根据预测的第i个网格的第j个锚框存在所述真实目标信息的置信度和第i个网格的第j个锚框与所述真实目标信息所在区域的交并比计算第i个网格的第j个锚框的目标有无损失,包括:根据公式(2)计算第个网格的第个锚框的目标有无损失:公式(2)为:公式(2)为:其中,为第i个网格的第j个锚框的所述目标有无损失,为预测的第i个网格的第j个锚框存在所述真实目标信息的置信度,为第i个网格的第j个锚框与所述真实目标信息所在区域的交并比,表示第i个网格的第j个锚框不包含真实目标信息。
58.在下述关于损失函数的描述中,正样本表示与真实目标信息类别一致的样本,负样本则表示与真实目标信息类别不一致的样本。公式(1)、(2)中对所有锚框预测存在真实目标信息的置信度都进行了计算,并对预测错的锚框依照错误程度作出了惩罚。在实际应用中,可能存在某个锚框不存在目标,但是又与真实目标信息所在区域重叠面积比较大的情况,这种情况下的锚框与真实目标信息所在区域交并比较高,一般在真实目标信息中心附近网格中的锚框会出现这种情况,笼统地认为其置信度应预测为1或0都会影响目标检测模型的训练效果。因此,本实施方式在这种情况下锚框存在真实目标信息的置信度后又乘上了一个负样本权重值,若较高,经过平方计算负样本权重值则会变
得很低,即使这个锚框预测其为目标的置信度接近于1,也不会产生很大的目标有无损失;而如果这个锚框中全是空白区域,为0,负样本权重值为1,则会产生很大的目标有无损失。需要的注意该目标检测模型在初期训练时,目标有无损失很容易产生梯度爆炸现象,原因是锚框数量过多且正负样本相当不均衡,当出现接近0或接近1的极端值时累加产生的目标有无损失与梯度都十分庞大,因此在计算目标有无损失之前要对做截断,本方案将截断至[0.0001, 0.9999]区间之内。具体截断方式为:将小于0.0001的值统一取0.0001,将大于0.9999的值统一取0.9999,例如:若为0.00005,则计算时按照0.0001计算;若为0.99999,则计算时按照0.9999计算。
[0059]
本实施方式通过添加了负样本权重值,迫使目标检测模型区分出真正的目标区域和空白的目标区域,提升了目标检测模型的训练效果,并且通过截断数据区间避免了梯度爆炸现象。
[0060]
在一种实施方式中,通过所述第二损失函数计算各所述锚框的目标类别损失的步骤,包括:根据公式(3)确定各所述锚框的所述目标类别损失,其中:公式(3)为:;其中,为第i个网格的第j个锚框的所述目标类别损失,nc为所述预设数量,k为所述真实目标信息的类别,当第i个网格的第j个锚框对应的预测类别为所述真实目标信息的类别时为1,否则为0,为预测第i个网格的第j个锚框属于所述真实目标信息的类别的概率。
[0061]
目标类别损失只在锚框包含真实目标信息的情况下产生,其余情况都为0。单个锚框的目标类别损失为其所有类别计算二分类交叉熵损失的平均值,用于衡量目标检测模型的预测正确率。例如:若将信号时频图中的信号分为9类,则预设数量nc也为9,表示预测第i个网格的第j个锚框属于真实目标信息的类别k的概率。
[0062]
在一种实施方式中,通过所述第三损失函数计算各所述锚框的目标坐标损失的步骤,包括:根据公式(4)确定各所述锚框的所述目标坐标损失,其中:公式(4)为:;其中,为第i个网格的第j个锚框的所述目标坐标损失,表示第i个网格的第j个锚框对应的预测目标区域与所述真实目标信息所在区域的交并比,表示第i个网格的第j个锚框对应的预测目标区域的中心点与所述真实目标信息所在区域的中心点的直线距离,c表示第i个网格的第j个锚框对应的预测目标区域与真实目标信息所在区域最小外接矩阵的斜对角线长度,α为第一预设参数,v为第二预设参数。
[0063]
在一种实施方式中,v的计算由公式(5):公式(5)为:;v为第二预设参数,表示是第i个网格的第j个锚框的真实目标信息所在区域的宽,表示第i个网格的第j个锚框的真实目标信息所在区域的高,w是预测目标区域的宽,h是预测目标区域的高。
[0064]
在一种实施方式中,α的计算由公式(6):公式(6)为: ;α为第一预设参数,和v在公式(4)、公式(5)中已经解释过,此处不再赘述。
[0065]
将所述第一预测损失乘以第一权重系数的积值、所述第二预测损失乘以第二权重系数的积值、所述第三预测损失乘以第三权重系数的积值求和,得到所述当前训练损失。第一权重系数、第二权重系数、第三权重系数为预设参数。
[0066]
步骤s170,根据所述当前训练损失反馈调整所述初始检测模型的参数,得到目标检测模型。
[0067]
所述根据所述当前训练损失反馈调整所述初始检测模型的参数,得到目标检测模型的步骤,包括:判断所述当前训练损失是否小于预设训练损失阈值;若所述当前训练损失大于所述预设训练损失阈值,则继续对所述初始检测模型进行训练,将所述当前训练损失通过小批量梯度下降算法以反向传播的方式对所述初始检测模型进行调整,直至连续在n个训练周期获取到的训练损失小于所述预设训练损失阈值,则将调整后的初始检测模型作为所述目标检测模型。
[0068]
在实际训练过程中,预设了训练参数和验证参数。训练参数包括但不限于训练总轮次,一次训练的样本数等;验证参数包括评估周期,评估指标,预设训练损失阈值等。实际训练时,在一个训练周期中,将预设好的样本数的信号时频图输入初始检测模型中,并对每一张信号时频图使用随机的数据增强方法,通过步骤s160中预设的损失函数计算训练损失,并将训练损失反向传播给初始检测模型,调整初始检测模型的参数。在一种实施方式中,可以使用小批量梯度下降(mini-batch gradient descent)算法。
[0069]
当训练周期数对评估周期取余数为0,即训练周期数是评估周期的倍数时,则计算评估指标。所述评估指标可以是平均准确率(mean average precision,map),用于衡量调整后的初始检测模型对信号时频图中的信号数据的检测精度。
[0070]
实际应用中,当训练周期数到达训练总轮次时,可以停止训练并将调整后的初始检测模型作为目标检测模型并计算该目标检测模型的评估指标。但本实施例采用的方法是当n个训练周期获取到的训练损失小于所述预设训练损失阈值时,将调整后的初始检测模
型作为目标检测模型,这样可以保证训练是一定有效的。
[0071]
现有的目标检测主要有下述几种方案:(1)根据输入信号的先验知识设计矩形框,由输入信号所有可能的时长和带宽设计对应大小的矩形框进行检测;需要极强的信号先验知识,且计算量较大;(2)yolo算法,将图像划分成7
×
7的网格,并且对每个网格设置了2个锚框,由锚框检测信号;但是由于网格较少,对小目标和密集型目标检测效果很差;(3)yolov3算法,将每个网格的锚框增加到了9个,并将锚框分为大中小三个尺度;但是对密集型小目标识别不准;(4)poly-yolo算法,将网格的尺度缩到更小,网格划分更密集;但是目标检测模型训练和测试缓慢,对大目标的坐标和边界回归不准。
[0072]
与上述现有方案相比,本实施例提供的目标检测模型的训练方法,目标检测模型的网络结构进行改进,解决了yolo、yolov3算法对密集型小目标识别不准的问题,解决了poly-yolo网络训练和测试缓慢且对大目标的坐标和边界回归不准的问题,实现了在检测信号时频图中的目标数据时又快又准。本实施例的提供的目标检测模型的训练方法,还改进了损失函数,提出参考了交并比的负样本权重系数去计算负样本的损失,使目标检测模型能顺利的学习去区分真实目标区域和空白目标区域,并可以在训练中迅速收敛。
[0073]
本实施例提出的目标检测模型的训练方法,改进了目标检测模型的网络结构,使用膨胀卷积层和反卷积层进行上采样,扩充了特征层的视野度,并在损失函数中加入了负样本权重系数,使得目标检测模型在训练中更顺利地区分真实目标区域和空白目标区域,可以快速训练以及检测信号时频图中的信号数据,并且准确地检测出各种类型的信号数据。
[0074]
实施例2本实施例还提供一种目标检测模型的训练装置,请参照图5,该目标检测模型的训练装置500包括第一获取模块510、第一构建模块520、第一计算模块530、第二计算模块540、第二获取模块550、第二构建模块560、调整模块570。
[0075]
在本实施例中,所述第一获取模块510用于:获取训练集,所述训练集包括多个信号时频图;所述第一构建模块520用于:构建初始检测模型,所述初始检测模型包括主干网络和头部网络;所述第一计算模块530用于:将所述多个信号时频图输入所述主干网络,通过所述主干网络对各信号时频图进行计算,输出多个特征层;所述第二计算模块540用于:将多个所述特征层输入所述头部网络,通过所述头部网络分别对各所述特征层进行计算,得到所述各信号时频图对应的最终预测结果;所述第二获取模块550用于:获取所述各信号时频图的真实目标信息;所述第二构建模块560用于:构建预设损失函数,通过所述预设损失函数计算所述各信号时频图对应的最终预测结果与真实目标信息之间的当前训练损失;所述调整模块570用于:根据所述当前训练损失反馈调整所述初始检测模型的参数,得到目标检测模型。
[0076]
在一实施方式中,所述第二计算模块540具体用于:将所述第二特征层通过所述第二变换卷积层得到第一输出结果;将所述第三特征层通过所述第三变换卷积层变换通道数,通过所述第一膨胀卷积
层扩充视野度,通过所述第一反卷积层进行上采样,得到第二输出结果;将所述第一输出结果和所述第二输出结果相加得到第三输出结果;将所述第三输出结果通过所述第四变换卷积层变换通道数,通过所述第二膨胀卷积层扩充视野度,通过所述第二反卷积层进行上采样,得到第四输出结果;将所述第一特征层通过所述第一变换卷积层得到第五输出结果;将所述第四输出结果和所述第五输出结果相加得到第六输出结果;将所述第六输出结果通过所述后续卷积层得到所述各信号时频图对应的最终预测结果。
[0077]
在一实施方式中,所述第二构建模块560具体用于:将各所述信号时频图划分为多个网格,对所述各网格设置预设数量的锚框;通过所述第一损失函数计算各所述锚框的目标有无损失,并计算各所述锚框的目标有无损失的总和,得到第一预测损失;通过所述第二损失函数计算各所述锚框的目标类别损失,并计算各所述锚框的目标类别损失的总和,得到第二预测损失;通过所述第三损失函数计算各所述锚框的目标坐标损失,并计算各所述锚框的目标坐标损失的总和,得到第三预测损失;将所述第一预测损失乘以第一权重系数的积值、所述第二预测损失乘以第二权重系数的积值、所述第三预测损失乘以第三权重系数的积值求和,得到所述当前训练损失。
[0078]
在一实施方式中,所述第二构建模块560具体还用于:在第i个网格的第j个锚框包含真实目标信息时,通过所述第一损失函数根据预测的第i个网格的第j个锚框存在所述真实目标信息的置信度计算第i个网格的第j个锚框的目标有无损失;在第i个网格的第j个锚框不包含真实目标信息时,通过所述第一损失函数根据预测的第i个网格的第j个锚框存在所述真实目标信息的置信度和第i个网格的第j个锚框与所述真实目标信息所在区域的交并比计算第i个网格的第j个锚框的目标有无损失。
[0079]
在一实施方式中,所述第二构建模块560具体还用于:根据以下公式(1)计算第i个网格的第j个锚框的目标有无损失:公式(1)为:;其中,为第i个网格的第j个锚框的所述目标有无损失,为预测的第i个网格的第j个锚框存在所述真实目标信息的置信度,表示第i个网格的第j个锚框包含真实目标信息。
[0080]
在一实施方式中,根据公式(2)计算第i个网格的第j个锚框的目标有无损失:公式(2)为: 其中,为第i个网格的第j个锚框的所述目标有无损失,为预测的第i个网格的第j个锚框存在所述真实目标信息的置信度,为第i个网格的第j个锚框与
所述真实目标信息所在区域的交并比,表示第i个网格的第j个锚框不包含真实目标信息。
[0081]
在一实施方式中,所述第二构建模块560具体还用于:根据公式(3)确定各所述锚框的所述目标类别损失,其中:公式(3)为:;其中,为第i个网格的第j个锚框的所述目标类别损失,nc为所述预设数量,k为所述真实目标信息的类别,当第i个网格的第j个锚框对应的预测类别为所述真实目标信息的类别时为1,否则为0,为预测第i个网格的第j个锚框属于所述真实目标信息的类别的概率。
[0082]
在一实施方式中,所述第二构建模块560具体还用于:根据公式(4)确定各所述锚框的所述目标坐标损失,其中:公式(4)为:;其中,为第i个网格的第j个锚框的所述目标坐标损失,表示第i个网格的第j个锚框对应的预测目标区域与所述真实目标信息所在区域的交并比,表示第i个网格的第j个锚框对应的预测目标区域的中心点与所述真实目标信息所在区域的中心点的直线距离,c表示第i个网格的第j个锚框对应的预测目标区域与真实目标信息所在区域最小外接矩阵的斜对角线长度,α为第一预设参数,v为第二预设参数。
[0083]
在一实施方式中,所述第二构建模块560具体还用于:通过kmeans算法将各所述信号时频图中的真实目标信息聚成所述预设数量的聚类类别,获取各聚类类别对应的聚类中心;获取所述各聚类中心的坐标,根据所述各聚类中心的坐标调整对应锚框的尺寸。
[0084]
在一实施方式中,所述调整模块570具体用于:判断所述当前训练损失是否小于预设训练损失阈值;若所述当前训练损失大于所述预设训练损失阈值,则继续对所述初始检测模型进行训练,将所述当前训练损失通过小批量梯度下降算法以反向传播的方式对所述初始检测模型进行调整,直至连续在n个训练周期获取到的训练损失小于所述预设训练损失阈值,则将调整后的初始检测模型作为所述目标检测模型。
[0085]
本实施例提供的目标检测模型的训练装置,改进了目标检测模型的网络结构,使用膨胀卷积层和反卷积层进行上采样,扩充了特征层的视野度,并在损失函数中加入了负样本权重系数,使得目标检测模型在训练中更顺利地区分真实目标区域和空白目标区域,可以快速训练以及检测信号时频图中的信号数据,并且准确地检测出各种类型的信号数据。
[0086]
实施例3本实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现实施例1所述的目标检测模型的训练方法。
[0087]
本实施例提供的计算机设备可以实现实施例1所述的目标检测模型的训练方法,为避免重复,在此不再赘述。
[0088]
实施例4本实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现实施例1所述的目标检测模型的训练方法。
[0089]
本实施例提供的计算机可读存储介质可以实现实施例1所述的目标检测模型的训练方法,为避免重复,在此不再赘述。
[0090]
在本实施例中,计算机可读存储介质可以为只读存储器(read-only memory,简称rom)、随机存取存储器(random access memory,简称ram)、磁碟或者光盘等。
[0091]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和结构图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,结构图和/或流程图中的每个方框、以及结构图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0092]
另外,在本发明各个实施例中的各功能模块或单元可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或更多个模块集成形成一个独立的部分。
[0093]
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。
再多了解一些

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

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

相关文献