温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
轻量级
形变
卷积
神经网络
DPCNs
研究
赵锞
183信息:技术与应用信息记录材料 2022年12月 第23卷第12期 0 引言目前,基于深度学习的目标检测算法包括两阶段目标检测算法和单阶段目标检测算法两大类。两阶段目标检测算法首先对输入的图像进行候选区域的选择,然后对候选区域进行分类和定位。典型的两阶段目标检测算法有:R-CNN、Fast R-CNN、Mask R-CNN 等。而单阶段目标检测算法没有候选区域选择这一阶段。典型的单阶段目标检算法有:YOLOv1、YOLOv2、SSD 等。随着科技的发展,目标检测技术在生活中被广泛使用1-2。然而卷积神经网络由于其构建模块固定的几何结构天然地局限于建模的几何变换,导致检测效果不理想,而可形变卷积可以提高模型对发生形变物体的建模能力。黄凤琪等3提出一种基于可形变卷积的 YOLO 检测算法。张善文等4在 VGG 的基础上提出一种可形变 VGG 模型,应用于害虫检测。虽然可形变卷积网络在检测精度上相较于普通卷积网络有很大提升,但是可形变卷积会产生巨大的计算开销,导致检测速度降低。本文提出了一种方法:采用可形变逐点卷积来提升检测速度。通过实验证明,可形变逐点卷积同样能够增强卷积核对感受野的适应能力,来适应不同形状和大小的几何形变。除此之外,结合使用深度卷积和可形变逐点卷积所带来的计算量相对较少,从而降低计算开销,提升检测速度。1 本文方法1.1 可形变逐点卷积普通的卷积操作使用固定的卷积核,感受野范围也相对固定,因此难以适应目标的非规则几何形变。可形变卷积通过引入可学习的像素偏移量,使得卷积核不受固定位置的限制,可以进行伸缩变化,寻找最合适的感受野。但与普通卷积相比,可形变卷积引入了较高的额外计算量,主要用于其中所需的形变插值计算。针对以上问题,本文提出可形变逐点卷积,能有效地缩减计算量,降低计算消耗,在保持非规则感受野特性并获得精度提升的同时,有效提高检测速度。在普通卷积中,设输入特征图为 x,卷积核为 w,x 上任意一点P0的一个33采样区R=(-1,-1),(-1,0),(0,1),(1,1),则 P0点对应输出特征图 y 上的操作如式(1)所示:y(P0)=Pn R w(Pn)x(P0+Pn)(1)其中 Pn枚举了 R 中的每一个位置,最后对采样点进行加权运算。在可形变卷积中,引入偏移量 Pnn=1,2,N,N=|R|,将经过卷积计算得出的像素偏移量与原始像素位置相加后得到偏移后的位置,同时引入权重 mn,那么同样位置 P0点的操作变为如式(2)所示:y(P0)=Pn R w(Pn)x(P0+Pn+Pn)mn (2)其中偏移量一般是小数,因此可形变卷积是针对不规则区域进行卷积计算,需要进行如式(3)所示的双线性插值:x(p)=G(q,p)x(q)(3)其中 p=P0+Pn+Pn代表位置,q 列举了输入特征图 x中的点,G 为二维双线性插值的核函数,可以被分为两个一维线性插值核函数如式(4)所示:G(p,q)=g(qx,px)g(qy,py)(4)其中 g(a,b)=max(0,1-|a-b|)。与普通卷积式(1)相比,可形变卷积引入了较多的额外计算量,主要来自于式(2)中所含的双线性插值计算。对于典型的 ResNet-101 主干网络而言(如图 1(a)所示),常见的方式是将多个残差块中的 33 卷积替换为可形变卷积,即图 1(b)所示的结构。在此情况下,对每一次卷积滑窗的计算而言,33 可形变卷积会进行33C 次双线性插值,其中 C 为该特征图的通道数,而每一次插值计算会进行 4 次乘加运算,那么总共会额外进行 33C4 次乘加运算,带来显著的速度损失。由于可形变卷积引入的额外计算主要来自于对特征图进行插值,且计算量与卷积核大小呈二次方关系,因此在可形变逐点卷积中,将形变计算移动至残差块中的最后一轻量级可形变卷积神经网络 DPCNs 研究赵 锞,贾 可(通信作者),李 航,周录庆(成都信息工程大学计算机学院 四川 成都 610225)【摘要】本文针对可形变卷积会产生巨大的计算开销,使得检测速度减慢的问题,提出一种轻量级可形变卷积神经网络 DPCNs。该网络使用了可形变逐点卷积(Deformable Pointwise Convolution)能有效缩减计算量,在保持非规则感受野特性并获得检测精度提升的同时,有效提高检测速度。此外将深度卷积与可形变逐点卷积相结合,可在保持模型轻量化的同时,进一步提高检测精度。实验结果表明,以Mask R-CNN作为基本检测框架,检测精度比普通卷积提高了1.7%,检测速度比可形变卷积提高了 8%。【关键词】卷积神经网络;目标检测;可形变卷积;深度卷积;逐点卷积【中图分类号】TP391 【文献标识码】A 【文章编号】1009-5624(2022)12-0183-03DOI:10.16009/13-1295/tq.2022.12.048184 信息:技术与应用信息记录材料 2022年12月 第23卷第12期 个 11 卷积上进行,即如图 1(c)所示。将其放置于残差块中的第一个 11 卷积之上也可以达到类似的效果,但研究人员实验证明放在最后效果会稍好。在可形变逐点卷积中,由于每次滑窗只需要对一个特征点进行采样插值,其产生的偏移量和进行双线性插值的次数更少,只会进行 11C 次插值运算,总共进行 11C4 次乘加运算,因此其引入的额外计算量仅仅只有传统可形变卷积的1/9。此外 11 卷积核在特征图上进行滑窗卷积时不会因为特征被重复使用而产生额外的计算量。(a)ResNet-101 残差块 (b)DCNv2 残差块 (c)DPCNs 残差块图 1 不同类型残差块将可形变卷积作用于11卷积,带来的问题在于每次只表达了一个特征点的整体偏移,是否能够带来足够的形变适应性。对此,研究人员认为,在可形变卷积网络中,可形变卷积一般并不是只用一次,而是在每一个残差块,或是每一尺度的卷积网络阶段中都会引入一个可形变卷积层。虽然每次的形变计算只作用于一个特征点上,但经过前后多次的偏移变换后,这些偏移量几乎不会重复或呈简单线性关系,因此仍然具有足够的形变适应性,能够计算出足够复杂的变形感受野,并因此获得比普通卷积更高的检测精度,研究人员的实验结果也证明了这一方式的有效性。1.2 深度卷积与可形变逐点卷积深度可分离卷积是一种常用的轻量级卷积神经网络结构,其主要特点是将普通卷积分解成深度卷积和逐点卷积。相对于普通卷积,这种方式可以在精度损失有限的情况下,减少计算量和参数量,从而提升检测速度。深度可分离卷积的矩阵分解优化方式,与本文所提出的可形变逐点卷积具有天然良好的结合性。通过将深度可分离卷积中的逐点卷积替换为可形变逐点卷积的方式,不仅可以有效保持轻量级卷积神经网络快速敏捷的优点,同时又能改善其性能并提高检测精度。设定输入特征图为 CHW,与 N 个 Ckk 大小的卷积核进行卷积得到的输出特征大小为 HWN,所产生的计算量为 CHWkk。经过深度卷积的输出大小为 CHW,产生的计算量为 CHWkk。而经过逐点卷积产生的计算量为 CHWN。那么总体来说深度可分离卷积和普通卷积的总计算量之比如式(5)所示:(CHWkk+CHWN)/(CHWNkk)(5)由于一般情况下 N 取值较大,如果采用 33 卷积,由式(5)可以得出深度可分离卷积相较于普通卷积可以降低大约 9 倍的计算量。由于逐点卷积实际上就是卷积核大小为 11 的普通卷积,而可形变逐点卷积同样可以有效适应不规则物体,让感受野发生形变使得检测的精度得到提升。因此研究人员在深度可分离卷积中引入可形变逐点卷积替代普通的逐点卷积。通过实验证明,在速度损失有限的情况下,精度得到了进一步的提升。2 实验2.1 实验设置和数据集介绍本文实验基于 Pytorch 深度学习框架,测试平台 GPU型号为 Nvidia GeForce RTX 2080 Ti,CPU 型号为 Intel Xeon E5-2678 v3。本文实验采用 COCO 数据集,包含 91种类别、32.8 万张图像和 250 万个标注5。2.2 评价指标本文实验主要使用平均精度(average precision,AP)和帧率(frames per second,FPS)来评价模型的有效性。另外 FLOPs 是指浮点运算数,param 表示模型的参数量。2.3 实验结果和分析表 1 展示了选取 Mask-RCNN 作为基本检测框架,ResNet-50 和 ResNet-101 分别作为主干网络,常规卷积神经网络、DCNv2 以及本文提出的 DPCNs 在 COCO 数据集上的性能表现情况。表 1 三种方法检测性能对比backbonemethodMask-RCNNAP/%FPS/(帧 s-1)FLOPs/Gparam/MResNet-50regular41.018.7180.144.3DCNv242.917.5192.145.2DPCNs41.418.2183.944.4ResNet-101regular42.314.6200.263.3DCNv245.012.5228.465.2DPCNs44.013.5203.663.3可以看出,以 ResNet-101 作为主干网络,使用可形变逐点卷积,虽然精度相比 33 可形变卷积有所下降,但是仍然高于普通 33 卷积 1.7%,这在数值上说明使用可形变逐点卷积可以通过改变感受野的形状提升检测精度。可形变逐点卷积在FPS上比33可形变卷积有所提升,这从数值上表明可形变逐点卷积能有效地提升检测速度。由于整个计算过程除了插值计算还有其他卷积计算,所以可形变逐点卷积达不到减少大约 9 倍的计算量。在参数量上,可形变卷积最多,其余两个相对较少。图 2(a)(b)则分别展示 33 可形变卷积和可形变逐点卷积的特征点感受野,可以看出可形变逐点卷积同样可以自适应的学习感受野的采样位置来符合物体的形状和大小,从而更有效的提取特征。185信息:技术与应用信息记录材料 2022年12月 第23卷第12期 (a)33 可形变卷积 (b)可形变逐点卷积图 2 特征点感受野表 2 展示了选取 Mask-RCNN 作为基本检测框架,MobileNetv2 和本文提出的 dw-DPCNs 在 COCO 数据集上的性能表现。可以看出,使用本文提出深度卷积结合可形变逐点卷积倒残差块的 dw-DPCNs 的精度达到了 35.6%,相较于使用普通深度可分离卷积倒残差块的 MobileNetv2 的精度提升了 1.3%。此外 dw-DPCNs 的 FPS 略微下降,FLOPs则略微上升。这是由于可形变逐点卷积需要进行插值计算,增加了额外的计算量,从而导致检测速度的下降。而这两种模型的参数量一致,能体现出本文提出的 dw-DPCNs 与MobileNetv2 有相同轻量化的优点。表 2 两种方法检测性能对比MethodMask-RCNNAP/%FPS/(帧 s-1)FLOPs/Gparam/MMobileNetv234.323.558.956.8dw-DPCNs35.621.960.956.83 结语本文针对使用 33 可形变卷积计算开销过大而导致检测速度变慢的问题,提出一种轻量级可形变卷积神经网络结构,使得模型在检测的速度上有所提升。通过实验证明,可形变逐点卷积相较于 33 可形变卷积同样可以自适应的学习感受野的采样位置来符合物体的形状和大小,从而更有效的提取特征,并且所产生的计算量更少,提高了检测的速度。寻找其他方法来减少可形变卷积的计算消耗是下一步继续研究的方向。【参考文献】1 谢富,朱定局.深度学习目标检测方法综述 J.计算机系统应用,2022,31(2):1-12.2 赵立新,邢润哲,白银光,等.深度学习在目标检测的研究综述 J.科学技术与工程,2021,21(30):12787-12795.3 黄凤琪,陈明,冯国富.基于可变形卷积的改进 YOLO 目标检测算法 J.计算机工程,2021,47(10):269-275,282.4 张善文,许新华,齐国红,等.基于可形变 VGG-16 模型的田间