当前位置: 首页 > 专利查询>合肥学院专利>正文

一种基于定位蒸馏的YOLOX目标检测模型压缩方法技术

技术编号:34900638 阅读:27 留言:0更新日期:2022-09-10 14:05
一种基于定位蒸馏的YOLOX目标检测模型压缩方法,涉及图像识别技术领域。该方法利用深度学习框架搭建YOLOX_X模型作为教师模型,YOLOX_Nano模型作为学生模型。利用加强特征提取网络提取两个模型的多层特征图,挑选特征图的主要蒸馏区域MainRegion和有价值定位区域VLR,将特征图进行解耦为分类检测头和定位检测头,并分别设计分类损失函数和定位损失函数;训练教师网络和学生网络,固定网络模型权重,根据总的损失函数进行反向传播,实现蒸馏学习。本发明专利技术为YOLOX目标检测的蒸馏实现分类头和回归头的分别治理,为分类和回归提供了一种统一的蒸馏框架。种统一的蒸馏框架。种统一的蒸馏框架。

【技术实现步骤摘要】
一种基于定位蒸馏的YOLOX目标检测模型压缩方法


[0001]本专利技术涉及图像识别
,具体是涉及一种基于定位蒸馏的YOLOX目标检测模型压缩方法。

技术介绍

[0002]在图像识别领域,目标检测的主要任务为检测图像及视频中的感兴趣物体,并且将该物体的类别和位置预测出来。在近些年的研究中,基于深度神经网络的目标检测在准确度和速度上都取得了很大突破,基本上代替了传统目标检测算法。比如单阶段网络的代表之一,YOLO系列网络,在通用目标检测中取得了相当优异的性能,特别是YOLOX目标检测模型已经基本能够在实时条件下实现令人满意的检测精度。
[0003]然而在YOLOX的各个版本中,最大的版本X比最小的版本Nano参数量高了将近百倍。研究人员普遍认为,更大型的网络往往能够提取更有利于使用的特征,使整个网络性能提高,但是也必然带来速度减慢的问题。在实际应用中,终端设备往往在计算能力、电量存储和内存存储中达不到工业生产要求。因此大型网络比如YOLOX_X往往部署在云端设备上,由于该模型传输给终端设备的通信量和网络需求较高,使得大模型在工业和工程场景下有很大的局限性。YOLOX_Nano参数量较小,运行速度快,适合部署在比如视频监控摄像头等带有低性能处理器的终端上运行,但是小型网络的检测精度较低,也难以达到工业产业级要求。
[0004]针对以上问题,采用定位蒸馏技术改进YOLOX目标检测算法。知识蒸馏是一种常见的模型压缩方法,主要是通过使用高性能的教师网络监督轻量级的学生网络学习的一种训练框架。也就是在训练过程中,固定高性能教师网络的权重,学生网络在反向传播时根据教师网络的权重更新自己的参数,进而逼近甚至超过教师网络结果。
[0005]而定位蒸馏是针对知识蒸馏的改进版本,知识蒸馏的提出在解决分类问题上表现良好,但是在回归问题上表现一直不尽如人意。因为分类问题和回归问题关注点并不都是在同一个位置,比如分类任务更关注特征图的关键点信息部分,而回归任务关注点可能分布在整张特征图中,因此分类和回归任务应当分而治之,因地制宜。定位蒸馏提出一个统一的蒸馏策略,能够将回归问题也看作为分类问题,实现回归问题的知识蒸馏。

技术实现思路

