一种基于深度学习的目标检测YOLOv3的模型优化算法制造技术

技术编号:26506462 阅读:29 留言:0更新日期:2020-11-27 15:34
本发明专利技术公开了一种基于深度学习的目标检测YOLOv3的模型优化算法,包括:采用K‑means++聚类算法重新设置合适商品数据集的Anchor box;对目标检测YOLOv3的模型进行一般训练和稀疏化训练;将YOLOv3稀疏化后的最终模型作为基准,叠加使用通道剪枝和层剪枝进行双重剪枝,修剪不重要的特征通道和层;对剪枝后的模型进行微调,根据mAP曲线图取较好效果的值,对得到的值再次进行评估。本发明专利技术提供的基于深度学习的目标检测YOLOv3的模型优化算法,通过K‑means++改善算法的聚类效果;采用层剪枝和通道剪枝相结合的双重剪枝来进行网络剪枝,以提高算法的性能。

【技术实现步骤摘要】
一种基于深度学习的目标检测YOLOv3的模型优化算法
本专利技术涉及目标检测算法
,特别是涉及一种基于深度学习的目标检测YOLOv3的模型优化算法。
技术介绍
传统的目标检测算法可以分为区域选择、特征提取和分类器分类三步,通过人工选择图像特征进行特征提取,特征单一且鲁棒性较差。卷积神经网络的出现改变了这种现状,它能够不依赖于人工提取特征,在图像分类领域有重大突破之后一直蓬勃发展,目前基于深度学习的目标检测算法已经成为目标检测研究的主流。近年来,基于回归的YOLO、SSD等深度学习目标检测算法的诞生迅速占领了目标检测研究“市场”,它们降低了模型计算量的同时保持较高的精度。基于回归的YOLO深度学习目标检测算法的优点是在保持较高识别精度基础上,维持较低的参数量和计算量,以保持其快速性。其中,YOLOv3执行目标检测任务,兼备快速性和准确性,但在实际应用中的卷积神经网络系列模型的部署受限,原因有三:第一,模型过大,CNN强大的表示能力来自其数百万个可训练的参数。这些参数以及网络结构信息需要在推理期间存储在磁盘上并加载到内存中,例如,存储经过COCO数据集训练的YOLOv3模型会消耗200MB以上的空间,这对设备来说是很大的资源负担,尤其是嵌入式等移动设备;第二,占用运行时内存过多,在前向推理中,CNN的激活层可能比存储模型参数占用更多内存空间,不同于GPU,计算能力低的CPU设备负担过重;第三,计算量过大,卷积操作在高分辨率图像上的计算量很大,大型的CNN可能需要几分钟才能在移动设备上处理单个图像,因此,在实际应用中采用它会因为设备受到很大局限,针对以上面临的问题,可以从缩小模型尺寸,减少运行时内存占用和在不影响准确性的情况下减少计算量出发寻找解决方案。
技术实现思路
本专利技术的目的是提供一种基于深度学习的目标检测YOLOv3的模型优化算法,设计了一种精简卷积神经网络结构的改进算法,以提高算法的性能。为实现上述目的,本专利技术提供了如下方案:一种基于深度学习的目标检测YOLOv3的模型优化算法,该算法包括以下步骤:S1,采用K-means++聚类算法重新设置合适商品数据集的Anchorbox;S2,进行一般训练:设定YOLOv3的Darknet-53网络结构,载入数据集图片、标签和权重参数,进行前向推理,利用loss值反向求导更新权重参数,迭代一定次数,结束训练,挑选最终模型;S3,进行稀疏化训练:对YOLOv3进行200个epoch的稀疏训练,其中使用惩罚因子值为0.001,稀疏训练的其余超参数与正常训练相同;S4,将YOLOv3稀疏化后的最终模型作为基准,叠加使用通道剪枝和层剪枝进行双重剪枝,修剪不重要的特征通道和层;S5,对剪枝后的模型进行微调,根据mAP曲线图取较好效果的值,对得到的值再次进行评估,如果满足优化要求,则结束优化过程,如果不满足,则需重复步骤S1-S4进一步优化,直到满足要求。可选的,所述步骤S1中,采用K-means++聚类算法重新设置合适商品数据集的Anchorbox,具体包括:S101,随机选取一个Anchorbox的宽高作为第一个聚类中心;S102,基于第一个聚类中心开始,逐个确定第n个聚类中心,第n个聚类中心选取原则是与当前第n-1个聚类中心IoU越大的框被选取的概率越大;S103,循环步骤S102直到所有初始聚类中心被确定;S104,剩下其它Anchorbox逐一与聚类中心计算IoU,得到两个框之间的IoU,将Anchorbox划分到与其IoU最大的聚类中心所属的类中;S105,所有Anchorbox都遍历后,计算各类Anchorbox宽、高的均值,作为下轮迭代的聚类中心;S106,重复步骤S104、S105,直到大于阈值,或达到迭代次数。可选的,所述步骤S4中,将YOLOv3稀疏化后的最终模型作为基准,叠加使用通道剪枝和层剪枝进行双重剪枝,修剪不重要的特征通道和层,具体包括:将YOLOv3稀疏化后的最终模型作为基准,基于BN层系数进行通道剪枝,达到理想精度后进行稀疏训练,对需要剪枝的层对应的BN的系数进行大幅压缩,然后设定剪枝率,对值进行排序,根据选取的剪枝率剪除不重要的通道剪枝,修剪过程中,忽略上采样层,因为采样层没有卷积通道,忽略快捷链路层;层剪枝是在通道剪枝基础上针对每一个快捷链路前一个带BN的卷积层进行评价,对各层的γ最高值进行排序,取最小的进行层剪枝。可选的,通过将通道修剪模块的剪枝率PR设置为0.492,0.787,0.885和0.968得到了4个通道剪枝后的模型。可选的,通过层修剪模块的shortcut剪枝数SC设置为8,12和16得到了3个层剪枝后的模型。可选的,对剪枝后的模型进行微调,根据mAP曲线图取较好效果的值,具体包括:剪枝后,mAP下降比较多,对剪枝后的模型进行微调,取PR=0.885,SC=8,epoch为50,根据mAP曲线图取较好效果的值。根据本专利技术提供的具体实施例,本专利技术公开了以下技术效果:本专利技术提供的基于深度学习的目标检测YOLOv3的模型优化算法,首先使用K-means++聚类算法重新设置合适商品数据集的Anchorbox,使Train_loss下降更快,误差更小,精确率和召回率提升;然后使用双重剪枝方法,即将通道剪枝和层剪枝叠加使用,将其扩展为一种用于有效的深层对象检测器的神经体系结构搜索的粗粒度方法;通过修剪不太重要的特征通道和层来学习高效的深层物体检测器,优化YOLOv3网络结构,使它具有较少的训练参数和较低的计算开销。随后进行一般训练,微调剪枝后留下的重要的参数,使精度回升,微调结束后进行模型评估,如果满足要求,则结束优化过程,如果不满足,则需进一步优化,直到满足要求;通过精简卷积神经网络结构,改进目标检测算法YOLOv3,使得目标检测算法在保持较好的目标检测效果的基础上减少模型计算量,加快网络模型运算速度,精简后的YOLOv3目标检测模型,应用更加广泛,可以部署在嵌入式、安卓等性能有限的设备上。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术基于深度学习的目标检测YOLOv3的模型优化算法流程图;图2是本专利技术中K-means++聚类算法结果。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术的目的是提供一种基于深度学习的目标检测YOLOv3的模型优化算法本文档来自技高网
...

