手机版
您的当前位置: 恒微文秘网 > 范文大全 > 专题范文 > 面向星载边缘计算的遥感目标检测算法轻量化优化研究

面向星载边缘计算的遥感目标检测算法轻量化优化研究

来源:专题范文 时间:2024-01-09 18:19:02

张鹏程,武文波*,李 强,2,曹城华

1.北京空间机电研究所,北京 100090

2.西北工业大学,西安 710072

星载遥感图像实时目标检测技术可以在星上实时提取高价值遥感目标,相比于将原始数据传回地面再进行目标检测的处理方案而言,可以有效降低时延,减少数据传输带宽,对实时性需求较高的遥感图像应用有重要意义[1-3].目前,在遥感图像目标检测领域,基于深度神经网络的目标检测算法借助其更强的目标检测能力,已经逐渐取代了传统的基于特征的目标检测算法[4-7],并且随着深度神经网络的深度不断提升,其目标检测性能也越来越好.然而,星载硬件设备的计算资源和存储资源都十分匮乏,目前很多具备良好目标检测性能的检测网络算法开销大,对算力要求高,难以部署到星载硬件设备中.相关研究表明,如何将具有优秀目标检测能力的网络模型部署到资源有限的宇航级芯片上,是遥感图像实时目标检测技术在星载应用方面亟需解决的一项关键技术,而利用网络模型轻量化优化技术可以减少目标检测网络的大小,从而降低对算力、存储的需求,因而具有重要的研究意义[8-11].

深度卷积神经网络算法在边缘计算设备的实际应用部署,主要受到3点因素的影响:1)网络权重参数大小的限制:卷积神经网络的强大检测能力来源于数百万个可以训练的权重参数,所以模型的存储和运行都需要大量空间;
2)运行时所需内存的限制:在推理运算时,卷积神经网络的激活和响应也需要占用内存空间,有时甚至比模型权重参数占用的内存空间更多;
3)计算操作次数的限制:卷积操作在分辨率较高的图像上会有非常大的计算量,深度高的卷积神经网络可能需要几分钟才能在边缘设备上处理一副图像,因此在实时性要求高的应用方面是无法满足要求的.

为了摆脱这3点因素的限制,国内外学者提出了包括低秩近似、网络量化、权重修剪、动态推理等各种方法[12].文献[13]使用奇异值分解等方法减少运算量,这种方法在全连接层上的轻量化效果非常突出,但是对运算量大的卷积层的轻量化效果较弱.文献[14]通过最小化特征映射误差来裁剪重要性低的滤波器,但是增加了额外的存储开销.文献[15]提出并改进了一种二值神经网络(BNN),将神经网络的权重和激活二值化,并通过策略使得该网络能够和量化前的网络具有相同的目标检测性能,但会导致训练速度降低.文献[16]将知识蒸馏方法引入目标检测模型,但是该方法限制较多,适用条件苛刻.文献[17]提出了一种针对卷积神经网络的卷积核剪枝的方法,能够在基本保证卷积神经网络完整性的情况下有效减少参数量和计算量,卷积核剪枝能够广泛应用于以卷积神经网络为核心的目标检测模型,具备很强的拓展性,很适合用于设计目标检测模型轻量化方案.

本文基于卷积核剪枝技术,针对天基边缘端智能计算应用场景下的遥感目标检测模型设计了一个压缩方案,在对网络进行裁剪的同时,保证了卷积神经网络结构的完整性,适合用于现场可编程门阵列(FPGA)处理器的硬件加速.使用剪枝后的模型在遥感飞机图像数据集上进行目标检测实验,结果证明,该压缩方案可以在裁减掉30~50%的参数的情况下,目标检测性能下降不超过2%.

在星载、机载等遥感应用领域,由于边缘设备的体积、功耗、算力等限制,选择的目标检测网络模型必须具备网络结构简单、参数量相对较少等特点.目前在遥感图像目标检测领域应用较多的目标检测算法有Faster R-CNN、SSD、YOLO等[18-22].其中YOLO算法是典型的单阶段检测算法,相比两阶段检测算法而言有更低的计算复杂度,实时性更强.目前,YOLO系列算法已经发展到了YOLOv5,该网络主要由图像输入层(input)、主干层(backbone)、特征提取层(neck)、目标检测层(head)构成,其网络结构如图1所示.

