Skip to main content
QUICK REVIEW

[論文レビュー] Multi-Precision Policy Enforced Training (MuPPET): A precision-switching strategy for quantised fixed-point training of CNNs

Aditya Rajagopal, Diederik Adriaan Vink|arXiv (Cornell University)|Jun 16, 2020
Neural Networks and Applications被引用数 8
ひとこと要約

MuPPETは、畳み込みニューラルネットワーク(CNN)の量子化固定小数点学習において、複数の精度レベル(低ビット固定小数点を含む)とランタイムポリシーを用いて動的精度スイッチング戦略を提案する。これにより、正確性を損なわず、学習速度とエネルギー効率を最適化できる。NVIDIA Turing GPUハードウェアを用いたImageNet上では、フル精度学習に比べ最大1.84倍の高速化を達成し、AlexNet、ResNet18、GoogLeNetにおいて最先端の正確性を維持する。

ABSTRACT

Large-scale convolutional neural networks (CNNs) suffer from very long training times, spanning from hours to weeks, limiting the productivity and experimentation of deep learning practitioners. As networks grow in size and complexity, training time can be reduced through low-precision data representations and computations. However, in doing so the final accuracy suffers due to the problem of vanishing gradients. Existing state-of-the-art methods combat this issue by means of a mixed-precision approach utilising two different precision levels, FP32 (32-bit floating-point) and FP16/FP8 (16-/8-bit floating-point), leveraging the hardware support of recent GPU architectures for FP16 operations to obtain performance gains. This work pushes the boundary of quantised training by employing a multilevel optimisation approach that utilises multiple precisions including low-precision fixed-point representations. The novel training strategy, MuPPET, combines the use of multiple number representation regimes together with a precision-switching mechanism that decides at run time the transition point between precision regimes. Overall, the proposed strategy tailors the training process to the hardware-level capabilities of the target hardware architecture and yields improvements in training time and energy efficiency compared to state-of-the-art approaches. Applying MuPPET on the training of AlexNet, ResNet18 and GoogLeNet on ImageNet (ILSVRC12) and targeting an NVIDIA Turing GPU, MuPPET achieves the same accuracy as standard full-precision training with training-time speedup of up to 1.84$ imes$ and an average speedup of 1.58$ imes$ across the networks.

研究の動機と目的

  • 大規模CNNの長時間にわたる学習時間を短縮し、ディープラーニングの生産性と実験の可能性を拡大すること。
  • 量子化学習における勾配消失の原因となる低精度学習による正確性の低下を是正すること。
  • FP16、INT8、INT4などの低精度算術演算を現代のハードウェアでサポートする特性を活用し、最終的なモデル正確性を損なわず学習を高速化すること。
  • ネットワークとデータセットの特性に応じて適応するランタイム精度スイッチングポリシーを開発し、正確性と学習時間のトレードオフを最適化すること。
  • 2精度アプローチにとどまらず、複数の固定小数点および浮動小数点領域にわたる多段階精度最適化を実現すること。

提案手法

  • 学習中に複数の固定小数点および浮動小数点精度レベルを動的に切り替える多精度学習フレームワークを導入する。
  • 勾配の多様性をエポックごとに評価する指標を用いて、精度領域間の最適な遷移ポイントを決定する精度スイッチングポリシーを設計する。
  • 時間制約下でのスイッチポイント選定を支援するため、学習時間を推定するパフォーマンスモデルを活用する。
  • NVIDIA Turing GPUのハードウェアに適合したスケジューリングを用いて、ImageNetおよびCIFAR-100上で標準的なCNN(AlexNet、ResNet18、GoogLeNet)に適用する。
  • 学習中のみに精度を切り替えることで、フル精度推論との互換性を維持する。
  • ポリシーがネットワークアーキテクチャやデータセットに依存しないように設計し、さまざまなモデル-データセットペアへの一般化を可能にする。

実験結果

リサーチクエスチョン

  • RQ1動的精度スイッチング戦略は、正確性を損なわず、量子化CNN学習の高速化とエネルギー効率の向上を実現できるか?
  • RQ2ランタイム精度適応を伴う多精度学習は、固定精度または2精度アプローチと比較して、正確性と高速化の点でどのように異なるか?
  • RQ3提案されたポリシーは、ImageNetやCIFAR-100のような異なるCNNアーキテクチャとデータセットにどの程度一般化可能か?
  • RQ4正確性を維持しつつ、高速化を最大化するための最適な学習段階での低精度から高精度への切り替えタイミングは何か?
  • RQ5このフレームワークは、INT8やFP16などの現代のハードウェアにおける低精度演算のサポートを効果的に活用し、GPUやTPU上で学習を高速化できるか?

主な発見

  • MuPPETは、GoogLeNetにおいて最大1.84倍の学習高速化を達成し、ImageNet上でのAlexNet、ResNet18、GoogLeNet全体で平均1.58倍の高速化を実現した。
  • CIFAR-100では、3429.19秒±46.1秒の学習時間でTop-1正確性65.54%を維持したが、同じ時間予算下で静的スイッチング戦略(3679.15秒±141.1秒、65.44%)を上回った。
  • 8ビット固定小数点でスイッチングなしに学習した場合、AlexNetでは検証正確性が1.4%低下し、CIFAR-100のResNet20では1.3%低下した。これは、精度スイッチングの必要性を示している。
  • MuPPETのポリシーは効果的に一般化可能である:あるデータセット(例:CIFAR-10)で学習したスケジュールを別のデータセット(例:CIFAR-100)に適用すると、顕著な正確性の低下が生じる。これは、メソッドが特定のネットワーク-データセットペアに最適化できることを確認している。
  • MuPPETは、低精度ハードウェアユニットを用いながらも、フル精度の正確性(例:ResNet18でImageNetのTop-1正確性70.8%)を達成しており、NVIDIA Turing GPUのような現代のアクセラレータと互換性があることを証明した。
  • このフレームワークは、既存の低精度学習手法と直交しており、確率的丸めや動的量子化といった技術と組み合わせることで、さらなる性能向上が可能である。

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

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

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

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