论文标题 | An Energy and GPU-Computation Efficient Backbone Network for Real-Time Object Detection |
---|---|
论文作者 | Youngwan Lee, Joong-won Hwang, Sangrok Lee, Yuseok Bae, Jongyoul Park |
发表日期 | 2019年04月22日 |
GB引用 | > Lee Youngwan, Hwang Joong-won, Lee Sangrok, et al. An Energy and GPU-Computation Efficient Backbone Network for Real-Time Object Detection[J]. 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops (CVPRW), 2019, abs/1904.09730: 752-760. |
DOI | 10.1109/CVPRW.2019.00103 |
论文地址:https://arxiv.org/pdf/1904.09730
摘要
本文提出了一种高效的骨干网络VoVNet,旨在解决DenseNet在实时目标检测中的低效问题。DenseNet通过密集连接保存中间特征,但其线性增加的输入通道导致了内存访问成本增加,从而降低了计算效率和能源效率。VoVNet采用一次聚合(One-Shot Aggregation, OSA)模块,不仅保持了DenseNet多感受野特征的优势,还通过仅在最终特征图上聚合所有特征来克服了密集连接的低效问题。实验表明,无论是轻量级还是大规模的VoVNet,在速度和能源效率方面均优于基于DenseNet的目标检测器,并且在小物体检测方面表现更优。
全文摘要
论文标题为《An Energy and GPU-Computation Efficient Backbone Network for Real-Time Object Detection》,主要探讨了一种称为VoVNet的高效骨干网络,用于实时物体检测。
随着卷积神经网络(CNN)的快速发展,DenseNet等模型在物体检测任务中取得了优异的表现。然而,DenseNet由于其特征的密集连接,导致较高的内存访问成本和计算开销,从而影响了速度和能效。为了解决这些问题,研究者提出了一种新架构VoVNet,通过引入一种名为“One-Shot Aggregation”(OSA)的特征聚合方法,显著提高了网络的能效和计算性能。
研究表明,VoVNet在物体检测中表现优于DenseNet与ResNet等传统模型,具体体现在:
- 速度提升:VoVNet的检测速度比DenseNet快2倍,并且能耗降低1.6到4.1倍。
- 效率优化:通过一次性聚合特征,VoVNet在保持特征多样性的同时,降低了内存访问成本,提高了GPU的计算效率。
- 小物体检测:VoVNet在小物体检测性能上显著优于DenseNet和ResNet,这表明OSA方法能够更好地捕捉不同尺度的信息。
VoVNet的设计在于它打破了DenseNet中逐层增加输入通道的局限,通过在最后层中一次性聚合所有特征,使得其输入大小保持不变,并有效减少了特征冗余。这种方法不仅提升了网络的能效和速度,还为其他检测模型的设计提供了新的思路。
研究问题
如何在保持特征重用优点的同时提高DenseNet在目标检测任务中的计算效率和能源效率?
研究方法
实验研究: 提出了一种名为VoVNet的新架构,通过One-Shot Aggregation (OSA)模块来减少内存访问成本和提高GPU计算效率,并通过在多个对象检测器上的应用验证了其有效性。
比较研究: 将VoVNet与DenseNet和ResNet在速度和准确性方面进行了对比,展示了VoVNet在保持较高准确性的同时具有更快的速度和更好的能效。
混合方法研究: 文章结合了定量研究(如性能指标和计算效率的测量)和定性研究(如观察到的中间层特征的聚集模式),提出了新的模块设计思路,并通过实验证明了新模块的有效性。
研究思路
这篇论文的研究思路主要集中在提高实时目标检测中的效率,尤其是利用卷积神经网络(CNN)作为特征提取器的过程中。论文提出了一种新型的高效骨干网络VoVNet,旨在解决DenseNet在目标检测任务中的一些低效问题,尤其是在能源消耗和计算效率方面。
理论基础:
- 本文基于DenseNet的思想,DenseNet通过稠密连接(dense connections)使得网络在每一层都能够利用前面所有层的特征,这种特征复用可以在较少的参数和运算量下实现良好的特征表达。
- 尽管DenseNet在分类任务中表现出色,但在目标检测中由于线性增加的输入通道导致了较高的内存访问成本,最终影响了速度和能效。
模型:
- 论文提出的VoVNet使用了一种称为“一次性聚合”(One-Shot Aggregation, OSA)的模块,旨在保留DenseNet在多重感受野下的特征表示能力,同时解决其在内存使用和计算效率上的不足。
- OSA模块只在最后的特征图中聚合所有中间特征,这样避免了DenseNet中每一层都依赖于前面所有层输出的复杂性,减少了输入通道的线性增长。
研究方法
- 构建VoVNet:
- 论文分为两个主要模型:轻量级的VoVNet-27-slim和大规模的VoVNet-39/57。设计时,尽量减少每层的卷积长度,通过合理配置通道数来降低计算复杂度,保持良好的精度和速度。
- 通过在每个阶段使用3×3的卷积和1×1卷积的组合,实施新的聚合方案,确保能量消耗降低。
- 性能测试:VoVNet在多种目标检测任务(譬如DSOD、RefineDet、Mask R-CNN等)中进行了实验验证。通过与DenseNet和ResNet的比较,评估VoVNet在准确性、速度和能量效率上的表现。
有效网络设计的因素
在设计高效网络时,许多研究如 MobileNet v1[8] 、MobileNet v2[21] 、ShuffleNet v1[31] 、ShuffleNet v2[18] 、和Pelee[26] 主要关注通过使用深度卷积和 1 × 1 卷积瓶颈架构来减少 FLOPs 和模型大小。然而,减少FLOPs和模型大小并不能保证减少GPU推理时间和实际能耗。Ma等人 [18] 展示了一个实验,在GPU上,具有相似数量 FLOPs 的 ShuffleNet v2 比 MobileNet v2 运行得更快。Chen等人 [2] 还表明,尽管 SqueezeNet 的权重比 AlexNet 少50倍,但它消耗的能量比AlexNet多。这些现象意味着,FLOPs 和模型大小是衡量实用性的间接指标,基于这些指标设计网络应该重新考虑。建立高效的网络架构,专注于更实用和有效的指标,例如每张图像的能量和每秒帧 (FPS),除了FLOPs和模型参数,重要的是要考虑影响能量和时间消耗的其他因素。
我们指出的第一个因素是内存访问成本 (MAC)。在CNN中能量消耗的主要来源是内存访问而不是计算 [28]。具体来说,从DRAM (动态随机访问存储器) 访问操作数据所消耗的能量要比计算本身高几个数量级。此外,内存访问的时间预算占时间消耗的很大一部分,甚至可能成为GPU过程的瓶颈 [18]。这意味着即使在相同的计算次数和参数下,如果内存访问的总数因模型结构而异,能耗也会有所不同。
导致模型大小和内存访问次数之间存在差异的一个原因是中间激活的内存占用。正如 Chen 等人[1]所述,内存占用归因于滤波器参数和中间特征图。如果中间特征图较大,则即使在相同的模型参数下,内存访问的成本也会增加。因此,我们考虑MAC,它涵盖了滤波器参数和中间特征图尺寸的内存占用,是网络设计的重要因素。具体来说,我们遵循Ma等人[18]的方法来计算每个卷积层的MAC如下
M A C = h w ( c i + c o ) + k 2 c i c o ( 1 ) \mathrm{MAC}=hw(c_i+c_o)+k^2c_ic_o\quad(1) MAC=hw(ci+co)+k2cic