其中,图像输入层使用了Mosaic数据增强、自适应锚框计算等图像预处理技术,极大地丰富了检测数据集,让网络结构有更好的鲁棒性.主干层包含Focus单元、CBL单元(convolution、batch normalization、leaky rectified linear unit,卷积、批归一化、激活函数)、CSP单元(cross stage partial)和SPP单元(spatial pyramid pooling),其中Focus单元是改进后的下采样层,在不带来信息丢失的前提下,使得特征提取得更加的充分;
CSP单元参考了CSPNet[23]的网络结构,先将基础层的特征映射划分为2部分,然后通过跨阶段层次结构将它们合并,在减少了计算量的同时可以保证准确率;
CBL单元主要完成卷积、批量归一化和激活功能;
SPP层用于完成最大池化功能.特征提取层使用了特征金字塔网络(FPN)[24]和路径聚合网络(PAN)[25]的结构,通过上采样的方式对图像特征进行传递融合.YOLOv5继承了先前版本的优点,在检测精度和速度上都更强,是一个高性能的通用目标检测模型.

YOLOv5模型根据深度和宽度不同,总共分为s、m、l、x共4个模型,这4个模型具有相同的网络结构,通过调整深度和宽度这2个参数来改变模型的大小.其中YOLOv5s模型的深度最浅,目标检测精度相比其它3个模型要略低一些,但是也具有最小的网络模型大小.本文选用最小的YOLOv5s模型作为待剪枝的模型进行实验,由于这4个模型结构相同,所以本方案也可以运用到其他3个模型上.YOLOv5s网络输入为1024 pixel×1024 pixel的3波段RGB图像,输出3个不同分辨率的目标检测层,能够更好地适应不同分辨率的目标检测任务.

图1 YOLOv5模型结构Fig.1 The structure of YOLOv5 model

“剪枝”是将卷积神经网络汇总的某些神经元或卷积核删除,以达到模型压缩的效果.卷积核剪枝属于结构化剪枝,以卷积层中的卷积核为单位对网络进行裁剪.

2.1 总体轻量化方案

本文选取YOLOv5模型作为压缩对象,针对该模型的压缩方案如图2所示.首先,在训练时对卷积层中的卷积核附加稀疏因子,进行稀疏化训练,对卷积核的重要性进行评估和排序,随后根据裁剪率来设置阈值,将重要性低于该阈值的卷积核删除.最后将裁剪后的目标检测模型再次通过训练来微调权重参数,补偿因为剪枝带来的目标检测性能下降.主要分为以下3步:

1)通过稀疏化训练,评估卷积层中各个卷积核的重要程度;

2)根据步骤1)的结果,设置阈值,对重要性低于阈值的卷积核进行剪枝;

3)对剪枝后得到的精简模型进行训练,微调参数,并使用测试集进行测试.

图2 模型压缩方案流程图Fig.2 The flow chart of model compression

2.2 稀疏化训练方案

本方案针对每一个卷积核引入一个缩放因子γ,卷积核的原本输出会和γ相乘后作为最终输出.在训练目标检测网络时,会同时训练网络的权值和缩放因子γ,并且在训练时对缩放因子γ进行稀疏正则化,使得网络中不重要的卷积核的缩放因子变为0.最后,根据缩放因子对网络进行剪枝,并对剪枝后的网络进行微调.具体来说,训练后模型的损失函数可以由式(1)给出.

L=∑(x,y)l(f(x,W),y)+λ∑γ∈Γg(γ)

(1)

