层剪枝方法、厨余垃圾检测方法及遥感图像车辆检测方法

文档序号:33322596发布日期:2023-03-03 21:26阅读:32来源:国知局
层剪枝方法、厨余垃圾检测方法及遥感图像车辆检测方法

1.本发明属于深度学习检测技术领域,具体涉及一种层剪枝方法、厨余垃圾检测方法及遥感图像车辆检测方法。


背景技术:

2.随着深度学习技术的发展,基于人工智能的成果已经广泛应用到了人们的生活当中,包括农业植保、遥感检测、智能交通、灾难救援等场景,深度学习技术已然成为当下的研究热点。目标检测作为计算机视觉中的一项基本任务,已经得到了极大的发展,但对于厨余垃圾检测与无人机平台目标检测而言,仍面临许多挑战。厨余垃圾检测与无人机平台目标检测不同于传统的离线处理,其均需要高速地检测图像中的目标。对于厨余垃圾检测而言,亟需提高垃圾检测的速度,以便于后续垃圾分拣的任务。而对于无人机平台的遥感图像车辆检测,其也需要快速的完成检测过程。因此,常规的基于深度学习的目标检测方法并无法直接应用于厨余垃圾检测或无人机中的遥感图像车辆检测。因此研究如何实现高精度、高速度的厨余垃圾检测与无人机平台的遥感车辆目标检测,就具有重要的意义。
3.现阶段,基于深度学习的检测模型存在参数量大、计算量高等问题,针对计算和存储资源受限的无人机平台,需对已有模型研究一系列参数剪枝、量化加速等方法。参数剪枝是一种重要的模型压缩方法,具体包括通道剪枝和层剪枝等。通道剪枝虽然能大幅度减少参数量和计算量,但在边缘设备部署时,由于模型的内存访问成本依然很高,最终模型部署时的速度提升非常有限。层剪枝的加速效果更加理想,通过删除模型的冗余卷积层,同时大幅降低模型的参数量、计算量和内存访问成本,能够有效提高模型推理速度。因此,层剪枝方式相比通道剪枝对硬件实际部署更加友好。
4.但是,深度学习神经网络的性能通常与网络的层数大小呈正比关系,裁剪卷积层通常会导致深度学习模型性能严重下降,因此需要在剪枝率和性能之间做出良好的权衡。传统的层剪枝方法通过卷积重要性评价算法选择出冗余卷积层,再删除冗余层重新进行训练得到最终的推理模型。一方面,模型直接删除冗余层,将导致模型性能急剧下降,模型再次训练时难以恢复到初始精度;另一方面,若为了保持模型性能而降低剪枝率,则模型的推理速度无法得到大幅度的提高。
5.综上所述,当前的检测方法在访问模型的内存时所需的成本相对较高,且对于速度的提升存在一定的限制,模型的性能与剪枝率之间的比例关系在一定程度上的相互影响,存在精度与速度方面的双重问题。


技术实现要素:

