Skip to main content
QUICK REVIEW

[論文レビュー] Soft Filter Pruning for Accelerating Deep Convolutional Neural Networks

Yang He, Guoliang Kang|arXiv (Cornell University)|Aug 21, 2018
Advanced Neural Network Applications参考文献 20被引用数 70
ひとこと要約

Soft Filter Pruning (SFP) は、訓練中に小さなノルムのフィルターをゼロに設定してから、それらを次のエポックで更新できるようにすることで、モデル容量を高めつつ過度な pre-trained モデル依存なしに効果的な加速を実現します。

ABSTRACT

This paper proposed a Soft Filter Pruning (SFP) method to accelerate the inference procedure of deep Convolutional Neural Networks (CNNs). Specifically, the proposed SFP enables the pruned filters to be updated when training the model after pruning. SFP has two advantages over previous works: (1) Larger model capacity. Updating previously pruned filters provides our approach with larger optimization space than fixing the filters to zero. Therefore, the network trained by our method has a larger model capacity to learn from the training data. (2) Less dependence on the pre-trained model. Large capacity enables SFP to train from scratch and prune the model simultaneously. In contrast, previous filter pruning methods should be conducted on the basis of the pre-trained model to guarantee their performance. Empirically, SFP from scratch outperforms the previous filter pruning methods. Moreover, our approach has been demonstrated effective for many advanced CNN architectures. Notably, on ILSCRC-2012, SFP reduces more than 42% FLOPs on ResNet-101 with even 0.2% top-5 accuracy improvement, which has advanced the state-of-the-art. Code is publicly available on GitHub: https://github.com/he-y/soft-filter-pruning

研究の動機と目的

  • CNN 推論コストを精度を保ったまま削減する動機。
  • 剪定済みのフィルターを更新できるようにして、モデル容量を維持する剪定手法を開発する。
  • 標準的な訓練に剪定を組み込むことで層ごとの剪定や大規模なファインチューニングの必要を排除する。
  • CNN アーキテクチャと大規模データセット(CIFAR-10 および ImageNet)での有効性を示す。
  • SFP が hard pruning 手法を上回り得ること、from scratch でも pre-trained models でも機能することを示す。)

提案手法

  • 各エポックの末尾に Lp ノルム(主に L2)に基づいてフィルターを剪定し、各レイヤーあたりのフィルターの割合 P を選択する。
  • 選択された低重要度のフィルターをゼロに設定し、順伝搬中の寄与を一時的に除外する。
  • ゼロにされたフィルターが逆伝播によって再構築(更新)されるよう訓練を続け、モデル容量を保持する。
  • layer-by-layer ではなくすべての重み付きレイヤーを同時に剪定し、レイヤー間で単一の剪定率 P を使用する。
  • トレーニング収束後にゼロ化されたフィルターを破棄し、対応する入力/出力チャネルの次元を調整してコンパクトなモデルを再構築する。
  • 理論的および現実的なスピードアップの両方を分析し、実用的な利得はハードウェアとライブラリに依存することを強調する。

実験結果

リサーチクエスチョン

  • RQ1Soft pruning の訓練中のフィルターは hard pruning より高いモデル容量を維持できるか?
  • RQ2SFP を用いた場合、scratch からの剪定は pre-trained models の剪定と競争力があるか?
  • RQ3層間で一様な剪定率を用いると精度と加速にどのような影響があるか?
  • RQ4SFP は異なる CNN アーキテクチャとデータセット(CIFAR-10 と ILSVRC-2012)で最先端の剪定手法と比べてどう機能するか?

主な発見

  • SFP は意味のある加速を達成する(例:ResNet-101 の FLOPs を最大約42%程度削減、ILSVRC-2012 で特定の設定下で精度の変化が最小または正の方向)。
  • Scratch から剪定する場合、ソフト剪定はベースラインより精度を維持または向上させ、pre-trained models を使用すると性能を上回ることがある。
  • hard pruning 対比で、SFP は訓練中により高いモデル容量を維持し、剪定後の精度が向上する。
  • 実験では L2-norm ベースのフィルター選択が剪定判断において L1-norm よりやや有効である。
  • 現実的なスピードアップ(実際の推論時間)は実質的に大きいが、IO および BLAS の効率性により理論上の FLOP ベースのスピードアップとは異なる場合がある。

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

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

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

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