Skip to main content
QUICK REVIEW

[论文解读] PP-LCNet: A Lightweight CPU Convolutional Neural Network

Cheng Cui, Tingquan Gao|arXiv (Cornell University)|Sep 17, 2021
Advanced Neural Network Applications参考文献 31被引用 96
一句话总结

PP-LCNet 引入一种基于 MKLDNN 加速、为 CPU 优化的轻量级卷积神经网络,在分类及下游视觉任务中实现近乎恒定延迟下的更高准确性。它在 Intel CPU 上超越了许多最先进的轻量模型,并在检测和分割任务中表现出色。

ABSTRACT

We propose a lightweight CPU network based on the MKLDNN acceleration strategy, named PP-LCNet, which improves the performance of lightweight models on multiple tasks. This paper lists technologies which can improve network accuracy while the latency is almost constant. With these improvements, the accuracy of PP-LCNet can greatly surpass the previous network structure with the same inference time for classification. As shown in Figure 1, it outperforms the most state-of-the-art models. And for downstream tasks of computer vision, it also performs very well, such as object detection, semantic segmentation, etc. All our experiments are implemented based on PaddlePaddle. Code and pretrained models are available at PaddleClas.

研究动机与目标

  • 探讨如何设计在不增加 CPU 推理延迟的情况下最大化准确性的轻量级 CNN。
  • 识别在支持 Intel MKLDNN 的 CPU 上提升性能的特定 CPU 设计选择与模块。
  • 提出一组实用规则与组件,指导轻量模型的面向 CPU 的 CNN 设计与神经架构搜索(NAS)。
  • 展示 PP-LCNet 在 ImageNet 分类及下游任务(检测、分割)上的性能。
  • 为 NAS 研究人员就快速 CPU 部署约束搜索空间提供见解。

提出的方法

  • 以受 MobileNetV1 启发的 DepthSepConv 块作为基线架构,以最小化在 Intel CPU 上的开销。
  • 将 ReLU 替换为 H-Swish 激活函数,以在几乎不增加延迟的情况下提升准确性。
  • 将 Squeeze-and-Excitation(SE)模块放置在网络尾部附近,以平衡准确性与速度。
  • 主要在网络尾部采用较大的 5x5 卷积核,以提升性能而不产生广泛的延迟成本。
  • 在全局平均池化后追加一个 1280 维的 1x1 卷积,以在很小的延迟影响下提升拟合能力。
  • 评估多种模型尺度并在适用时使用 SSLD 蒸馏以进一步提升准确性。

实验结果

研究问题

  • RQ1如何针对具备 MKLDNN 的 Intel CPU 进行优化,以在不增加延迟的前提下最大化轻量级 CNN 的准确性?
  • RQ2哪些架构选择(激活函数、SE 放置、卷积核大小、GAP 之后的层)在 CPU 上能实现最佳的准确性/延迟权衡?
  • RQ3在受 CPU 推理速度约束的情况下,紧凑网络设计是否能在分类和下游任务上超越现有的轻量模型?
  • RQ4为设计对 CPU 友好的 CNN 和引导轻量部署的 NAS 形成哪些实用规则?

主要发现

ModelParams(M)FLOPs(M)Top-1 Acc.(%)Top-5 Acc.(%)Latency(ms)
PP-LCNet 0.25x1.51.51851.861.74
PP-LCNet 0.35x1.62958.0980.831.92
PP-LCNet 0.5x1.94763.1484.662.05
PP-LCNet 0.75x2.49968.1888.302.29
PP-LCNet 1x3.016171.3290.032.46
PP-LCNet 1.5x4.534273.7191.533.19
PP-LCNet 2x6.559075.1892.274.27
PP-LCNet 2.5x9.090676.6093.005.39
PP-LCNet 0.5x*1.94766.1086.462.05
PP-LCNet 1x*3.016174.3992.092.46
PP-LCNet 2.5x*9.090680.8295.335.39
  • PP-LCNet 变体在 Intel CPU 上以较低延迟在多个尺度下实现具有竞争力的 Top-1/Top-5 准确率。
  • 将 ReLU 替换为 H-Swish 在几乎不增加延迟的情况下显著提升准确性。
  • 将 SE 模块定位在网络尾部比密集分布更加兼顾准确性与速度。
  • 在尾部主要使用较大的 5x5 卷积核可带来准确性提升而延迟惩罚不广泛扩散。
  • 在 GAP 之后添加一个 1280 维的 1x1 卷积显著提升准确性,延迟影响适中。
  • SSL 蒸馏(SSLD)进一步提升更大 PP-LCNet 变体的准确性。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。