[論文レビュー] Towards Learning of Filter-Level Heterogeneous Compression of Convolutional Neural Networks
本稿では、畳み込みニューラルネットワークのフィルタレベルにおける異種の圧縮を目的とした微分可能ニューラルアーキテクチャサーチ(NAS)フレームワークを提案する。層全体にわたる量子化ビット幅とフィルタpruningの共同最適化を実現する。各フィルタの圧縮操作を学習可能な確率としてモデル化することで、計算複雑性制約下でもエンドツーエンドの学習が可能となり、BOPs(ビット演算)予算内での精度向上を達成するが、異種量子化によるばらつきが実用的利得を制限している。
Recently, deep learning has become a de facto standard in machine learning with convolutional neural networks (CNNs) demonstrating spectacular success on a wide variety of tasks. However, CNNs are typically very demanding computationally at inference time. One of the ways to alleviate this burden on certain hardware platforms is quantization relying on the use of low-precision arithmetic representation for the weights and the activations. Another popular method is the pruning of the number of filters in each layer. While mainstream deep learning methods train the neural networks weights while keeping the network architecture fixed, the emerging neural architecture search (NAS) techniques make the latter also amenable to training. In this paper, we formulate optimal arithmetic bit length allocation and neural network pruning as a NAS problem, searching for the configurations satisfying a computational complexity budget while maximizing the accuracy. We use a differentiable search method based on the continuous relaxation of the search space proposed by Liu et al. (arXiv:1806.09055). We show, by grid search, that heterogeneous quantized networks suffer from a high variance which renders the benefit of the search questionable. For pruning, improvement over homogeneous cases is possible, but it is still challenging to find those configurations with the proposed method. The code is publicly available at https://github.com/yochaiz/Slimmable and https://github.com/yochaiz/darts-UNIQ
研究の動機と目的
- 低電力システムにおけるディープCNNの高い計算コストに対処すること。
- より高い効率性を実現するため、量子化とプルーニングを組み合わせたフィルタレベルでの異種圧縮を検討すること。
- ビット幅とフィルタ数の最適化を微分可能なNAS問題として定式化すること。
- 均一なベースラインと比較して、異種構成の有効性を評価すること。
提案手法
- 量子化とプルーニングのフィルタレベル圧縮操作を、連続的リラクゼーションを用いて学習可能な確率としてモデル化する。
- Liuら(2019a)に基づく微分可能な探索手法を採用し、操作確率をαでパラメータ化し、Gumbel-Softmaxトリックを用いてソフトアーグマックス化する。
- ネットワーク構成を、各フィルタに層ごとに操作を割り当てる疑似行列aとして定義する。
- 再パrameterizationトリックを用いて、期待損失J(α; ω)のαに関する勾配を、構成の期待値をとることで導出する。
- 計算複雑性指標としてBOPs(ビット演算)を採用し、重み、活性化、アキュムレータの幅のビット幅を考慮する。
- フィルタごとのビット幅と活性化/重み精度の影響をMAC演算に反映する、層固有のBOPs計算を導入する。
実験結果
リサーチクエスチョン
- RQ1微分可能なNASは、CNNのフィルタレベルにおける異種圧縮構成を効果的に学習できるか?
- RQ2各フィルタごとに異なるビット幅を用いる異種量子化は、均一な量子化と比較して精度とばらつきの面でどのように異なるか?
- RQ3量子化とプルーニングの共同最適化は、均一な圧縮と比較してBOPs予算内での精度向上に寄与するか?
- RQ4フィルタごとのビット幅割り当ては、計算複雑性とモデル性能にどのような影響を及ぼすか?
主な発見
- 異種量子化は性能のばらつきが大きく、探索プロセスの信頼性を損ない、最適化の利得を低下させる。
- プルーニングに関しては、均一な構成よりも改善が得られるが、最適構成への収束は依然として困難である。
- BOPs指標は、特にFPGAやASIC上でのカスタム精度データ型を用いる場合、計算複雑性を正確に捉えている。
- 提案された微分可能なNASフレームワークにより、フィルタレベル圧縮操作に対する勾配ベース探索をエンドツーエンドで実現できる。
- ビット幅とフィルタ数の共同最適化の実現可能性は示されたが、量子化設定における高いばらつきが実用的利得を制限している。
- コードは再現性を高めるために、https://github.com/yochaiz/Slimmable および https://github.com/yachaiz/darts-UNIQ で公開されている。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。