Skip to main content
QUICK REVIEW

[論文レビュー] Quantization and Training of Neural Networks for Efficient Integer-Arithmetic-Only Inference

Benoît Jacob, Skirmantas Kligys|arXiv (Cornell University)|Dec 15, 2017
Advanced Neural Network Applications被引用数 27
ひとこと要約

本論文は、浮動小数点数の重みと活性化を8ビット整数に量子化することで、整数のみの推論を実現する量子化スキームを提案する。同時に、シミュレートされた量子化を用いた共同訓練手順を考案し、モデルの精度を維持する。このアプローチにより、実際のハードウェア上でのMobileNetsにおいて、最大2倍のレイテンシ削減が達成され、精度の低下は約2%にとどまる。これは、モバイルCPU上でのレイテンシ-精度トレードオフを顕著に改善する。

ABSTRACT

The rising popularity of intelligent mobile devices and the daunting computational cost of deep learning-based models call for efficient and accurate on-device inference schemes. We propose a quantization scheme that allows inference to be carried out using integer-only arithmetic, which can be implemented more efficiently than floating point inference on commonly available integer-only hardware. We also co-design a training procedure to preserve end-to-end model accuracy post quantization. As a result, the proposed quantization scheme improves the tradeoff between accuracy and on-device latency. The improvements are significant even on MobileNets, a model family known for run-time efficiency, and are demonstrated in ImageNet classification and COCO detection on popular CPUs.

研究の動機と目的

  • 限られた計算リソースを有するモバイルおよびエッジデバイスにおける効率的なオンデバイス推論の増大するニーズに対応すること。
  • 従来の量子化手法が実ハードウェア評価を欠く、または一般的なCPU上で整数のみの算術演算を最適化しないという限界を克服すること。
  • 高い精度を維持しながら、標準的なモバイルハードウェア上で高速な整数のみの推論を可能にする量子化スキームと訓練手順を共同で設計すること。
  • Qualcomm Snapdragon 835などの実世界のCPU上で、MobileNetsのような効率的なモデルにおけるレイテンシ-精度トレードオフの顕著な改善を実証すること。

提案手法

  • 推論中に純粋な整数演算を可能にするために、ネットワークの重みと活性化を8ビット整数に量子化し、バイアスは32ビット整数として保存する。
  • 訓練中にシミュレートされた量子化フレームワークを採用し、量子化演算を微分可能かつ計算グラフ内に埋め込むことで、整数演算の影響を模倣する。
  • 学習可能なスケールおよびゼロポイントパラメータを有する対称的量子化スキームを採用し、浮動小数点テンソルを整数範囲にマッピングすることで、表現誤差を最小限に抑える。
  • ARM NEONインストラクションを活用した効率的な推論カーネルを実装し、一般的なモバイルCPU上で整数のみの畳み込みおよび活性化演算を高速化する。
  • 精度損失を回復するために、シミュレートされた量子化を用いた訓練後量子化とファインチューニングを適用する。
  • 実ハードウェア(Qualcomm Snapdragon 835)を用いて、ImageNet分類およびCOCOオブジェクト検出のタスクで評価し、レイテンシおよび精度の向上を検証する。

実験結果

リサーチクエスチョン

  • RQ1標準的なモバイルCPU上で、モデル精度を損なわずに8ビット整数のみの推論を効率的に実装できるか?
  • RQ2共同設計された量子化に敏感な訓練が、特にMobileNetsのような効率的なアーキテクチャにおいて、量子化後のモデル精度にどのように影響を与えるか?
  • RQ3整数のみの量子化されたMobileNetsと浮動小数点ベースラインとの間で、実ハードウェア上のレイテンシ-精度トレードオフはどのように異なるか?
  • RQ4量子化スキームにおける重みおよび活性化のビット深度の変動に、モデル性能はどれほど感受的か?

主な発見

  • 提案された整数のみの量子化により、Qualcomm Snapdragon 835のLITTLEコアおよびビッグコアで、推論レイテンシが最大2倍まで短縮され、COCO検出タスクにおける平均精度は約2%の低下にとどまる。
  • 顔検出タスクでは、1つのビッグコア上で8ビット量子化モデルが36fpsで実行され、リアルタイム性能を達成した。一方、浮動小数点バージョンは23fpsにとどまる。
  • 4コアでのマルチスレーディングにより、量子化モデルでは1.5倍から2.2倍の高速化が得られ、特にオーバーヘッドの相対的割合が低い大規模モデルでより顕著な向上が観察された。
  • アブレーションスタディの結果、8ビットおよび7ビット量子化モデルは浮動小数点ベースラインとほぼ同等の性能を示したが、4ビット量子化では顕著な精度低下(例:顔属性タスクで平均精度が-14%)が生じた。
  • 合計ビット深度が同一の場合、重みと活性化のビット深度をバランスさせる(例:8ビット/8ビット)ことで、非対称な設定(例:4ビット/8ビット)よりも優れた性能が得られた。
  • 本手法により、低価格帯モバイルデバイス上でも、MobileNetのような軽量モデルでリアルタイム推論が可能となり、整数のみの推論がエッジAIの主要な促進要因であることを実証した。

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

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

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

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