【翻译】An Energy and GPU-Computation Efficient Backbone Network for Real-Time Object Detection

论文链接:https://arxiv.org/pdf/1904.09730.pdf

摘要

由于DenseNet通过用密集连接聚合它们来保存具有不同感受野的中间特征,因此它在对象检测任务上表现出良好的性能。尽管特征重用使DenseNet能够以少量模型参数和FLOP产生强大的特征,但具有DenseNet骨干网的检测器表现出相当慢的速度和低能效。我们发现通过密集连接线性增加的输入通道会导致沉重的内存访问成本,从而导致计算开销和更多的能源消耗。为了解决DenseNet的低效率问题,我们提出了一种称为VoVNet的能源和计算高效架构,由One-Shot Aggregation (OSA)组成。OSA不仅采用了DenseNet的优势,它代表了具有多个感受野的多样化特征,而且通过在最后的特征图中仅聚合一次所有特征,克服了密集连接的低效率。为了验证VoVNet作为骨干网络的有效性,我们设计了轻量级和大规模的VoVNet,并将它们应用于一级和二级目标检测器。我们基于VoVNet的检测器以2倍的速度优于基于DenseNet的检测器,并且能耗降低了1.6到4.1倍。除了DenseNet,VoVNet还以更快的速度和更好的能效优于广泛使用的ResNet骨干网。特别是小物体检测性能比DenseNet和ResNet有了显着提升。

1.介绍

随着VGGNet[23]、GoogleNet[25]、Inception-V4[24]、ResNet[7]和DenseNet[9]等卷积神经网络(CNN)的巨大进步,采用现代最先进的CNN模型作为特征提取器。据报道,最近DenseNet在分类任务中实现了最先进的性能,因此很自然地尝试将其用途扩展到检测任务。在我们的实验中(表4),我们发现参数和FLOP较少的基于DenseNet的检测器优于使用ResNet的检测器,后者最广泛用于目标检测的主干。
  ResNet和DenseNet之间的主要区别在于它们聚合特征的方式;ResNet通过求和来聚合较浅层的特征,而DenseNet通过串联来聚合。正如Zhu等人[32]所提到的,早期特征图携带的信息在与其他特征图相加时会被洗掉。另一方面,通过串联,信息将持续存在,因为它保留了原始形式。一些工作[25, 17, 13]证明具有多个感受野的抽象特征可以捕获各种尺度的视觉信息。由于检测任务需要模型以比分类更多样化的尺度识别对象,因此保留来自各个层的信息对于检测尤为重要,因为每一层都有不同的感受野。因此,保留和积累多个感受野的特征图,DenseNet 在对象检测任务方面比ResNet具有更好和多样化的特征表示。
  然而,我们在实验中也发现,使用具有较少FLOP和模型参数的DenseNet检测器比使用ResNet的检测器花费更多的能量和时间。这是因为除了FLOP和模型大小之外,还有其他因素会影响能源和时间消耗。首先,访问中间特征图的内存所需的内存访问成本(MAC)是消耗的关键因素[18, 28]。如图1(a)所示,由于DenseNet中之前的所有特征图都通过密集连接用作后续层的输入,因此导致内存访问成本随网络深度成二次方增加,进而导致计算开销和更多能量消耗。
在这里插入图片描述
  其次,在GPU并行计算方面,DenseNet存在计算瓶颈的限制。一般来说,当操作数张量较大时,GPU并行计算利用率最大化[19, 29, 13]。然而,由于线性增加输入通道,DenseNet 需要采用1×1卷积瓶颈架构来减少输入维度和FLOPs,这导致使用较小的操作数张量增加层数。结果,GPU计算变得低效。
  本文的目标是改进DenseNet以提高效率,同时保留对象检测任务的级联聚合的好处。我们首先讨论MAC和GPU计算效率以及如何在架构设计阶段考虑这些因素。其次,我们声称DenseNet中间层中的密集连接会导致效率低下,并假设密集连接是多余的。有了这些想法,我们提出了一种新颖的一次性聚合 (OSA),它可以一次聚合中间特征,如图1(b)所示。这种聚合方法在保留级联强度的同时,极大地提高了MAC和GPU的计算效率。借助OSA模块,我们构建了VoVnet(Variety of View Network),这是用于实时检测的节能主干。为了验证VoVNet作为骨干网络的有效性,我们将VoVNet应用于各种对象检测器,例如DSOD、RefineDet和Mask R-CNN。结果表明,基于VoVNet的检测器优于基于DenseNet或ResNet的检测器,具有更好的能量效率和速度。