其中,变量L表示稀疏化训练后模型的损失,变量x表示模型的输入,变量W表示可训练的权值,函数f(x,W)表示模型的输出,变量y表示样本标签值,函数l表示未经过稀疏化的正常训练后模型输出和标签值的误差,公式右侧第一个累加项代表YOLOv5模型在正常训练时的损失函数,函数g(γ)是针对缩放因子γ的约束,这里采用L1正则化作为约束,λ是用于平衡2个累加项的参数.由于修剪卷积核本质是删除该卷积核的所有传入和传出连接,所以可以直接获得一个狭窄的网络.在修剪过程中,缩放因子γ将作为该卷积核是否应当被修剪的评判标准.

而在YOLOv5s模型中,每个卷积层后都添加了批量正则化层(batch normalization,后简称BN层).令变量zin和zout分别代表BN层的输入和输出,Β代表一组传入的输入数据.则BN层会做式(2)的运算

(2)

其中,变量μΒ和σB为输入数据的均值和标准差,而变量γ和β则是可训练的缩放因子和位移因子.本文在设计方案时直接利用BN层的缩放因子γ作为网络剪枝所需的缩放因子,原因有3点:

1)如果在没有BN层的CNN上增加缩放层,则缩放因子的值对于评估通道的重要性是没有意义的.通过减小缩放因子的值,同时放大卷积层中的权值,可以得到相同的输出.这使得缩放因子失去了参考价值.

2)如果在BN层之前插入一个缩放层,则这个缩放层的缩放效应会被BN层的归一化过程完全抵消.导致增大了一个额外的缩放层的开销完全没有起到作用.

3)如果在BN层后插入缩放层,则每个通道有2个连续的缩放因子,相比于单独的BN层来说并没有达到质变,反而增大了开销.

分析得出,BN层中的缩放因子γ本身就决定了该通道在特征选择中起到的作用,所以训练过程中可以直接将BN层中的缩放因子γ作为稀疏化所需的缩放因子进行训练迭代,好处是没有给网络增加额外的开销.在代码层面的实现中,直接在训练时对BN层中的缩放因子γ做稀疏化处理即可.

2.3 卷积核剪枝方案

在对模型进行稀疏化训练后,能够得到如图3(a)所示的训练结果,其中有大量的通道的缩放因子的值接近0.通过引入一个阈值α,将缩放因子低于α的卷积核及其输入输出通道全部删除,从而实现卷积核剪枝.在代码层面的实现中,阈值α可以通过对训练后的缩放因子进行排序,根据预设的裁剪率n,选择排序后对应位置的缩放因子γn作为阈值α.裁剪后的结果如图3(b)所示.

需要注意的是,YOLOv5模型中具有类似残差网络的跳跃连接结构,该结构也同样拥有卷积核和BN层.如果对该结构的BN层参数进行稀疏化训练或者裁剪操作,会导致破坏跳跃连接结构,使模型失去目标检测性能.所以本文在稀疏化训练和剪枝的过程中,把跳跃连接结构的BN层排除在外,在代码层面的实现中,在稀疏化训练和对模型进行裁剪时将跳跃连接结构的BN层忽略,只对其他卷积核的BN层做稀疏训练和剪枝.

图3 裁剪前后的通道连接情况Fig.3 The connection before and after pruning

3.1 实验环境及数据集

本文的实验环境选用RTX3050Ti显卡,拥有4G显存,软件环境为Pytorch1.8.2和Cuda11.1.使用遥感图像飞机数据集,共有11类飞机,目标总数量为9072个.其中训练集包括308张图片,测试集包括122张图片,均为3通道,像素为4096 Pixel×4096 Pixel的图片.为了加快训练速度,将图片裁剪为3通道,像素1024Pixel×1024Pixel的图片.最终训练集包括2284张图片,测试集包括828张图片.数据集中各个飞机类别的目标数如表1所示.

表1 数据集中各分类的目标总数Tab.1 Total number of targets for each category in the dataset

3.2 实验方案

为了从多方面评估该方案的可行性,本文根据稀疏因子λ和剪枝裁剪率n设置了对比实验.其中λ取值为0、0.1、0.01、0.005、0.0005、0.00001,n取值为0.3、0.4、0.5.对于压缩后的模型,以预测率、召回率、mAP、FLOPS、参数量和模型文件大小进行评估和对比.其中mAP指平均精确率,用于衡量目标检测模型的检测精度,FLOPS表示模型运行时进行的浮点数运算次数.

