CSPNET: A NEW BACKBONE THAT CAN ENHANCE LEARNING CAPABILITY OF CNN

Abstract

      神经网络使得在像目标检测这样的计算机视觉任务中取得了SOTA的效果。然而,这巨大的成功十分依赖计算资源的消费,这阻碍了使用廉价芯片的用户使用先进的技术。本文我们提出了Cross Stage Partial Network(CSPNet),从网络结构的角度缓解之前的工作依赖大量前向计算的问题。我们将问题归结为网络优化过程中梯度重复的问题。我们提出的方法从网络从始至终的不同阶段通过考虑到梯度变化的特征图整合,在我们的实验中,模型在ImageNet数据集降低了20%的计算量,并取得了相同甚至更好的准确率,在MS COCO目标检测数据集上明显提升了SOTA方法在AP50情况下的表现。CSPNet很容易复现,且足够通用,可以容易的替换到基于ResNet,ResNeXt与DenseNet的结构中。源码见 https://github.com/WongKinYiu/CrossStagePartialNetworks。

1.Introduction

      神经网络越来越深【7,39,11】,越来越宽【40】,展现出了巨大的潜力。然而,神经网络结构的拓展通常会带来许多额外的计算量,使得像目标检测这样的计算密集型任务变得大多数人都无法接受。由于现实世界的应用通常需要小设备上的快速推理,轻量计算逐渐受到更强的关注,给计算机视觉算法带来了严重的挑战。尽管有些方法是专门针对移动CPU设计的【9,31,8,33,43,24】,他们使用的深度可分离技术与例如边缘计算侧的应用专用集成电路等工业IC设计并不适配。本文中,我们研究例如ResNet、ResNeXt与DenseNet等SOTA中计算量哪部分比较大。我们还进一步开发了高效计算组件,是的提到的网络可以在不牺牲表现的前提下部署到CPU与GPU上。

      本文我们介绍Cross Stage Partial Network(CSPNet)。设计CSPNet的目标是使得网络结构取得更丰富的梯度结合,同时降低大量的计算。这个目标是通过将base layer的特征图分解成两部分,然后利用提出的跨阶段策略将他们合并。通过这样,我们确认梯度传播的信息可以保持大的相关差异通过concatenation与transition步骤。此外,CSPNet可以极大的降低计算量,同时改进推理速度与精度,如图1中所示,提出的CSPNet-based目标检测方法处理了以下3个问题:

  1. 增强了CNN的学习能力。现有的CNN准确率在轻量化后显著的退化了,所以我们希望增强CNN的学习能力,这样它可以保持足够的准确率并轻量化。提出的CSPNet可以轻易应用在ResNet,ResNeXt与DenseNet。通过应用CSPNet到上述网络,计算量降低了10%-20%,但准确率效果比ResNet【7】,ResNeXt【39】,DenseNet【11】,HarDNet【1】,Elastic【36】与Res2Net【5】在ImageNet【2】数据集图片分类效果要好。
  2. 移除高计算量瓶颈。高计算瓶颈会导致推理进程更多的循环,或者一些计算模块会经常闲置。因此,我们希望能够平均的将计算量分布在CNN的不同层上,这样我们可以giao的提升每个计算单元的利用率,减少没必要的能量消耗。值得注意的是,提出的CSPNet使得PeleeNet【37】计算瓶颈降低了一半。此外,在基于MS COCO【18】数据集目标检测试验中,在基于YOLOV3方法我们提出的模型可以高效的降低80%的计算瓶颈。
  3. 降低显存消耗。动态随机存储器(DRAM)的芯片制造成本相当昂贵,它也占用许多空间。如果能够高效的降低显存消耗,那么就可以极大降低ASIC的花费。此外,小面积的芯片额可以用在众多边缘计算终端上。为了降低内存使用率,我们使用的cross-channel pooling【6】,来降低特征金字塔生成过程中的特征图大小。这样,提出的使用CSPNet的目标检测器可以与PeleeNet相比在特征金字塔生成阶段减少75%的内存使用率。

      由于CSPNet可以提升CNN的学习能力,因此我们可以使用更小的模型来取得更好的效果。我们提出的模型在GTX 1080Ti卡,COCO数据集上达到50%的AP50,并达到109fps。由于CSPNet可以高效的明显降低内存流量,我们提出的方法可以达到40%的COCO AP50,52fps在Intel Core i9-9900K。此外,由于CSPNet可以显著的降低计算瓶颈,Exact Fusion Model(EFM)可以高效的降低小的内存带宽,我们出的方法可以达到42%的COCO AP50,49fps,在Nvidia Jetson TX2。

2.Related work

CNN结构设计。在ResNesNeXt【39】中,展示了基数比宽高的维度更有效。DenseNet【11】通过使用大量特征复用的策略可以显著的减少参数的数量与计算量。它将所有预测层的输出特征进行级联作为下一层的输入,这也可以认为是最大化基数的方法。SparseNet【46】将dense connection调整到指数空间,可以高效的改进擦护的利用率,因此得到更好的输出。【35】进一步解释了为什么高基数与稀疏连接可以改进网络的学习能力,通过梯度融合的概念,并提出了ResNet(RPN)。为了提升CNN的推理速度,【24】引入了四个设计原则并设计了ShuffleNet-v2。【1】提出了低内存交互CNN称为Harmonic DenseNet(HarDNet)与一种卷积IO的度量方法(CIO)用于近似评估DRAM的流量,与真实的DRAM流量成这里。

实时目标检测器。最有名的两个实时目标检测器为YOLOv3【29】与SSD【21】。基于SSD,LRF【38】,RFBNet【19】可以在GPU上取得SOTA的实时目标检测表现。当前,anchor-free的目标检测器【3,45

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值