2. 高效网络设计的因素

在设计高效网络时,MobileNet v1[8]、MobileNet v2[21]、ShuffleNet v1[31]、ShuffleNet v2[18]和 Pelee[26]等许多研究主要集中在通过使用depthwise卷积和1×1卷积瓶颈架构来减少FLOPs和模型大小。然而,减少FLOPs和模型大小并不总能保证减少GPU推理时间和实际能耗。Ma等人[18]展示了一个实验,即具有相似数量的FLOP的 ShuffleNet v2 在GPU上运行速度比 MobileNet v2 快。Chen等人[2]还表明,虽然SqueezeNet的权重比AlexNet少50倍,但它比AlexNet消耗更多的能量。这些现象意味着FLOP和模型大小是衡量实用性的间接指标,应该重新考虑基于这些指标设计网络。为了构建高效的网络架构,专注于更实用和有效的指标,例如每张图像的能量和每秒帧数 (FPS),除了FLOP和模型参数之外,还必须考虑影响能量和时间消耗的其他因素。

2.1. 内存访问成本

我们指出的第一个因素是内存访问成本(MAC)。CNN中能源消耗的主要来源是内存访问而不是计算[28]。具体来说,从DRAM(动态随机存取存储器)中访问数据以进行操作消耗的能量比计算本身高几个数量级。而且,内存访问的时间预算占时间消耗的比例很大,甚至可能成为GPU进程的瓶颈[18]。这意味着即使在相同的计算次数和参数下,如果内存访问的总数随着模型结构的不同而变化,能耗也会不同。
  导致模型大小和内存访问次数之间存在差异的原因之一是中间激活内存占用。正如陈等人所说[1],内存占用归因于过滤器参数和中间特征图。如果中间特征图很大,即使模型参数相同,内存访问成本也会增加。因此,我们认为MAC是网络设计的一个重要因素,它涵盖了过滤器参数和中间特征图大小的内存占用。具体来说,我们遵循Ma等人的方法[18]计算每个卷积层的MAC如下
在这里插入图片描述
符号 k 、 w 、 h 、 c i 、 c o k、w、h、c_i、c_o kwhcico分别表示内核大小、输入和输出响应的高度/宽度、输入的通道大小和输出响应的大小。

2.2. GPU-计算效率

为提高速度而降低FLOP的网络架构基于这样一种理念,即设备中的每个浮点运算都以相同的速度进行处理。但是,当网络部署在GPU上时,这是不正确的。这是因为GPU并行处理机制。由于GPU能够及时处理多个浮动进程,因此有效利用其计算能力非常重要。我们使用术语GPU计算效率来表示这个概念。
  随着计算出的数据张量变大,GPU并行计算能力得到更好的利用[29, 13]。将一个大的卷积操作拆分成几个碎片化的小操作会使GPU计算效率低下,因为并行处理的计算较少。在网络设计的背景下,这意味着如果行为函数相同,最好用更少的层组成网络。此外,采用额外的层会导致内核启动和同步,从而导致额外的时间开销[18]。
  因此,虽然深度卷积和1×1卷积瓶颈等技术可以减少FLOP的数量,但由于采用了额外的1×1卷积,因此不利于GPU计算效率。更一般地说,GPU计算效率因模型架构而异。因此,为了验证网络架构的计算效率,我们引入了每秒FLOPs (FLOP/s),它是通过将实际GPU推理时间除以总FLOPs来计算的。高FLOP/s意味着架构有效利用GPU功率。

3. 提出的方法

3.1. 重新思考密集连接