3.3 实验结果

(1)BN层缩放因子稀疏化结果

图4展示了选取不同稀疏因子时,BN层缩放因子分布随着训练推进的变化,其中横坐标表示BN层参数的大小,而纵坐标表示BN层参数的数量,每一条曲线都表示在训练完一个轮次之后BN层参数的分布情况.可以看出,在不对模型做稀疏化训练时(λ=0时),BN层缩放因子在训练过程中保持近似正态分布,接近0的缩放因子较少,难以进行剪枝操作.而在对模型做稀疏化训练后,BN层缩放因子会逐渐稀疏到0附近.其中,在稀疏因子取值较大时(λ=0.1时),BN层缩放因子会被过稀疏,导致几乎所有BN层缩放因子都被稀疏为0,从而使模型失去检测效果;
在稀疏因子取值合适时(λ=0.01、λ=0.0005时),可以在保持检测效果的同时,能够有部分BN层参数被稀疏到0附近,从而方便后续的剪枝操作;
而在稀疏因子取值较小时(λ=0.00001时),稀疏化效果不明显,训练后BN层缩放因子还是呈现近似正态分布.

图4 稀疏化训练后缩放因子分布图Fig.4 Weight distribution after sparse training

稀疏因子的选择也会影响到最大裁剪率.如图4中c、d图所示,当稀疏因子为0.01时,被稀疏到0附近的BN层缩放因子参数占比高,所以当裁剪率较大时,会导致一个卷积层中所有卷积核都被删除,模型结构发生变化,从而失去目标检测性能.稀疏因子和最大裁剪率的关系如表2所示,其中最大裁剪率定义为“保证不会有某一个BN层的全部通道都被裁剪的最大裁剪比例”.可以发现,并不是稀疏因子取值越大,就可以得到更大的裁剪率.在稀疏因子取值较大时,过多的BN层缩放因子参数被稀疏到0,会导致在进行更高裁剪率的剪枝时出现删除一整层的全部通道的情况,导致模型失去检测效果.

表2 不同稀疏因子的最大裁剪率Tab.2 Maximum pruning rates of different sparsity factors

而在对模型进行剪枝并且微调后,由于在微调训练时不会给模型施加稀疏化约束,所以BN层缩放因子的分布又会逐渐变为正态分布,如图5所示,a、b、c图中的左图均为稀疏化训练时的BN层缩放因子分布变化图,右图为剪枝微调时的BN层缩放因子分布变化图.

图5 剪枝微调前后的BN层缩放因子参数分布对比图Fig.5 Distribution of weight before and after pruning

(2)稀疏化训练后的目标检测性能

在对稀疏化训练后的模型做剪枝并微调训练后,得到的模型的目标检测性能如表3所示.通过对比可以发现,剪枝可以极大程度地减少模型的参数量和运算量,能够减少30~50%左右的参数量和运算量,并且预测率、召回率、mAP等重要检测指标和正常训练时的指标相差在2%以内,而单张图像推理时间下降了10%左右.

图6 不同稀疏因子下的目标检测结果对比Fig.6 Comparison of target detection results under different sparsity factors

表3 剪枝前后模型的检测性能Tab.3 Detection performance of models before and after pruning

作为对比,表4对比了不同的神经网络优化方法对于本数据集的优化效果.其中Vitis-AI工具是Xilinx官方提供的用于将神经网络移植到FPGA开发板上的优化工具,而Slim剪枝方案是参考了文献[26] 在本数据集上做的对比实验.可以发现本文提出的基于卷积核剪枝的优化方法在模型大小和推理时间方面都有一定的优势.

表4 具体性能参数对比Tab.4 Comparison of performance parameters

