Skip to main content
QUICK REVIEW

[論文レビュー] Switchable Precision Neural Networks

Luis Guerra, Bohan Zhuang|arXiv (Cornell University)|Feb 7, 2020
Neural Networks and Applications参考文献 54被引用数 15
ひとこと要約

本論文は、推論中に動的に精度を切り替えられる統合型アーキテクチャであるスイッチャブル・プレシジョン・ニューラルネットワーク(SP-Nets)を提案する。スイッチャブルバッチ正規化と自己蒸留学習方式を組み合わせることで、独立して訓練された量子化モデルを上回る優れた精度を複数の量子化レベルで達成し、リソース制約のあるデバイスとも互換性を持つ。

ABSTRACT

Instantaneous and on demand accuracy-efficiency trade-off has been recently explored in the context of neural networks slimming. In this paper, we propose a flexible quantization strategy, termed Switchable Precision neural Networks (SP-Nets), to train a shared network capable of operating at multiple quantization levels. At runtime, the network can adjust its precision on the fly according to instant memory, latency, power consumption and accuracy demands. For example, by constraining the network weights to 1-bit with switchable precision activations, our shared network spans from BinaryConnect to Binarized Neural Network, allowing to perform dot-products using only summations or bit operations. In addition, a self-distillation scheme is proposed to increase the performance of the quantized switches. We tested our approach with three different quantizers and demonstrate the performance of SP-Nets against independently trained quantized models in classification accuracy for Tiny ImageNet and ImageNet datasets using ResNet-18 and MobileNet architectures.

研究の動機と目的

  • ニューラルネットワークにおける静的量子化の課題に対処する。静的量子化では、モデルが固定された1つの精度レベルに固定され、実行時のリソース制約に適応できない。
  • メモリ、遅延、消費電力の制約が変動する状況下でも、重みと活性化の両方に対して、オンデマンドで実行時精度スイッチングを可能にする。
  • 異なる精度スイッチ間でのバッチ正規化の不整合を解消することで、多精度ネットワークにおける学習の不安定性を克服する。
  • フル精度の教師ネットワークから得た知識を用いて低精度スイッチをガイドする自己蒸留戦略により、低精度スイッチの性能を向上させる。
  • さまざまな量子化関数とモデルアーキテクチャ(ResNet-18 や MobileNet を含む)において、ImageNet や Tiny ImageNet ベンチマークでSP-Netsの有効性を実証する。

提案手法

  • スイッチャブルバッチ正規化(S-BN)を導入し、各精度スイッチが独立したバッチ正規化統計を保持することで、学習中の特徴分布の不一致を防ぐ。
  • 自己蒸留学習方式を提案。フル精度スイッチを教師とし、最適化プロセス中に低精度の学生スイッチをソフトラベルでガイドする。
  • すべてのスイッチからの勾配を結合して最適化ステップ前に更新することで、複数の精度スイッチを共有する1つのネットワークを訓練する。
  • ReLUベース、対数、均等量子化などの複数の量子化関数をサポートし、追加のモデル圧縮のための幅スリミング機能も拡張可能である。
  • 交差エントロピー損失($\mathcal{L}_{\text{out}}$)と知識蒸留損失($\mathcal{L}_{f}$)を組み合わせた損失関数を用い、ハイパーパramータ $\alpha_1=1$, $\alpha_2=10^{-7}$ を用いて目的をバランスさせる。
  • 実行時推論を可能にするために、重みと活性化の目的のビット幅を動的に選択することで、デバイスの制約に即座に適応できる。

実験結果

リサーチクエスチョン

  • RQ1重みと活性化の両方に対して複数の精度レベルをサポートする1つのニューラルネットワークを、性能の低下を最小限に抑えて訓練可能か?
  • RQ2複数の精度スイッチ間でバッチ正規化の不整合が生じる状況を、共同学習中にどのように解消できるか?
  • RQ3フル精度の教師ネットワークからの知識蒸留が、共有ネットワーク内の低精度スイッチの性能向上に寄与するか?
  • RQ4スイッチ数の増加が学習安定性と最終的なモデル性能に与える影響は?
  • RQ5SP-Netsは、さまざまな量子化方式とモデルアーキテクチャにおいて、独立して訓練された量子化モデルを上回る性能を示せるか?

主な発見

  • 自己蒸留を用いたSP-Netsは、独立して訓練された量子化モデルを上回るトップ1精度を達成し、ResNet-18を用いたTiny ImageNetでは32ビット重みと3ビット活性化で54.5%のトップ1精度を達成した。
  • 自己蒸留戦略により低精度スイッチの性能が向上し、対数的2量子化器では非蒸留学習に比べて最大3.9パーセンテージポイントの精度向上が見られた。
  • スイッチャブルバッチ正規化(S-BN)は収束に不可欠である。S-BNを用いないネットワークでは、すべてのスイッチで精度が停滞するのに対し、S-BNを導入することで安定的かつ段階的な学習が可能になった。
  • スイッチ数は学習ダイナミクスに影響を与える。スイッチ数を4から16に増加させると、初期学習率(0.03)を低減する必要があり、わずかに低い精度に終わる傾向がある。これは最適化の複雑さとのトレードオフを示している。
  • SP-Netsは、重みと活性化の両方が量子化に敏感であることを示したが、モデルによって相対的な影響の度合いが異なる。ResNet-18では重みと活性化の感度がほぼ同等であるが、MobileNetでは活性化の方がより感受性が強い。
  • 2ビット重みと32ビット活性化を用いたSP-NetはTiny ImageNetで53.3%のトップ1精度を達成したのに対し、32ビット重みと2ビット活性化スイッチでは53.9%の精度を記録し、精度選択が性能に顕著に影響することを示した。

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

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

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

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