【技术保护点】
1.一种基于深度学习的目标检测YOLOv3的模型优化算法,其特征在于,包括以下步骤:/nS1,采用K-means++聚类算法重新设置合适商品数据集的Anchor box;/nS2,进行一般训练:设定YOLOv3的Darknet-53网络结构,载入数据集图片、标签和权重参数,进行前向推理,利用loss值反向求导更新权重参数,迭代一定次数,结束训练,挑选最终模型;/nS3,进行稀疏化训练:对YOLOv3进行200个epoch的稀疏训练,其中使用惩罚因子值为0.001,稀疏训练的其余超参数与正常训练相同;/nS4,将YOLOv3稀疏化后的最终模型作为基准,叠加使用通道剪枝和层剪枝进行双重剪枝,修剪不重要的特征通道和层;/nS5,对剪枝后的模型进行微调,根据mAP曲线图取较好效果的值,对得到的值再次进行评估,如果满足优化要求,则结束优化过程,如果不满足,则需重复步骤S1-S4进一步优化,直到满足要求。/n

【技术特征摘要】
1.一种基于深度学习的目标检测YOLOv3的模型优化算法,其特征在于,包括以下步骤:
S1,采用K-means++聚类算法重新设置合适商品数据集的Anchorbox;
S2,进行一般训练:设定YOLOv3的Darknet-53网络结构,载入数据集图片、标签和权重参数,进行前向推理,利用loss值反向求导更新权重参数,迭代一定次数,结束训练,挑选最终模型;
S3,进行稀疏化训练:对YOLOv3进行200个epoch的稀疏训练,其中使用惩罚因子值为0.001,稀疏训练的其余超参数与正常训练相同;
S4,将YOLOv3稀疏化后的最终模型作为基准,叠加使用通道剪枝和层剪枝进行双重剪枝,修剪不重要的特征通道和层;
S5,对剪枝后的模型进行微调,根据mAP曲线图取较好效果的值,对得到的值再次进行评估,如果满足优化要求,则结束优化过程,如果不满足,则需重复步骤S1-S4进一步优化,直到满足要求。


2.根据权利要求1所述的基于深度学习的目标检测YOLOv3的模型优化算法,其特征在于,所述步骤S1中,采用K-means++聚类算法重新设置合适商品数据集的Anchorbox,具体包括:
S101,随机选取一个Anchorbox的宽高作为第一个聚类中心;
S102,基于第一个聚类中心开始,逐个确定第n个聚类中心,第n个聚类中心选取原则是与当前第n-1个聚类中心IoU越大的框被选取的概率越大;
S103,循环步骤S102直到所有初始聚类中心被确定;
S104,剩下其它Anchorbox逐一与聚类中心计算IoU,得到两个框之间的IoU,将Anchorbox划分到与其IoU最大的聚类中心所属的类中;
S105,所有Anchorbox都遍历后...

【专利技术属性】
技术研发人员:李宋顺周俊玮杜振华华宇浩王建宇汤徐星何新
申请(专利权)人:南京理工大学江苏慧宇诚智能装备研究院有限公司南京荣新智能科技有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1