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 最適化の軽量 CNN を導入し、分類と下流の視覚タスク全体でほぼ一定のレイテンシのまま精度を向上させる。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 対応設計と NAS を導く実用的なルールと要素のセットを提案する。
  • ImageNet 分類と下流タスク(検出、分割)で PP-LCNet の性能を示す。
  • 高速 CPU 展開のための探索空間の制約に関する NAS 研究者への洞察を提供する。

提案手法

  • DepthSepConv ブロックを MobileNetV1 に着想を得た基盤アーキテクチャとして採用し、Intel CPU のオーバーヘッドを最小化する。
  • ReLU を H-Swish アクティベーションに置換し、ラティンシーへの影響を最小限に抑えつつ精度を向上させる。
  • SE モジュールをネットワークの末尾寄りに配置して精度と速度のバランスを取る。
  • ネットワーク末尾で主に 5x5 カーネルを大きく採用し、広範なレイテンシコストを伴わずに性能を向上させる。
  • グローバル平均プーリングの後に 1280 次元の 1x1 変換を付加して適合能力を高め、レイテンシへの影響を最小限にする。
  • 複数のモデルスケールを評価し、適用可能な場合は SSLD 蒸留を用いて精度をさらに向上させる。

実験結果

リサーチクエスチョン

  • RQ1Intel CPUs の MKLDNN に特化して軽量 CNN を最適化し、レイテンシを増やさずに精度を最大化するにはどうすればよいか。
  • RQ2CPU での精度/レイテンシのトレードオフを最適化するためのアーキテクチャ選択(活性化、SE の配置、カーネルサイズ、GAP 後の層)とは何か。
  • RQ3CPU 推論速度で制約される場合、分類と下流タスクで既存の軽量モデルを上回るコンパクトなネットワーク設計は可能か。
  • RQ4CPU フレンドリーな CNN を設計し、軽量デプロイのための NAS を導く実践的なルールは何か。

主な発見

モデルパラメータ(M)FLOPs(M)Top-1 精度(%)Top-5 精度(%)レイテンシ(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 conv を追加すると、遅延への影響を抑えつつ精度を大きく向上させる。
  • SSLD(SSL Distillation)は、より大きな PP-LCNet 変種の精度をさらに改善する。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。