聚集所有中间层的密集连接会导致不可避免的低效率,这是因为每层的输入通道大小随着层的进行而线性增加。由于密集聚合,密集块只能产生少数具有FLOP或参数约束的特征。换句话说,DenseNet 通过密集连接用特征的数量换取特征的质量。虽然DenseNet的表现似乎证明了这种交易是有益的,但从能量和时间的角度来看,这种交易还有一些其他的缺点。
  首先,密集的连接会导致高昂的内存访问成本,这是由能量和时间支付的。正如 Ma 等人[18]所提到的,当 B = k 2 h w c i c o B=k^2hwc_ic_o B=k2hwcico是计算次数时,MAC 的下边界或卷积层的内存访问操作次数可以表示为 M A C ≥ 2 h w B k 2 + B h w MAC\geq2\sqrt{\frac{hwB}{k^2}}+\frac{B}{hw} MAC2k2hwB +hwB。由于下边界基于均值不等式,当输入和输出具有相同的信道大小且计算次数或模型参数固定时,MAC可以最小化。密集连接增加了输入通道的大小,而输出通道的大小保持不变,因此,每一层都有不平衡的输入和输出通道大小。因此,DenseNet在计算或参数相同的模型中具有较高的MAC,并且消耗更多的能量和时间。
  其次,密集连接强加了瓶颈结构的使用,这损害了GPU并行计算的效率。当模型大小很大时,线性增加的输入大小是一个严重的问题,因为它使整体计算相对于深度呈二次增长。为了抑制这种增长,DenseNet 采用瓶颈架构,增加1×1卷积层以保持3×3卷积层的输入大小不变。虽然该解决方案可以减少FLOPs和参数,但它会损害GPU并行计算效率,正如所讨论的那样。瓶颈架构将一个3×3的卷积层分成两个较小的层,并导致更多的顺序计算,从而降低了推理速度。
  由于这些缺点,DenseNet 在能量和时间方面变得低效。为了提高效率,我们首先研究了网络经过训练后,密集连接实际上是如何聚合特征的。胡等人[9]通过评估每层输入权重的归一化L1范数来说明密集连接的连通性。这些值显示了每个先前层对相应层的归一化影响。这些数字在图 2(顶部)中表示。在这里插入图片描述
  在Dense Block3中,对角线附近的红色框表示中间层上的聚合处于活动状态。然而,在分类层中,只使用了一小部分中间特征。相比之下,在Dense Block1中,过渡层很好地聚合了其大部分输入特征,而中间层则没有。
  通过观察,我们假设中间层的聚集强度和最后一层的聚集强度之间存在负相关。如果中间层之间的密集连接导致每一层的特征之间存在相关性,这可能是正确的。这意味着密集连接使后面的中间层产生更好的特征,但也与前一层的特征相似。在这种情况下,最后一层不需要学习聚合这两个特征,因为它们代表冗余信息。结果,前中间层对最终层的影响变小。
  由于将所有中间特征聚合在一起以在最后一层生成最终特征,因此最好生成可以相互补充或相关性较低的中间特征。因此,我们可以将我们的假设扩展到中间特征中密集连接的影响相对于成本而言相对较小。为了验证假设,我们重新设计了一个新模块,该模块仅在每个块的最后一层聚合其中间特征。

3.2. 一次性聚合

我们将之前讨论的思想整合到高效的架构中,一次性聚合 (OSA) 模块一次将其特征聚合到最后一层。图1(b)说明提出的OSA模块。每个卷积层通过双向连接进行连接。一种方式连接到后续层以产生具有更大感受野的特征,而另一种方式仅聚合一次到最终输出特征图中。与DenseNet的不同之处在于每一层的输出不会路由到所有后续的中间层,这使得中间层的输入大小保持不变。
  为了验证我们的假设,即中间层的聚合强度和最后一层的聚合强度之间存在负相关关系,并且密集连接是冗余的,我们与Hu等人[9]在OSA模块上进行了相同的实验。我们设计的OSA模块具有与 DenseNet-40 中使用的密集块相似的参数和计算数量。首先,我们研究了具有相同层数的OSA模块和密集块的结果,即12(图 2(中))。随着每个卷积层的输入尺寸减小,输出大于密集块的输出。带有OSA模块的网络在 CIFAR-10分类上显示出93.6%的准确率,略有下降1.2%,但仍高于具有类似模型大小的 ResNet。可以观察到,随着中间层上的密集连接被修剪,最终层中的聚合变得更加强烈。
  此外,OSA模块的过渡层的权重显示出与DenseNet不同的模式:来自浅层的特征更多地聚集在过渡层上。由于深层的特征对过渡层的影响不大,我们可以在没有显着影响的情况下减少层。因此,我们将OSA模块重新配置为5层,每层有43个通道(图2(底部))。令人惊讶的是,使用此模块,我们实现了5.44%的错误率,与DenseNet-40的错误率(5.24%)相似。这意味着通过密集连接构建深度中间特征的效果不如预期。
  尽管带有OSA模块的网络在CIFAR-10上的性能略有下降,这并不一定意味着它在检测任务上表现不佳,但它的MAC比带有密集块的网络要少得多。通过遵循等式(1),估计将DenseNet-40的密集块替换为5层43通道的OSA模块,MAC从3.7M减少到2.5M。这是因为OSA中的中间层具有相同的输入和输出大小,这导致MAC到达下边界。这意味着如果MAC是能源和时间消耗的主要因素,则可以构建更快、更节能的网络。具体来说,由于检测是在比分类更高的分辨率上进行的,中间内存占用会变大,MAC将更恰当地反映能量和时间消耗。
  此外,OSA 提高了GPU计算效率。OSA 模块中间层的输入大小是恒定的。因此,没有必要采用额外的1×1的卷积瓶颈层来降低维度。此外,由于OSA模块聚合了浅层特征,因此它由更少的层组成。因此,OSA 模块被设计为只有几层可以在GPU中高效计算。

