[論文レビュー] EasyQuant: Post-training Quantization via Scale Optimization
EasyQuant (EQ) は、ウェイトと活性化の層ごとのスケールを交互に最適化することで、ポストトレーニング量子化を実行し、7ビット量子化でほぼINT8精度を達成し、TRTより遅延を改善したARM上でINT7推論を提供します。
The 8 bits quantization has been widely applied to accelerate network inference in various deep learning applications. There are two kinds of quantization methods, training-based quantization and post-training quantization. Training-based approach suffers from a cumbersome training process, while post-training quantization may lead to unacceptable accuracy drop. In this paper, we present an efficient and simple post-training method via scale optimization, named EasyQuant (EQ),that could obtain comparable accuracy with the training-based method.Specifically, we first alternately optimize scales of weights and activations for all layers target at convolutional outputs to further obtain the high quantization precision. Then, we lower down bit width to INT7 both for weights and activations, and adopt INT16 intermediate storage and integer Winograd convolution implementation to accelerate inference.Experimental results on various computer vision tasks show that EQ outperforms the TensorRT method and can achieve near INT8 accuracy in 7 bits width post-training.
研究の動機と目的
- 限られた環境で再学習よりポストトレーニング量子化が有利である理由を動機付ける。
- FP32と量子化された畳み込み出力の類似性を最大化する、シンプルで効率的なスケール最適化手法を提案する。
- 重みと活性化のスケールの交互最適化が、トレーニングベースの量子化と同等の精度をもたらすことを示す。
- ARM プラットフォーム上でのハードウェア遅延を改善するため、INT16 中間表現と整数 Winograd を用いた INT7 ポストトレーニング推論を実証する。
- 画像分類、物体検出、および顔認識タスクで手法を検証する。
提案手法
- 活性化の層ごとのスケールを S^a、重みの層ごとのスケールを S^w として、モデル量子化を Q(X,S)=Clip(Round(X·S)) と定式化する。
- 各層ごとに、S^a を固定した状態で S^w を最適化し、次に S^w を固定した状態で S^a を最適化して、キャリブレーションセット上で FP32 出力 O_l と量子化出力 Ō_l のコサイン類似度を最大化する。
- ネットワーク全体にわたって、逐次的で貪欲な層ごとの最適化を適用し、収束または時間制限まで反復する。
- 初期化は重量と活性化の最大値を用い、各層あたり [0.5·S_l, 2·S_l] 内の候補スケールを100候補で線形探索する。
- チャンネルごとの量子化では、個別のスケールをフィルタごとに並行調整できる。
- INT7 ポストトレーニング推論は ARM 上で INT16 中間表現と Winograd ベースの畳み込みを用いて、INT8 ワークフローと比較して速度向上とストレージ削減を実現。
実験結果
リサーチクエスチョン
- RQ1重みと活性化の層ごとのスケールを最適化することで、ポストトレーニング量子化はトレーニングベースの量子化に近い精度を達成できるか。
- RQ2層ごとの活性化と重みのスケールの交互最適化は、FP32 と量子化出力のコサイン類似度をタスク全体で精度を維持できる程度に改善するか。
- RQ3INT16 中間表現と整数 Winograd を用いた ARM デバイスで、実用的な遅延改善を伴う INT7 ポストトレーニング推論は実現可能か。
- RQ4TensorRT および QAT のベースラインと比較して、EasyQuant は画像分類、物体検出、顔認識のベンチマークでどう評価されるか。
- RQ5視覚タスクにおける7ビット量子化の制約は何であり、EQ はそれをどう緩和するか。
主な発見
- EQ は複数のモデルとタスクで、INT8 のチャンネルごと量子化において TensorRT (TRT) より競争力のある、またはそれを上回る精度を達成する。
- EQ はいくつかのアーキテクチャとタスクで 7-bit 量子化(INT7)で near-INT8 精度を達成し、INT7 系列で TRT より堅牢。
- INT7 推論は INT16 中間表現と整数 Winograd を用いた ARM プラットフォーム上で、INT8 ベースラインより低遅延。
- ImageNet 分類、VOC2007 物体検出、標準的な顔認識ベンチマークで、EQ は一貫して TRT を INT8/INT7 設定で上回る。
- CASEs は MobileNetV1 と ResNet50 の INT8 量子化で、EQ が QAT の結果と同程度かそれを上回ることを示す。
- INT7 展開は、SMLAL/SADALP ベースの計算の高速化とメモリトラフィックの削減の恩恵を受ける。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。