Skip to main content
QUICK REVIEW

[論文レビュー] Scalable Methods for 8-bit Training of Neural Networks

Ron Banner, Itay Hubara|arXiv (Cornell University)|May 25, 2018
Advanced Neural Network Applications参考文献 25被引用数 129
ひとこと要約

ニューラルネットワークを完全に8ビットで訓練することが Range Batch-Normalization と Gradients Bifurcation を用いることで実現可能であり、精度の低下なしに ImageNet規模の結果を達成する。

ABSTRACT

Quantized Neural Networks (QNNs) are often used to improve network efficiency during the inference phase, i.e. after the network has been trained. Extensive research in the field suggests many different quantization schemes. Still, the number of bits required, as well as the best quantization scheme, are yet unknown. Our theoretical analysis suggests that most of the training process is robust to substantial precision reduction, and points to only a few specific operations that require higher precision. Armed with this knowledge, we quantize the model parameters, activations and layer gradients to 8-bit, leaving at a higher precision only the final step in the computation of the weight gradients. Additionally, as QNNs require batch-normalization to be trained at high precision, we introduce Range Batch-Normalization (BN) which has significantly higher tolerance to quantization noise and improved computational complexity. Our simulations show that Range BN is equivalent to the traditional batch norm if a precise scale adjustment, which can be approximated analytically, is applied. To the best of the authors' knowledge, this work is the first to quantize the weights, activations, as well as a substantial volume of the gradients stream, in all layers (including batch normalization) to 8-bit while showing state-of-the-art results over the ImageNet-1K dataset.

研究の動機と目的

  • 訓練中の計算量とメモリ使用を削減するために量子化訓練を動機づける。
  • 精度を保ちながら、重み、活性化、ほとんどの勾配の8ビット量子化を提案する。
  • バッチ正規化とバックプロパゲーションにおける数値安定性のボトルネックに対処する。
  • 標準BNの低精度版としてRange Batch-Normalizationを導入する。
  • 量子化されたバックプロパゲーションを用いた大規模モデル(ImageNet)の実践的訓練を実証する。

提案手法

  • 量子化を耐えるようRange BNでバッチ正規化を置換し、高精度の平方根演算を回避する。
  • 重み、活性化、および勾配のかなりの部分を8ビットに量子化し、重み勾配の計算だけを16ビットのまま保持する。
  • Gradients Bifurcationを導入: バックワードパスの層勾配 g_l を8ビットで計算し、更新のための g_W を16ビットで並行して計算する。
  • 更新の無偏倹な蓄積を保証するため、勾配量子化には確率的丸めを用いる。
  • 訓練時量子化にはGEMMLOWP量子化方式を適用する。
  • バックプロパゲーション中の離散変数微分にはStraight-Through Estimator (STE) を採用する。

実験結果

リサーチクエスチョン

  • RQ18ビット量子化を訓練中に重み、活性化、およびほとんどの勾配に適用して、大規模データセットで精度を低下させずに訓練できるか?
  • RQ2バッチ正規化と勾配計算を低精度へ適応させ、安定性と性能を維持するにはどうすればよいか?
  • RQ3低精度訓練下でRange BNは標準BNと同等の精度を提供するか?
  • RQ4量子化されたバックプロパゲーションが訓練速度、メモリ、エネルギー効率に与える影響は何ですか?

主な発見

  • Range BNは標準のバッチ正規化を近似でき、ImageNet(例:ResNet-50)および CIFAR-10 の実験で同等の精度をもたらす。
  • 訓練計算のほとんどを8ビットで実行でき、最終的な重み勾配更新と層勾配の16ビットコピーのみが高精度のままで残る。
  • Gradients bifurcation(8ビットの g_l と16ビットの g_W)により、収束を損なうことなく効率的なバックプロパゲーションを実現する。
  • 8ビットの活性化/重みと16ビット勾配コピーを用いた量子化バックプロパゲーションは、対象モデルでImageNetの訓練において精度の低下なしに訓練を達成する。
  • 勾配の量子化下で収束訓練には確率的丸めが不可欠である。
  • Range BNと8ビット訓練は、フル精度訓練と比べてハードウェア効率(より速いMAC、低エネルギー)に大きな利点をもたらす。

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

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

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

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