3.3. VoVNet的配置

由于OSA模块的多样化特征表示和效率,我们的VoVNet可以通过仅堆叠几个模块来构建,精度高,速度快。基于图2中浅层深度更聚合的确认,我们可以为OSA模块配置比DenseNet更少的卷积和更大的通道。VoVNet有两种类型:轻量级网络,例如VoVNet-27-slim,和大规模网络,例如VoVNet-39/57。VoVNet 由一个包含3个卷积层的茎块和4个输出步幅为32的OSA模块组成。一个OSA模块由5个卷积层组成,具有相同的输入/输出通道,用于最小化MAC,如第3.1节所述。每当阶段上升时,特征图都会通过3×3最大池化以步长2进行下采样。VoVNet-39/57在第4和第5阶段有更多的OSA模块,在最后一个模块中进行下采样。
  由于高层的语义信息对于目标检测任务更重要,我们通过增加不同阶段的输出通道来增加高层特征相对于低层特征的比例。与DenseNet中只有少数新输出的限制相反,我们的策略允许VoVNet以更少的总层数表达更好的特征表示(例如,VoVNet-57与DenseNet-161)。VoVNet架构的详细信息如表1所示。
在这里插入图片描述

4. 实验

在本节中,我们在GPU计算和能源效率方面验证了所提出的VoVNet作为对象检测主干的有效性。首先,为了与轻量级DenseNet进行比较,我们将轻量级 VoVNet-27-slim 应用于DSOD[22],这是第一个使用DenseNet的检测器。然后,我们与最先进的轻量级对象检测器进行比较,例如Pelee[26],它也使用 DenseNet变体主干和SSDMobileNet[8]。
  此外,为了验证推广到大规模模型的可能性,我们将VoVNet扩展到最先进的单级检测器,例如RefineDet[30]和两级检测器,例如Mask R-CNN[6],在更具挑战性的COCO[16]数据集上。由于ResNet是对象检测和分割任务中使用最广泛的主干,我们将VoVNet与ResNet以及DenseNet进行比较。特别是,我们比较了VoVNet-39/57与DenseNet-201/161和ResNet-50/101的速度和准确性,因为它们具有相似的模型大小。

4.1. 实验装置

速度测量。为了公平的速度比较,我们在具有TITAN X GPU(Pascal架构)、CUDA v9.2和cuDNN v7.3的同一GPU工作站上测量了表2、4中所有模型的推理时间。值得注意的是,Pelee[26]将批量归一化层合并到卷积中以加速推理时间。由于其他模型也有批量归一化层,我们比较Pelee没有合并bn技巧以进行公平比较。
能耗测量。我们分别在VOC2007测试图像(例如4952张图像)和COCO微型图像(例如5000张图像)的目标检测评估期间测量轻量级和大规模模型的能耗。GPU 功耗使用Nvidia的系统监视器接口(nvidia-smi)进行测量。我们以100毫秒的间隔对功率值进行采样,并计算测量功率的平均值。每张图像的能耗可以计算如下
在这里插入图片描述
我们还测量了总内存使用量,其中不仅包括模型参数,还包括中间激活图。表2中测量的能量和内存占用。
在这里插入图片描述

4.2. DSOD