6.本发明的目的之一在于提供一种模型压缩率高、不下降性能、可靠性好的层剪枝方法。
7.本发明的目的之二在于提供一种包括了所述层剪枝方法的厨余垃圾检测方法。
8.本发明的目的之三在于提供一种包括了所述层剪枝方法的遥感图像车辆检测方
法。
9.本发明提供的这种层剪枝方法,包括如下步骤:
10.s1.确定目标网络模型,以及获取训练数据集;
11.s2.采用步骤s1获取的训练数据集,针对步骤s1获取的目标网络模型进行训练,获取基础网络模型;
12.s3.采用步骤s2获取的基础网络模型进行等价替换处理,获取解耦网络模型;
13.s4.采用步骤s1获取的训练数据集,针对步骤s3获取的解耦网络模型再次进行训练,获取训练后的解耦网络模型;
14.s5.采用步骤s4获取的训练后的解耦网路模型进行等价解耦处理,确定卷积层及其参数;
15.s6.采用步骤s5获取的卷积层及其参数进行合并处理,获得层剪枝后的网络模型,完成目标网络模型的层剪枝。
16.步骤s1所述的获取训练数据集,具体包括:采集训练图片,对获取的图片进行随机处理,所述随机处理包括多尺度数据增强、左右翻转、光照增强和使用补灰度值的方式统一图片大小;将图片目标的标签整理为统一的格式(n,x,y,w,h),其中,n为目标类别,(x,y)是目标的中心坐标,w是目标宽度,h是目标高度。
17.步骤s3所述的采用步骤s2获取的基础网络模型进行等价替换处理,具体包括:
18.(1)将基础网络模型中的卷积层等价替换为解耦卷积层:
19.将原卷积与单位卷积进行并联处理,单位卷积为1*1核的核卷积,初始权重为单位矩阵;
20.替换前的输入为xi,卷积层输出为yi,计算过程表示为:yi=wc*xi,其中wc为替换前卷积层的参数;等价解耦后,解耦卷积层的计算过程表征如下:
21.yi'=α
·
wc*xi+(1-α)
·
we*xi22.其中,yi'为解耦后的卷积层输出,we为解耦后的单位卷积层的参数,学习参数α用于控制两个卷积的比重,且初始设置为α=1.0;
23.(2)将基础网络模型的激活层等价替换为解耦激活层:
24.替换前的输入为xi,激活层输出为yr,计算过程表述为:
[0025][0026]
式中act()为激活层的函数表达式;
[0027]
等价解耦后,解耦激活层的计算过程表征如下:
[0028][0029]
其中,yr′
为解耦后的激活层输出,学习参数β用于控制负轴斜率,且初始设置为β=1.0;
[0030]
当解耦激活层后连接解耦卷积层时,收集相邻解耦层的参数用于构建组成(α,β)对,将所有(α,β)对用于组成集合m。
[0031]
步骤s4所述的采用步骤s1获取的训练数据集,针对步骤s3获取的解耦网络模型再次进行训练,获取训练后的解耦网络模型,具体包括:
[0032]
(1)针对步骤s3获取的解耦网络模型进行再次训练处理,训练时采用的所有流程与步骤s2训练流程一致;
[0033]
(2)k为需要被压缩的层的个数,每n个训练批次完成后,变量k的值增加1,直至达到预设的层压缩比k%,其中,n为设定的训练次数;
[0034]
(3)计算集合m中所有(α,β)对的和的值,根据值的大小进行排序;选择前k个最小计算值所对应的(α,β)对组合成集合m',对集合m'施加惩罚梯度,使其在数值上逐渐衰减到0;
[0035]
(4)g为损失函数l对卷积的回传梯度,l为学习率,w'为更新后的参数,则模型参数w的更新方式为:
[0036]
w'=w-lg
[0037]
对于需要被衰减的m'中的α和β,梯度设置为固定值g=0.005,m'中的α和β将在固定梯度影响下逐渐变小,直至趋近于0;
[0038]
对于m'以外的α和β,保留回传梯度g,施加额外的惩罚梯度衰减,以提高压缩效率,采用如下的计算方式进行:
[0039]
w'=w-lg+λp
[0040]
其中,λp为施加的惩罚梯度,λ为惩罚因子,p为符号函数,且满足:
[0041][0042]
步骤s5所述的采用步骤s4获取的训练后的解耦网路模型进行等价解耦处理,确定卷积层及其参数,具体包括:
[0043]
(1)将模型中所有解耦卷积层等价转换为普通卷积形式:设解耦卷积层的输入为xi,解耦卷积层输出为yi,解耦卷积层的计算过程表征如下:
[0044]
yi=α
·
wc'*xi+(1-α)
·
we'*xi[0045]
其中,wc'为解耦卷积的卷积层更新后的参数,we'为解耦卷积的1*1卷积层更新后的参数,当α=0时,yi=we'*xi,则该解耦卷积层等价转换为一个1*1卷积层;当α≠0时,将we'的参数合并到wc'中,yi=w
c”*xi,其中w
c”=α
·
wc'*xi+(1-α)
·
we',解耦卷积层等价转换为解耦前的卷积形式,且与解耦前的卷积层保持核大小相同;
[0046]
(2)将模型中所有解耦激活层等价转换为普通激活层或直接移除:解耦激活层的计算过程为:
[0047][0048]
其中,输入为xi,解耦激活层输出为yr′
;当β=0时,yr′
=xi,则激活层不具备非线性,直接移除;当β≠0时,将激活层等价转换为普通激活层,则激活层具有非线性,使得相邻的卷积层之间不能进行合并处理;
[0049]
设定修剪阈值δ,对(α,β)对进行约减,其中,δ取值是任意自然数;当(α,β)对的值
均为0时,则直接合并α所在卷积层的参数到前一级卷积层的参数中,将被压缩的卷积层记为d'。
[0050]
步骤s6所述的采用步骤s5获取的卷积层及其参数进行合并处理,获得层剪枝后的网络模型,具体包括:
[0051]
依次合并被压缩的卷积层d'中卷积层的参数到其前级卷积层的参数中,前级卷积层与激活层的计算为:
[0052]
y1=act1(w1*x)
[0053]
后级卷积层与激活层的计算为:
[0054]
y2=act2(w2*y1)
[0055]
其中,x为输入特征,y1为前级卷积层的输出特征,y2为后级卷积层的输出特征,w1为前级卷积层参数,act1为前级卷积层的激活层,w2为后级卷积层参数,act2为后级卷积层的激活层,*为卷积运算符;由于act1中β=0,且后级卷积层的α=0,则计算过程为:
[0056]
y2=act2(w2*w1*x)=act2(w1'*x)
[0057]
w1'为合并后的新卷积权重,且w1'=w2*w1,此时w2所在的卷积层被压缩,其中,w2的参数为1*1卷积核形式参数。
[0058]
本发明还提供了一种包含所述层剪枝方法的厨余垃圾检测方法,具体包括如下步骤:
[0059]
a.采集厨余垃圾的图像,并构建原始数据集;
[0060]
b.以yolov5模型为基础模型,搭建并训练得到目标检测模型;
[0061]
c.对步骤b得到的目标检测模型,采用所述的层剪枝方法处理,得到压缩后的厨余垃圾检测模型;
[0062]
d.采用步骤c得到的厨余垃圾检测模型,进行实际的厨余垃圾检测。
[0063]
本发明还提供了一种包含所述层剪枝方法的遥感图像车辆检测方法,具体包括如下步骤:
[0064]
a.采集原始遥感车辆的图像,构建原始数据集;
[0065]
b.以yolov5模型为基础模型,搭建并训练得到目标检测模型;
[0066]
c.对步骤b得到的目标检测模型,采用所述的层剪枝方法处理,得到压缩后的遥感图像车辆检测模型;
[0067]
d.将步骤c得到的遥感图像车辆检测模型部署到无人机平台上,进行实际的遥感图像车辆检测。
[0068]
本发明提供的这种层剪枝方法、厨余垃圾检测方法及遥感图像车辆检测方法,通过对目标网络模型进行训练、等价处理、再次训练、等价解耦处理、获取相关参数、确定层剪枝后的模型等处理,形成目标检测方法,同时也针对遥感图像车辆完成检测;本发明方法具有模型压缩率高、不下降性能、可靠性好的优点。
附图说明
[0069]
图1为本发明的层剪枝方法的方法流程示意图。
[0070]
图2为本发明的厨余垃圾检测方法的方法流程示意图。
[0071]
图3为本发明的遥感图像车辆检测方法的方法流程示意图。
具体实施方式
[0072]
如图1所示为本发明中层剪枝方法流程示意图:本发明提供的层剪枝方法,包括如下步骤:
[0073]
s1.确定目标网络模型,以及训练数据集;
[0074]
确定训练数据集,具体包括:采集训练图片,对获取的图片进行随机处理,包括多尺度数据增强、左右翻转、光照增强、使用补灰度值的方式统一图片大小;将图片目标的标签整理为统一的格式(n,x,y,w,h),其中,n为目标类别,(x,y)是目标的中心坐标,w是目标宽度,h是目标高度;
[0075]
s2.采用步骤s1获取的训练数据集,针对步骤s1获取的目标网络模型进行训练,获取基础网络模型;
[0076]
s3.采用步骤s2获取的基础网络模型进行等价替换处理,获取解耦网络模型,等价替换处理具体包括:
[0077]
(1)将基础网络模型中的卷积层等价替换为解耦卷积层:
[0078]
将原卷积与单位卷积进行并联处理,单位卷积为1*1核的核卷积,初始权重为单位矩阵;
[0079]
替换前的输入为xi,卷积层输出为yi,计算过程表示为:yi=wc*xi,其中wc为替换前卷积层的参数;等价解耦后,解耦卷积层的计算过程表征如下:
[0080]
yi'=α
·
wc*xi+(1-α)
·
we*xi[0081]
其中,yi'为解耦后的卷积层输出,we为解耦后的单位卷积层的参数,学习参数α用于控制两个卷积的比重,且初始设置为α=1.0;
[0082]
(2)将基础网络模型的激活层等价替换为解耦激活层:
[0083]
替换前的输入为xi,激活层输出为yr,计算过程可表述为:
[0084][0085]
式中act()为激活层的函数表达式;
[0086]
等价解耦后,解耦激活层的计算过程表征如下:
[0087][0088]
其中,yr′
为解耦后的激活层输出,学习参数β用于控制负轴斜率,且初始设置为β=1.0;
[0089]
当解耦激活层后接的是解耦卷积层时,收集相邻解耦层的参数用于构建组成(α,β)对,将所有(α,β)对用于组成集合m;
[0090]
s4.采用步骤s1获取的训练数据集,针对步骤s3获取的解耦网络模型再次进行训练,获取训练后的解耦网络模型,具体包括:
[0091]
(1)针对步骤s3获取的解耦网络模型进行再次训练处理,训练时采用的所有流程与步骤s2所采用的训练保持一致;
[0092]
(2)k为需要被压缩的层的个数,每n个训练批次完成后,变量k的值增加1,到达到
预设的层压缩比k%,其中,n为设定的训练次数;
[0093]
(3)计算集合m中所有(α,β)对的和的值,根据值的大小进行排序,将值的大小作为评估卷积层的重要指标;选择前k个最小计算值对应的(α,β)对组合成集合m',对集合m'施加惩罚梯度,使其在数值上被逐渐衰减到0;
[0094]
(4)g为损失函数l对卷积的回传梯度,l为学习率,w'为更新后的参数,则模型参数w的更新方式为:
[0095]
w'=w-lg
[0096]
对于需要被衰减的m'中的α和β,其梯度设置为固定值g=0.005,m'中的α和β将在固定梯度影响下逐渐变小,直至趋近于0;
[0097]
对于m'以外的α和β,保留回传梯度g,施加额外的惩罚梯度衰减,以提高压缩效率,采用如下的计算方式进行:
[0098]
w'=w-lg+λp
[0099]
其中,λp为施加的惩罚梯度,λ为惩罚因子,p为符号函数,且满足:
[0100][0101]
s5.采用步骤s4获取的训练后的解耦网路模型进行等价解耦处理,确定卷积层及其参数,具体包括:
[0102]
(1)将模型中所有解耦卷积层等价转换为普通卷积形式,设解耦卷积层的输入为xi,解耦卷积层输出为yi,解耦卷积层的计算过程表征如下:
[0103]
yi=α
·
wc'*xi+(1-α)
·
we'*xi[0104]
其中,wc'为解耦卷积的卷积层更新后的参数,we'为解耦卷积的1*1卷积层更新后的参数,当α=0时,yi=we'*xi,则该解耦卷积层等价转换为一个1*1卷积层;当α≠0时,将we'的参数合并到wc'中,yi=w
c”*xi,其中w
c”=α
·
wc'*xi+(1-α)
·
we',解耦卷积层等价转换为解耦前的卷积形式,且与解耦前的卷积层保持核大小相同;
[0105]
(2)将模型中所有解耦激活层等价转换为普通激活层或直接移除;解耦激活层的计算过程为:
[0106][0107]
其中,输入为xi,解耦激活层输出为yr′
,当β=0时,yr′
=xi,则激活层不具备非线性,直接移除;当β≠0时,将激活层等价转换为普通激活层,则激活层具有非线性,使得相邻的卷积层之间不能进行合并处理;
[0108]
设定修剪阈值δ,对(α,β)对进行约减,其中,δ取值是任意自然数;当(α,β)对的值均为0时,则直接合并α所在卷积层的参数到前一级卷积层的参数中,将被压缩的卷积层记为d';
[0109]
s6.采用步骤s5获取的卷积层及其参数进行合并处理,获得层剪枝后的网络模型,具体包括:
[0110]
依次合并被压缩的卷积层d'中卷积层的参数到其前级卷积层的参数中,前级卷积
层与激活层的计算为:
[0111]
y1=act1(w1*x)
[0112]
后级卷积层与激活层的计算为:
[0113]
y2=act2(w2*y1)
[0114]
其中,x为输入特征,y1为前级卷积层的输出特征,y2为后级卷积层的输出特征,w1为前级卷积层参数,act1为前级卷积层的激活层,w2为后级卷积层参数,act2为后级卷积层的激活层,*为卷积运算符;由于act1中β=0,且后级卷积层的α=0,计算过程为:
[0115]
y2=act2(w2*w1*x)=act2(w1'*x)
[0116]
w1'为合并后的新卷积权重,且w1'=w2*w1,此时w2所在的卷积层被压缩,其中,w2的参数为1*1卷积核形式参数。
[0117]
如图2所示为本发明的厨余垃圾检测的方法流程示意图:本发明提供得这种包含所述层剪枝方法的厨余垃圾检测,具体包括如下步骤:
[0118]
a.采集厨余垃圾的图像,并构建原始数据集;
[0119]
b.以yolov5模型为基础模型,搭建并训练得到目标检测模型;
[0120]
c.对步骤b得到的目标检测模型,采用所述的层剪枝方法处理,得到压缩后的厨余垃圾检测模型;
[0121]
d.采用步骤c得到的厨余垃圾检测模型,进行实际的厨余垃圾检测。
[0122]
如图3所示为本发明的遥感图像车辆检测方法的方法流程示意图:本发明提供的这种包含所述层剪枝方法的遥感图像车辆检测方法,具体包括如下步骤:
[0123]
a.采集原始遥感车辆的图像,构建原始数据集;
[0124]
b.以yolov5模型为基础模型,搭建并训练得到目标检测模型;
[0125]
c.对步骤b得到的目标检测模型,采用所述的层剪枝方法处理,得到压缩后的遥感图像车辆检测模型;
[0126]
d.将步骤c得到的遥感图像车辆检测模型部署到无人机平台上,进行实际的遥感图像车辆检测。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1