Skip to main content
QUICK REVIEW

[論文レビュー] Knapsack Pruning with Inner Distillation

Yonathan Aflalo, Asaf Noy|arXiv (Cornell University)|Feb 19, 2020
Evolutionary Algorithms and Applications参考文献 53被引用数 18
ひとこと要約

本論文は、Knapsack Pruning with Inner Distillation (KPID) を提案する。これは、親ネットワークの特徴表現を内側の知識蒸留によって転送することで、FLOPs や推論時間とのトレードオフを最適化する1回打ちのニューラルネットワーク pruning 法である。この手法は、ResNet や EfficientNet ベースのバックボーンを用いて ImageNet、CIFAR-10、CIFAR-100 で最先端の精度を達成し、同じ FLOPs 水準で MobileNetV3 や EfficientNet-B0 よりも高速なモデルを生成する。

ABSTRACT

Neural network pruning reduces the computational cost of an over-parameterized network to improve its efficiency. Popular methods vary from $\ell_1$-norm sparsification to Neural Architecture Search (NAS). In this work, we propose a novel pruning method that optimizes the final accuracy of the pruned network and distills knowledge from the over-parameterized parent network's inner layers. To enable this approach, we formulate the network pruning as a Knapsack Problem which optimizes the trade-off between the importance of neurons and their associated computational cost. Then we prune the network channels while maintaining the high-level structure of the network. The pruned network is fine-tuned under the supervision of the parent network using its inner network knowledge, a technique we refer to as the Inner Knowledge Distillation. Our method leads to state-of-the-art pruning results on ImageNet, CIFAR-10 and CIFAR-100 using ResNet backbones. To prune complex network structures such as convolutions with skip-links and depth-wise convolutions, we propose a block grouping approach to cope with these structures. Through this we produce compact architectures with the same FLOPs as EfficientNet-B0 and MobileNetV3 but with higher accuracy, by $1\%$ and $0.3\%$ respectively on ImageNet, and faster runtime on GPU.

研究の動機と目的

  • 既存のプルーニング手法がヒューリスティックな重要度スコアに依存しており、親ネットワークの全表現能力を活用できないという限界を是正すること。
  • プルーニング中にモデルの精度と計算コスト(FLOPs や推論時間)のトレードオフを最適化すること。
  • スキップ接続、深度可分畳み込み、 squeeze-and-excitation モジュールを含む複雑なアーキテクチャ(例:ResNets や EfficientNets)の有効なプルーニングを可能にすること。
  • 親ネットワークの内部活性化パターンを模倣することで、プルーニングされたネットワークに中間特徴表現を転送することにより、プルーニングモデルの性能を向上させること。
  • 同じ FLOPs 水準で EfficientNet-B0 や MobileNetV3 よりも高い精度を達成するか、それらを上回る推論速度を実現するコンactで高速なモデルを生成すること。

提案手法

  • 各チャネルに重要度スコアと計算コスト(FLOPs)を割り当て、予算制約のもとで精度を最大化する Knapsack 問題としてネットワークプルーニングを定式化する。
  • Knapsack 問題の効率的かつ動的計画法に基づく解法を可能にするために、FLOP 値に GCD 正規化を適用する。
  • スキップ接続や深度可分畳み込みなどの複雑なアーキテクチャ的要因を、プルーニング中に原子的単位として扱うブロックグループ化戦略を採用する。
  • 内部知識蒸留(IKD)を導入し、プルーニングされたネットワークを親ネットワークの各レイヤーの内部活性化パターンにあわせてファインチューニングする。
  • 最終的なログィットだけでなく、中間特徴のレベルで親ネットワークとプルーニングネットワークの類似性に基づいた知識蒸留損失を採用する。
  • FLOPs 基準と推論時間基準の両方のプルーニングをサポートし、後者は実際の GPU 推論時間を測定して、実世界のパフォーマンスをより正確に反映する。

実験結果

リサーチクエスチョン

  • RQ1ネットワークプルーニングを Knapsack 問題として定式化することで、ヒューリスティックなプルーニング手法と比較して、精度と計算コストのトレードオフが改善されるか?
  • RQ2親ネットワークから中間特徴表現(内部知識)を転送することで、プルーニングモデルの精度が向上するか?
  • RQ3本手法は、スキップ接続や深度可分畳み込みを含む複雑なアーキテクチャ(例:ResNets や EfficientNets)を効果的にプルーニングできるか?
  • RQ4FLOPs 基準ではなく、実際の GPU 上での推論速度を最適化する時間ベースのプルーニングは、同じ FLOP 予算でも FLOPs 基準のプルーニングよりも高速なモデルを生成するか?
  • RQ5本手法は、ImageNet や CIFAR ベンチマークで最先端の精度を達成できるか?また、同じ FLOPs 水準で MobileNetV3 や EfficientNet-B0 よりも速い推論速度を実現できるか?

主な発見

  • 2.58 G FLOPs でプルーニングされた ECA-ResNet-101D は ImageNet で 80.69% の top-1 精度を達成し、同じ FLOP 水準の EfficientNet-B0 を上回る。
  • P100 GPU 上で 57% のプルーニング比の ECA-ResNet-101D を時間ベースでプルーニングした場合、80.86% の精度と 1010 イメージ/秒の推論速度を達成し、同 FLOP 水準で 80% 精度を超えるモデルの中で最も速い。
  • 43% のプルーニング比の ECA-ResNet-50D は V100 で 3587 イメージ/秒の速度で 79.71% の精度を達成し、速度-精度トレードオフにおいて MobileNetV3 を上回る。
  • 内部知識蒸留(IKD)はファインチューニング性能を顕著に向上させ、プルーニングされたネットワークが親ネットワークの特徴表現能力をよりよく保持できるようにする。
  • ブロックグループ化戦略により、スキップ接続や squeeze-and-excitation モジュールのような非順序的で複雑なレイヤーのプルーニングが成功裏に可能となった。
  • 本手法は1回打ちであり、繰り返しの再訓練を必要としないため、効率的かつ事前学習済みモデルへの適用が可能である。

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

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

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

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