为了验证主干部分的有效性,除了用VoVNet-27-slim替换DenseNet-67(将DSOD[22]称为DS-64-64-16-1)之外,我们遵循相同的超参数,例如default框尺度、纵横比和密集预测以及训练协议,例如128个总批次大小、100k最大迭代、初始学习率和学习率计划。DSOD with VoVNet在VOC2007 trainval和VOC2012 trainval(”07+12”)的联合上训练,遵循[22]。由于使用DenseNet-67的原始DSOD是从头开始训练的,因此我们还训练我们的模型,而没有使用ImageNet预训练模型。我们使用基于DSOD原始Caffe代码的VoVNet-27-slim实现DSOD。
VoVNet与DenseNet。如表2所示,所提出的基于VoVNet-27-slim的DSOD300达到了74.87%,即使参数相当,也优于基于DenseNet-67的DSOD300。除了准确性之外,VoVNet-27-slim的推理速度也比具有可比FLOP的同类产品快两倍。Pelee[26]是DenseNet变体主干,旨在将密集块分解为较小的双向密集块,这将FLOP减少到比DenseNet-67少约5倍。然而,尽管FLOP较少,但Pelee的推理速度与DenseNet-67的DSOD相似。我们推测将一个密集块分解成更小的碎片层会降低GPU计算的并行性。基于VoVNet-27-slim的DSOD也以更快的速度超过Pelee 3.97%。
1×1 conv瓶颈层的消融研究。为了检查1×1卷积瓶颈对模型效率的影响,我们进行了一项消融研究,我们在具有半通道输入的OSA模块中的每个3×3卷积操作前添加一个1×1卷积。表3显示了比较结果。具有1×1瓶颈的VoVNet减少了FLOPs和模型参数的数量,但与没有相比,反而增加了GPU推理时间和内存占用。准确度也下降了3.69% mAP。尽管FLOP较少,但与为什么Pelee比DenseNet-67慢的问题相同。由于1×1瓶颈将一个大的3×3卷积张量分解为几个较小的张量,它反而阻碍了GPU并行计算。虽然1×1瓶颈减少了参数的数量,但它增加了网络中的总层数,这需要更多的中间激活图,进而增加整体内存占用。
在这里插入图片描述
GPU计算效率。尽管与DSOD-DenseNet-67相比,SSD-MobileNet和Pelee的FLOP少得多,但DenseNet-67在GPU上显示出相当的推理速度。此外,即使使用类似的FLOP,VoVNet-27-slim的运行速度也是DenseNet-67的两倍。这些结果表明,由于模型的GPU计算效率存在显着差异,因此FLOP无法充分反映推理时间。因此,我们设置FLOP/s,即网络对GPU计算资源的利用程度,作为GPU计算效率。从这个有效指标来看,VoVNet-27-slim在其他方法中达到了最高400 GFLOP/s,如图3(b)所示。VoVNet-27-slim的计算效率比 MobileNet 和Pelee的计算效率高约 10 倍,这表明深度卷积和将卷积分解为更小的碎片操作在GPU计算效率方面不是一种有效的方式。鉴于这些结果,值得注意的是,VoVNet最有效地充分利用了GPU计算资源。因此,VoVNet实现了显着更好的速度-准确度权衡,如图3(a) 所示。
在这里插入图片描述

能源效率。在验证网络效率时,另一个需要考虑的重要事项是能源效率(焦耳/帧)。这个度量是处理图像所消耗的能量;较低的值意味着更好的能源效率。我们测量能耗并获得VoVNet和其他基于模型的检测器的能效。表2显示了能源效率和内存占用之间的趋势。基于VoVNet的DSOD每张图像仅消耗0.9J,比基于DenseNet的DSOD少4.1倍。我们可以注意到,DenseNet过多的中间激活图会增加内存占用,从而导致更多的能量消耗。同样值得注意的是,MobileNet的能效比VoVNet差,尽管其内存占用较低。这是因为深度卷积需要碎片化的内存访问,进而增加了内存访问成本[11]。
  图3©描述了准确率与能源效率的关系,其中,VoVNet的能源效率是 MobileNet 和Pelee的两倍,分别以6.87%和3.97%的幅度优于同类产品。此外,图3(d)显示了计算和能耗方面的效率趋势。VoVNet位于左上方向,这意味着它是GPU计算和能源效率方面最高效的模型。

4.3. RefineDet

在本节中,我们在RefineDet[30]中验证了对大规模VoVNet(例如 VoVNet-39/57)的泛化,这是最先进的单级目标检测器。没有任何花里胡哨的东西,我们只需将VoVNet-39/57加到RefineDet,遵循相同的超参数和训练协议进行公平比较。我们训练RefineDet320进行400k次迭代,批量大小为32,初始学习率为0.001,在280k和360k次迭代时降低0.1。所有模型均由RefineDet原始Caffe code库实现。结果总结在表4中。
在这里插入图片描述
在这里插入图片描述

