[論文レビュー] Approximated Oracle Filter Pruning for Destructive CNN Width Optimization
AOFPは、次層の出力からフィルター重要度を局所的に推定することでOracle Pruningを近似する多経路・二分探索ベースの剪定フレームワークを提案し、各層の並同時剪定を可能にするための時間短縮と最小限の精度低下を実現。CIFAR-10とImageNetで実証。
It is not easy to design and run Convolutional Neural Networks (CNNs) due to: 1) finding the optimal number of filters (i.e., the width) at each layer is tricky, given an architecture; and 2) the computational intensity of CNNs impedes the deployment on computationally limited devices. Oracle Pruning is designed to remove the unimportant filters from a well-trained CNN, which estimates the filters' importance by ablating them in turn and evaluating the model, thus delivers high accuracy but suffers from intolerable time complexity, and requires a given resulting width but cannot automatically find it. To address these problems, we propose Approximated Oracle Filter Pruning (AOFP), which keeps searching for the least important filters in a binary search manner, makes pruning attempts by masking out filters randomly, accumulates the resulting errors, and finetunes the model via a multi-path framework. As AOFP enables simultaneous pruning on multiple layers, we can prune an existing very deep CNN with acceptable time cost, negligible accuracy drop, and no heuristic knowledge, or re-design a model which exerts higher accuracy and faster inference.
研究の動機と目的
- CNNの層幅(フィルター数)を選択する課題に対処し、精度と効率のバランスをとる。
- パラメータ数とFLOPsを大幅に削減しつつ、時間コストを許容範囲内に保つ剪定法を開発する。
- heavy heuristic guidanceを伴わずに複数層を同時に剪定できるようにする。
- Destructive CNN Re-designのフレームワークを導入し、より高い精度と高速推論のために層幅を最適化する。
提案手法
- 最終出力ではなく、次の層のアブレーション影響によってフィルター重要度を定義する。
- Damage Isolationを用いて次の層の出力を介して各フィルターの影響を定量化し、局所的で並列なスコアリングを可能にする。
- 複数の層にまたがるスコアリングとファインチューニングを並列化するためのmulti-pathトレーニング時剪定を導入する。
- AOFPを用いて最も重要度が低いフィルターを反復的に同定する二分探索風の手順と、剪定粒度を制御する refinement thresholdを導入する。
- ベースマスクとスコアリングマスクを用いて、ファインチューニングを進行させつつフィルターを剪定し、層間で徐々にグローバルな剪定を可能にする。
実験結果
リサーチクエスチョン
- RQ1AOFPはOracle Pruningとほぼ同等の剪定品質を、計算コストを大幅に抑えつつ実現できるか。
- RQ2同時多層剪定は、精度低下を抑えつつCNNの圧縮をより効率的に進められるか。
- RQ3Damage Isolationベースの重要度推定は、従来のヒューリスティクスや完全再学習ベースの剪定と比べてどれほど効果的か。
- RQ4AOFPは manual heuristic tuningなしに層ごとの幅と剪定粒度を自動的に決定できるか。
主な発見
| モデル | Top-1 | Top-5 | FLOPs | FLOPsダウン率% |
|---|---|---|---|---|
| Alex base | 55.71 | 79.45 | 838M | - |
| Alex AOFP-B1 | 56.54 | 79.95 | 578M | 30.98 |
| Alex AOFP-B2 | 56.17 | 79.53 | 492M | 41.33 |
| Res50 base | 75.34 | 92.56 | 3.85G | - |
| Res50 AOFP-C1 | 75.63 | 92.69 | 2.58G | 32.88 |
| Res50 ThiNet-70 | 72.04 | 90.67 | 2.44G | 36.75 |
| Res50 NISP | 0.89 | - | - | 44.01 |
| Res50 Chan-Pr | - | 90.80 | - | 50.00 |
| Res50 SPP | - | 90.40 | - | 50.00 |
| Res50 Autopr | 74.76 | 92.15 | - | 51.21 |
| Res50 ThiNet-50 | 71.01 | 90.02 | 1.70G | 55.76 |
| Res50 C-SGD-50 | 74.54 | 92.09 | 1.70G | 55.76 |
| Res50 AOFP-C2 | 75.11 | 92.28 | 1.66G | 56.73 |
| Res101 base | 76.63 | 93.29 | 7.57G | - |
| Res101 AOFP-D1 | 76.88 | 93.49 | 5.29G | 30.11 |
| Res101 ISTA | 75.27 | - | 4.47G | 40.95 |
| Res101 AOFP-D2 | 76.40 | 93.07 | 3.77G | 50.19 |
| Res152 base | 77.37 | 93.52 | 11.28G | - |
| Res152 AOFP-E1 | 77.47 | 93.76 | 6.12G | 45.72 |
| Res152 AOFP-E2 | 77.00 | 93.49 | 4.13G | 63.36 |
| Res152 AOFP-E3 | 76.40 | 93.02 | 2.85G | 74.69 |
- AOFPは完全なOracle Pruningと比較してスコアリングコストを大幅に削減しつつ、ほぼOracle剪定品質を達成する。
- AOFPはVGG、AlexNet、ResNet系で、精度損失を最小限に抑えるか、場合によっては精度向上を伴いながら、FLOPsとパラメータ削減を大きく実現する。
- Damage Isolationとmulti-pathトレーニングにより、層間の安全な並列剪定を実現し、剪定時の誤差伝搬を緩和する。
- AOFPは手動のハイパーパラメータ調整を必要とせず、剪定に適した層を自動的に特定し剪定粒度を調整する。
- Destructive CNN Re-designは剪定後のチューニングパラダイムとして、再最適化された層幅で精度をさらに向上させることができる。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。