[0006]针对现有技术中存在的上述技术问题,本专利技术提出了一种基于定位蒸馏的YOLOX目标检测模型压缩方法。
[0007]为了实现上述目的,本专利技术所采用的技术方案为:
[0008]一种基于定位蒸馏的YOLOX目标检测模型压缩方法,步骤如下:
[0009](1)利用深度学习框架搭建YOLOX_X模型作为教师模型,对教师模型进行压缩改进并利用深度学习框架搭建YOLOX_Nano模型作为学生网络模型;利用加强特征提取网络提取两个模型的多层特征图;
[0010](2)挑选(1)中两个模型多层特征图的主要蒸馏区域MainRegion和有价值定位区域VLR;
[0011](3)将(1)中两个模型多层特征图进行解耦,分别解耦合到分类检测头和定位检测头中;
[0012](4)利用在COCO数据集上训练好的教师网络权重,在学生网络分类检测头中的主要蒸馏区域MainRegion上进行知识蒸馏,并且设计分类头蒸馏损失函数;
[0013](5)利用在COCO数据集上训练好的教师网络权重,使学生网络在回归检测头中的有价值定位区域和主要蒸馏区域上进行知识蒸馏和定位蒸馏,并且设计回归头蒸馏损失函数;
[0014](6)将学生网络在COCO数据集上进行蒸馏训练,获得最终的损失函数,通过反向传播对学生网络模型进行优化。
[0015]与现有技术相比,本专利技术的有益效果表现在:
[0016](1)本专利技术针对大模型难部署,小模型精度差的问题,采用蒸馏压缩算法,使用大模型监督小模型训练,使得小模型在保证参数量不变的情况下提升检测精度。
[0017](2)本专利技术针对YOLOX模型检测头天然分为分类头和回归头,在分类头上采用知识蒸馏,在回归头上采用定位蒸馏,两项操作分而治之,因地制宜,提升检测效果。
附图说明
[0018]图1为YOLOX目标检测模型与定位蒸馏方法流程图。
[0019]图2为YOLOX_X教师网络蒸馏结构示意图。
[0020]图3为YOLOX_Nano学生网络蒸馏结构示意图。
[0021]图4为YOLOX目标检测模型与定位蒸馏实施方案图。
具体实施方式
[0022]下面将结合本专利技术实施例中附图,对本专利技术实施例中技术方案进行清楚、完整地描述。请参阅图1