精度与速度。图 4(a) 说明了速度与准确度的关系。VoVNet-39/57 以更快的速度优于 DenseNet-201/161 和 ResNet50/101。虽然 VoVNet-39 与 DenseNet-161 达到了 33.5 AP 的相似精度,但它的运行速度大约是同类产品的两倍,参数更少,内存占用更少。VoV-39 在相当的速度下也以 3.3% 的绝对 AP 大幅优于 ResNet-50。这些结果表明,在参数和内存占用较少的情况下,所提出的VoVNet是在准确性和速度方面最有效的骨干网络。
GPU计算效率。图4(b)显示VoVNet-39/57以更高的计算效率优于DenseNet和ResNet主干。特别是,由于VoVNet-39的运行速度比DenseNet-201快,FLOP更少,因此VoVNet-39的计算效率比DenseNet-201高约三倍,而且精度更高。可以注意到,虽然DenseNet-201(k=32)的FLOPs较少,但它的运行速度比DenseNet-161(k=48) 慢,这意味着计算效率较低。我们推测,在GPU并行性方面,越来越深的网络架构在计算上效率低下。
能源效率。如图4© 所示,VoV-39/57具有更高或可比的精度,每张图像仅消耗4.8J和5.9J,分别低于DenseNet-201/161和ResNet-50/101。与DenseNet161相比,VoVNet-39的能耗低两倍,但精度相当。表4显示了内存占用与能耗之间的正相关关系。从这个观察可以看出,内存占用相对较少的VoVNet是最节能的。此外,图4(d)显示我们的VoVNet-39/57在能量和计算方面处于最有效的位置。
小物体检测。在表4中,我们发现VoVNet和DenseNet在中小型对象上获得比ResNet更高的AP。这支持通过连接聚合保留具有多感受野的不同特征表示具有小对象检测的优势。此外,VoVNet比DenseNet121/161提高了1.9%/1.2% 的小物体AP增益,这表明在小物体检测上,通过OSA生成更多特征比通过密集连接生成深度特征更好。

4.4. Mask R-CNN from scratch

在本节中,我们还验证了VoVNet作为两阶段目标检测器Mask RCNN的主干的效率。最近的工作[22, 5]研究了没有ImageNet预训练的训练。DSOD是第一个从头开始训练的单级目标检测器,由于DenseNet的深度监督特性而取得了显着的性能。He等人[5] 还证明,当从头开始训练进行更长的训练迭代时,具有组归一化(GN) [27] 的Mask R-CNN实现了与ImageNet预训练相当或更高的准确度。我们还已经在第4.2节中确认了我们的带有DSOD的VoVNet在从头开始训练时取得了良好的性能。
  因此,我们还将 VoVNet 主干应用于具有GN的Mask R-CNN,这是最先进的两阶段对象检测和同时实例分割。为了公平比较,没有任何花里胡哨的东西,我们只将ResNet与GN主干交换为VoVNet与Mask R-CNN中的GN,遵循相同的超参数和训练协议[4]。我们从头开始使用基于GN的Mask R-CNN训练VoVNet,批量大小为16,以端到端的方式进行3x调度,如[27]。同时,由于DenseNet的极端内存占用和Mask R-CNN的更大输入尺寸,即使在32GB V100 GPU上我们也无法训练基于 DenseNet的Mask R-CNN。结果列于表5中。
在这里插入图片描述

精度与速度。对于目标检测任务,VoVNet-39 与 ResNet-50/101 相比,以更快的速度分别获得 2.2%/0.9% 的绝对 AP 增益。与 ResNet-101 相比,VoVNet 的扩展版本 VoVNet-57 也以更快的推理速度实现了最先进的性能。例如分割任务,VoVNet-39 也比 ResNet-50/101 提高了 1.6%/0.4% AP。这些结果支持这样一个事实,即 VoVNet 还可以为对象检测提供更好的多样化特征表示,同时有效地进行实例分割。

5. 结论

对于实时目标检测,在本文中,我们提出了一种称为VoVNet的高效骨干网络,它充分利用了具有多个感受野的多样化特征表示,并改善了DenseNet的低效率。提议的One-Shot Aggregation(OSA)通过一次性聚合最终特征图中的所有特征来解决线性增加密集连接的输入通道的问题。这导致输入大小恒定,从而降低内存访问成本并使GPU计算更高效。大量的实验结果表明,不仅轻量级而且基于大规模VoVNet的检测器都以更快的速度优于基于DenseNet的检测器。对于未来的工作,我们计划将VoVNet应用于其他检测元架构或语义分割、关键点检测等。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值