[論文レビュー] WRPN & Apprentice: Methods for Training and Inference using Low-Precision Numerics
本稿では、精度を落とさずに2ビット重みおよび8ビット活性化を用いた低精度数値による深層ニューラルネットワークの学習および推論を実現するソフトウェアベースの手法として、WRPN、Apprentice、およびWRPN+Apprenticeの3つの手法を提案する。フィルタ幅の拡大、知識蒸留、ハイブリッド最適化を組み合わせることで、低精度設定において最先端の精度を達成し、ベースラインの全精度ネットワークおよび先行する低精度アプローチを上回るモデルを実現した。
Today's high performance deep learning architectures involve large models with numerous parameters. Low precision numerics has emerged as a popular technique to reduce both the compute and memory requirements of these large models. However, lowering precision often leads to accuracy degradation. We describe three schemes whereby one can both train and do efficient inference using low precision numerics without hurting accuracy. Finally, we describe an efficient hardware accelerator that can take advantage of the proposed low precision numerics.
研究の動機と目的
- 低精度DNNにおける学習および推論時における精度の低下を是正すること。
- 特にメモリフットプリントを支配する部分である重みおよび活性化の精度を低くすることで、メモリおよび計算コストを削減すること。
- 特に大バッチ学習およびリアルタイム推論環境において、過酷な量子化に対しても精度を維持または向上させること。
- 2ビット重みおよび8ビット活性化を特に最適化したハードウェアアクセラレータを設計すること。
- アルゴリズム的およびアーキテクチャ的イノベーションを通じて、低精度DNNが全精度精度に達するか、それを上回ることを実証すること。
提案手法
- WRPN(Wide Reduced-Precision Networks)は、層内のフィルタ数を増加させることで、特に最初の3分の1の層において、低精度活性化および重みに起因する精度損失を補償する。
- Apprenticeは知識蒸留を用い、全精度の教師ネットワークが、ログティットおよびソフトマックス出力を一致させることで、低精度の学生ネットワークの学習を支援する。
- WRPN+Apprenticeは、フィルタ幅の拡大と蒸留を組み合わせ、両技術を同時に適用することで、精度ギャップをさらに縮小する。
- 提案されたアクセラレータは、64のプロセッシングエンジンを備えたシスチールアレイであり、2ビット重みおよび8ビット活性化の行列乗算を最適化している。乗算器の代わりにビット並列比較を用いる。
- アクセラレータは32ビット符号付き累積器を用い、浮動小数点ユニットを避けることで、同じプロセスノードにおいて全精度設計と比較して15倍小さい面積、12倍高い電力効率を達成した。
- 本システムは、低精度数値を用いた学習および推論をサポートするように設計されており、精度を維持するためのソフトウェアスキームを活用している。
実験結果
リサーチクエスチョン
- RQ12ビット重みおよび8ビット活性化を用いた低精度DNNは、全精度モデルと同等またはそれ以上の精度を達成できるか?
- RQ2ネットワークのフィルタ幅を広げることで、活性化および重みの量子化に起因する精度損失を是正できるか?
- RQ3全精度教師ネットワークからの知識蒸留により、低精度学生ネットワークの学習中の精度が向上するか?
- RQ4低バッチおよび高バッチ推論環境において、精度低減とモデルサイズの最適なトレードオフは何か?
- RQ5特化したハードウェアアクセラレータは、提案された低精度数値を効率的にサポートできるか? また、高いスループットと低消費電力を実現できるか?
主な発見
- 2ビット重みおよび8ビット活性化を用いたResNet-44では、WRPN+Apprenticeがトップ-1誤差5.8%を達成し、ベースラインの全精度誤差6.5%を上回った。
- 2ビット重みおよび8ビット活性化を用いたResNet-56では、WRPN+Apprenticeがトップ-1誤差5.6%を達成し、ベースラインの全精度誤差6.2%を上回った。
- Apprenticeスキームにより、全精度と低精度モデル間の精度ギャップが縮小され、2ビット重みおよび8ビット活性化を用いたResNet-56では、5.8%の誤差(ベースライン6.2%)を達成した。
- 提案されたアクセラレータは、同じプロセスノードにおいて全精度設計と比較して15倍小さい面積、12倍高い電力効率を達成した。
- 大バッチ学習および推論では、活性化メモリが支配的である。したがって、重み精度の低減よりも活性化精度の低減が、システム全体の恩恵をより大きくもたらす。
- フィルタ幅の拡大と蒸留の組み合わせにより、低精度モデルを初期から学習する場合よりも高い精度に収束でき、一部のケースでは収束速度も速くなった。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。