4所示,本实施例提供了一种基于定位蒸馏的YOLOX目标检测模型压缩方法,包括以下步骤:
[0023]步骤一,利用深度学习框架搭建YOLOX_X模型作为教师模型;对教师模型进行压缩改进并利用深度学习框架搭建YOLOX_Nano模型作为学生网络模型;利用加强特征提取网络提取两个模型的多层特征图。本步骤将分为以下三个模块进行讲解:
[0024]1)第一个模块,在本步骤中,可采用pytorch深度学习框架搭建YOLOX_X目标检测模型,该主干特征提取网络使用CSPDarknet,它包含了以下几个重要特点:
[0025]第一,使用了Focus网络结构,该网络结构在一张图片中进行隔像素点取值,此时能够获得响应的四个独立特征层,然后将四个独立特征层在通道方向上进行堆叠,此时宽高信息能够集中到通道信息上,输入通道数量扩充了四倍,假如原来输入的三通道,现在就会变成十二个通道。
[0026]第二,使用了残差网络结构Residual,这使得主干网络中残差卷积分为两个部分,主干部分进行一次1*1的卷积和一次3*3的卷积,残差部分不做任何处理,直接将主干的输入与输出结合。整个CSPDarknet由残差卷积Residual堆叠而成。
[0027]第三,CSPDarknet使用了CSPNet网络结构,一方面主干部分继续进行残差块堆叠,另一部分则像一个残差边那样,经过少量卷积处理直接连接到残差块后面。
[0028]第四,使用SiLU激活函数,SiLU激活函数是Sigmoid和ReLU的改进版本,它具有无上界有下界、平滑、非单调的特性,SiLU激活函数在深层次的网络模型中具有比ReLU函数更好的效果,下面是SiLU激活函数的表示公式:
[0029]f(x)=x
·
sigmoid(x)(1)
[0030]其中,x表示输入,sigmoid函数如下:
[0031][0032]第五,使用了SPP网络结构,通过不同池化核大小的池化对特征进行提取,增大了网络模型的感受野,在YOLOX中,SPP网络模块被用在主干特征提取网络中。
[0033]2)第二个模块,在本步骤中对教师网络模型YOLOX_X进行压缩和改进成为YOLOX_Nano,利用深度学习框架搭建YOLOX_Nano模型作为学生网络模型;
[0034]在此步骤中,YOLOX_X模型相对较大,对于大模型越强的数据增强越本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于定位蒸馏的YOLOX目标检测模型压缩方法,其特征在于,步骤如下:(1)利用深度学习框架搭建YOLOX_X模型作为教师模型,对教师模型进行压缩改进并利用深度学习框架搭建YOLOX_Nano模型作为学生网络模型;利用加强特征提取网络提取两个模型的多层特征图;(2)挑选(1)中两个模型多层特征图的主要蒸馏区域MainRegion和有价值定位区域VLR;(3)将(1)中两个模型多层特征图进行解耦,分别解耦合到分类检测头和定位检测头中;(4)利用在COCO数据集上训练好的教师网络权重,在学生网络分类检测头中的主要蒸馏区域MainRegion上进行知识蒸馏,并且设计分类头蒸馏损失函数;(5)利用在COCO数据集上训练好的教师网络权重,使学生网络在回归检测头中的有价值定位区域和主要蒸馏区域,分别进行知识蒸馏和定位蒸馏,并且设计回归头蒸馏损失函数;(6)将学生网络在COCO数据集上进行蒸馏训练,获得最终的损失函数,通过反向传播对学生网络模型进行优化。2.如权利要求1中所述的一种基于定位蒸馏YOLOX目标检测模型压缩方法,其特征在于,步骤(1)中利用pytorch深度学习框架搭建YOLOX_X目标检测模型,其主干网络为CSPDarknet,其中,主干网络中包含的改进点有,使用Focus网络结构,使用CSPNet网络结构,使用残差网络结构Residual,使用SPP网络结构,使用SiLU激活函数;其中SiLU激活函数公式如式(1):f(x)=x
·
sigmoid(x)(1)使用PAFPN加强特征提取网络获得所需的多尺寸特征图,获得三种不同尺寸的特征层信息。3.如权利要求2中所述的一种基于定位蒸馏YOLOX目标检测模型压缩方法,其特征在于,步骤(2)中挑选主要蒸馏区域MainRegion和有价值定位区域VLR中具体步骤为:S1:筛选主要蒸馏区域MainRegion1)第一轮筛选中,将所有预测框的中心点在真实框内部的区域保留为正样本点,构建以真实框为中心,边长为特定值的正方形,所有预测框中心点在正方形内部的区域保留为正样本,保留为正样本的两部分区域暂定为主要蒸馏区域;2)第二轮筛选中,使用simOTA方法对第一轮筛选后留下的预测框进行正样本的分配;两轮筛选之后,剩下的区域为主要蒸馏区域;S2:挑选有价值定位区域VLR面向主要蒸馏区域向外扩散一部分区域为有价值定位区域,有价值定位区域比主要蒸馏区域范围广,但并不包含主要蒸馏区域;假设X作为有价值定位区域,Xm作为主要蒸馏区域,阈值α用来调节有价值定位区域VLR大小,有价值定位区域表示如式(3):{Xm≤X≤αXm}(3)。4.如权利要求3中所述的一种基于定位蒸馏YOLOX目标检测模型压缩方法,其特征在
于,步骤(3)中将特征图解耦为分类检测头和定位检测头;最后得到三个部分结果,分别为定位信息Reg(h,w,4),置信度信息Obj(h,w,1)和类别信息Cls(h,w,num_classes),其中(h,w,num_classes)分别为图片高度,宽度和类别;将三个结果进行堆叠为(h,w,4+1+num_classes)包含全部预测框的位置信息和类别信息。5.如权利要求4中所述的一种基于定位蒸馏YOLOX目标检测模型压缩方法,其特征在于,步骤(4)中利用在COCO数据集上训练好的教师网络权重,在学生网络分类检测头中的主要蒸馏区域MainRegion上进行知识蒸馏;其中分类头损失函数设计如下:Z
s
、Z
t
为检测头预测出学生和教师的特征图信息,分别包含定位信息(x,y,w,h),置信度信息obj和分类信息num_classes,其中x,y为坐标值,w,h为预测框宽高;Ps,Pt为经过softmax函数蒸馏后的分类结果信息;T为蒸馏温度,T增大,模型信息分布更加均匀,T为1则为原始分布;温度T和softmax函数联合起到软化作用,能够调...

【专利技术属性】
技术研发人员:程知高丽萍王玉邓灶辉陶寅端倩倩
申请(专利权)人:合肥学院
类型:发明
国别省市:

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

1