基于RV-YOLOv3目标检测算法研究∗

2022-12-01 03:40何鹏元戴新发
舰船电子工程 2022年3期
关键词:残差权重卷积

何鹏元 马 中 戴新发 夏 静

(中国船舶集团有限公司第七○九研究所 武汉 430205)

1 引言

近年来,由于当今国际环境复杂,国家对于社会安防的建设不断加强,对安防的系统化、全面化要求越来越高,而其中视频监控[1]是安防工作中最重要的方法,发挥着不可取代的作用。正当深度学习[2]等计算机视觉和图像处理技术的发展,推动各个行业的迅速向智能化的方向演进,为视频监控的发展提供了新的思路,使得视频监控系统在安防环境应用中进入全新的阶段,深度学习的应用对于边防监控视频系统的检测算法研究具有重要的价值。

早期的网络结构主要是通过卷积层的不断堆叠以取得相对较好的结果,从AlexNet到VGG再到GooleNet[3],网络模型的结构层数不断加深变宽,导致模型训练的速度相对降低,如残差网络[4]add In⁃ception系列中的concat操作,多分支复杂结构无疑增加了深度学习的速度,增加了显存的消耗。还有一些轻量级的网络,如DeepwiseConv和shuffleNet中的channel shuffle,这些固然能提升模型的速度,但是相对的也降低了模型的精度,还会提高访存消耗。因此类似VGG的框架RepVGG[5]应运而生,该模型架构简单强大,完全可以理解为是为精度和速度之间最好的平衡,通过将训练过程和推理时间进行解耦来实现精度和速度的完美兼得,即在模型进行前向推理时采用参数融合的方案来实现对于模型速度的提升,采用的技术简称为结构重新参数化。

综上所述,本文采用现阶段主流的单阶段目标检测模型 YOLOv3[6],但是由于 YOLOv3 在对行人检测时精度和速度有所欠缺,又由于RepVGG模型是VGG式的模型,并且单路结构较为灵活,因此替换YOLOv3中的主干网络Darknet-53,并且采用4个尺度的融合,根据样本不平衡的问题采用聚焦损失函数提供模型的泛化能力,使得改进模型RV-YOLOv3在检测的速度和精度上都优于YO⁃LOv3。

2 RV-YOLOv3模型设计

改进模型中选择RepVGG作为主干网络,选择VGG式的网络原因一是网络模型计算速度快,现有的计算库cudnn、Inter MKL等和硬件这对3*3卷积有深度的优化,相比其他卷积核,3*3卷积计算密度更高,更加有效,而且在FLOP相同的条件下,具有高并行度的模型可能会比低并行的模型快的多;原因二是节省内存,我们知道多分支的结构很消耗内存,因为各个分支的结果需要保存,直到最后一步才能把各分支显存释放掉,RepVGG的Plain结构只有一个分支,所以其显存占用的一直是一份;原因三是灵活,多支结构的引入会约束网络结构,这种网络不易扩展,而对应的RepVGG单路结构就比较灵活,就算裁剪后也能得到较好的加速比。

2.1 RV-YOLOv3模型

具体改进模型如图1所示。

图1 RV-YOLOv3模型结构

整个RepVGG网络包含5个stage,stage1有1个残差块,输出特征为112*112,通道个数为(64,64a);stage2有2个残差块,输出特征56*56,通道数位64a个;stage3有4个残差块,输出特征为28*28,通道数为128a;stage4有14个残差块,输出特征为14*14,通道数为256a;stage5包含1个残差块,输出特征图大小为7*7,通道数为512b个。参数a和b用于控制残差块的通道个数,本实验中令a=0.75,b=2.5。

使用了RepVGG替代DarkNet-53,并且在原始模型的3个尺度融合扩展为4个尺度融合,提高模型的鲁棒性,所以需要自下而上融合,进行四次上采样用转置卷积完成,最后得到4种尺度的特征(7*7/14*14/28*28/56*56)。

2.2 池化层改进

根据RepVGG模型的第一阶段第一层可知数据图像进行了步长为2,feature map大小为3*3的卷积操作,卷积神经网络[7]关键技术是对参数共享卷积及池化压缩,由于数据降维提取抽象特征是卷积重点,为了降维使用stride为2的卷积操作,必定会丢失某些特征信息,影响识别精度。而池化虽说也会丢失,但是保留了主要特征,因此使用stride为1的卷积操作加最大池化代替strude为2的一步卷积,实现降维提高模型性能。池化说明效果如图2所示。

图2 池化层的作用

使用步长为1的卷积操作和池化,会得到图像特征最为显著的信息,若采用步长为2的卷积,会受到图像中数字位置的影响进而影响检测的效果。

2.3 聚焦函数

单阶段目标检测方法的性能通常不如两阶段目标检测方法的原因就是单阶段目标检测会面临极端不平衡的目标-背景数据分布。使用聚焦损失函数通过该进经典的交叉熵损失函数[8],降低了网络训练过程中的简单背景的学习权重,提高模型的性能。原本使用softmax分类损失函数相当于标准的交叉熵损失函数,各个样本的权重是一样的,那么对每个训练样本交叉熵直接求和,如下式所示:

CE表示交叉熵,p表示预测样本属于1的概率,y表示样本的标签,在二类交叉熵损失函数中,y的取值为1或-1,用 pt表示样本属于正例的概率:

那么式(1)可以化简为

基于为了改进单阶段目标检测模型[9]在训练时面临的正负样本数量不平衡的问题,在损失中给正负样本加上权重,负样本数量越多,权重越小,正样本数量越少,权重越大的原则,设置权重来调整交叉熵损失函数,使其能够聚焦于难样本,聚焦函数定义为

在式上 (1-pt)γ是权重表达式,γ是一个大于0的聚焦参数。

聚焦损失函数[10]相当于给各样本分别加上了权重,这个权重与模型预测高样本属于正式类别的概率有关。如果模型预测某样本属于真实类别的概率很大,那么这个样本对于模型来说就是简单样本,此时 pt接近1,权重就会趋于0,这样就降低了简单样本的损失权重;如果模型预测样本真实类别的概率很小,那么这个样本对模型来说就是难样本,此时 pt很小,权重就会接近1,使得难样本的损失得以最大程度的保留。聚焦损失函数区分了简单样本和难样本对模型训练的影响,而损失函数更关注难样本。

聚焦参数γ能够平滑低调整简单样本所降低权重的比例,当γ=0时,FL表达式就是普通的交叉熵损失函数,γ的值越大,权重表达式产生的影响就越大,实验证明,γ=2时的检测效果最好。

3 仿真实验与分析

本章的实验主要是为了证明目标检测算法的一种改进思路,使用改进后的模型RV-YOLOv3进行训练推理,使得行人检测的精度和速度提升最优,最后对比改进模型和原始模型的检测结果,分析并得出结论。

针对行人数据集,选定行人检测数据集中部分行人图片作为测试集,由于本文检测使用的数据集为 COCO[11]数据集,因此对比 YOLOv3 和其他网络模型,然后将网络训练好的权重文件导入到推理模型中做出检测对比,本文跟踪所用的数据集为MOT16[12],所以在模型推理过程中使用其中的一部分图像作为测试集来对比各个模型的性能,目的就是为了增加模型的鲁棒性。

本实验的环境为英特尔i5-9600k CPU,英伟达GTX2060 8G GPU,16G内存。Windows10的操作系统下完成,Python3.6.6,Pytorch1.2,Opencv4.2,CU⁃DA11.0。

训练的参数设置为:Batch size大小为26,初始的学习率选择为0.01,学习率的衰减量为0.0003,动量为0.9,每次模型训练共迭代500次,共训练5次,针对上述改进的算法模型,训练过程RV-VGG的loss曲线和mAP曲线如图3、图4所示。

图3 Loss曲线

图4 mAP曲线

通过loss曲线可以看出,训练过程整体的loss是不断下降的,在迭代1000次开始趋于稳定,证明了整个训练过程是稳定的,确保了模型的质量,可以看出迭代5次是效果最为优异的,当大于6次,可能出现过拟合现象产生导准确率几乎为1,导致后续模型的泛化能力有所下降。

为了对比文中的创新点组合起来结构性能的对比,这里分别单独做出实验说明改进型组合得几个创新点,其中A表示YOLOv3;B表示RV-YO⁃LOv3;C表示只将网络的主干部分替换为RepVGG;D表示主干网络替换和聚焦损失函数的使用;E表示网络中池化层和聚焦损失函数使用。

表1 各改进模型训练的mAP值对比

根据上述结果可以发现,在训练过程中使用改进的RV-YOLOv3模型的结果较好,在行人检测中的精度有所增加,实现性能上的初步提升。

训练完成后,针对本文中使用的测试集MOT16中的部分图像进行模型的测试,对比检测的效果,具体结果如表2所示。

表2 模型测试对比结果

测试集MOT16中的部分图像进行模型的测试,对比检测图像如图5所示。

图5 改进的YOLOv3与原始YOLOv3测试集结果对比

4 结语

本文目标检测采用了改进的YOLOv3算法,在传统的YOLOv3模型的基础上,对主干网络Dark⁃Net-53做了改进,将RepVGG模型替换主干网络,改进之后网络命名为RV-YOLOv3,并且重新设置损失函数,用池化层来代替通过卷积操作丢失更多信息的操作,从而提高了目标框和算法识别的精度和速度,改进的YOLOv3算法的mAP对于原始的YOLOv3有明显提升,对行人检测也是更加精准,减少了漏检和误检的问题,证明了RV-YOLOv3模型结构的有效性,实现了更好的目标检测算法。

猜你喜欢
残差权重卷积
基于残差-注意力和LSTM的心律失常心拍分类方法研究
基于双向GRU与残差拟合的车辆跟驰建模
权重望寡:如何化解低地位领导的补偿性辱虐管理行为?*
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
基于残差学习的自适应无人机目标跟踪算法
权重常思“浮名轻”
基于深度卷积的残差三生网络研究与应用
从滤波器理解卷积
为党督政勤履职 代民行权重担当