此外,由于数据集中A、G、H类飞机目标的样本量较少,所以这几个类别的检测效果可能会因样本量不足而失去参考价值,影响到整体的目标检测效果.所以这里专门列举样本量最多的J类飞机的检测效果作为参考,如表5所示,J类飞机的目标检测性能由于样本量充足,明显优于整体的目标检测性能.对比发现,在样本量大,训练效果好时.该剪枝方法并不会因为参数量减少而影响到目标检测效果.在裁剪率达到0.5时,还能够超越正常训练时的目标检测性能.在稀疏因子为0.01,不做裁剪时,模型的目标检测性能相比于正常训练倒退最多,达到3%左右,原因是稀疏因子为0.01时,较多BN层参数被稀疏为0,在本身模型能够实现很高精度的目标检测率时,稀疏训练导致丢失了较多BN层缩放因子,影响到了模型的检测精度.其他样本量较多的分类如C、F、K类,也可以达到和J类飞机目标接近的检测性能.

表5 剪枝前后模型对J类飞机的检测性能对比Tab.5 Comparison of detection performance of model before and after pruning for class J aircraft

此外,裁剪前后的模型权重文件大小对比如表6所示.经过剪枝后,权重大小的减少量和裁剪率保持一致,能够达到30-50%的裁剪水平,而目标检测性能能够保持和裁剪前的原始模型差距在2%以内.

表6 剪枝前后模型文件大小Tab.6 Model file sizes before and after pruning

3.4 总结与分析

通过观察和比较实验结果,可以得出以下结论:

1)对于剪枝并微调后的模型来说,虽然减少了30~50%左右的参数量,但是目标检测性能下降不超过2%.并且部分模型相较于正常训练时的性能甚至有所提高.在预测率、召回率和mAP等目标检测指标方面都能够提升1~2%左右.这说明原有模型的权重参数的过拟合较为严重,通过引入L1正则化用于稀疏化训练,能够有效地降低过拟合,起到给目标检测模型“瘦身”却不影响性能的效果.

2)过大或过小的稀疏因子反而会导致训练结果变差.λ=0.1时,会导致训练后模型权重过稀疏,从而完全失去检测性能;
λ=0.01时,会导致训练后模型的最大裁剪率较低;
λ=0.00001时,会导致训练后模型权重参数依然保持近似正态分布,无法进行裁剪.只有当λ取值适中时,才能让训练后的模型拥有较高的最大裁剪率,适合用于轻量化优化.

本文基于卷积核剪枝原理,针对YOLOv5模型,提出了一种基于卷积核剪枝的遥感图像实时目标检测深度网络模型压缩方案.实验结果表明,该方案有效降低了模型的过拟合,能够在裁剪了30~50%的模型参数的情况下,模型的目标检测性能下降不超过2%.可以极大程度地减少深度网络模型对计算资源的消耗,为基于卷积神经网络的遥感图像实时目标检测算法在星载设备的部署提供了理论方案.

猜你喜欢剪枝卷积神经网络人到晚年宜“剪枝”保健医苑(2022年5期)2022-06-10基于3D-Winograd的快速卷积算法设计及FPGA实现北京航空航天大学学报(2021年9期)2021-11-02基于YOLOv4-Tiny模型剪枝算法成都信息工程大学学报(2021年6期)2021-02-12基于激活-熵的分层迭代剪枝策略的CNN模型压缩计算机应用(2020年5期)2020-06-07神经网络抑制无线通信干扰探究电子制作(2019年19期)2019-11-23从滤波器理解卷积电子制作(2019年11期)2019-07-04基于傅里叶域卷积表示的目标跟踪算法北京航空航天大学学报(2018年1期)2018-04-20剪枝天津诗人(2017年2期)2017-03-16基于神经网络的拉矫机控制模型建立重型机械(2016年1期)2016-03-01复数神经网络在基于WiFi的室内LBS应用大连工业大学学报(2015年4期)2015-12-11

恒微文秘网 https://www.sc-bjx.com Copyright © 2015-2024 . 恒微文秘网 版权所有

Powered by 恒微文秘网 © All Rights Reserved. 备案号:蜀ICP备15013507号-1

Top