Skip to main content
QUICK REVIEW

[論文レビュー] Searching for Winograd-aware Quantized Networks

Javier Fernández-Marqués, Paul N. Whatmough|arXiv (Cornell University)|Feb 25, 2020
Advanced Neural Network Applications参考文献 69被引用数 14
ひとこと要約

本稿では、Winograd変換に起因する数値誤差をモデル学習に統合することで、モバイルCPU上で正確なINT8推論を可能にするWinograd対応量子化ネットワークを提案する。トレーニング中に変換行列を学習し、遅延を考慮したナスフレームワーク(wiNAS)を用いることで、CIFAR-10上でim2rowより最大2.66倍高速化され、精度の損失なしに実現される。また、FP32 Winograd実装よりも1.32倍高速な推論を維持する。

ABSTRACT

Lightweight architectural designs of Convolutional Neural Networks (CNNs) together with quantization have paved the way for the deployment of demanding computer vision applications on mobile devices. Parallel to this, alternative formulations to the convolution operation such as FFT, Strassen and Winograd, have been adapted for use in CNNs offering further speedups. Winograd convolutions are the fastest known algorithm for spatially small convolutions, but exploiting their full potential comes with the burden of numerical error, rendering them unusable in quantized contexts. In this work we propose a Winograd-aware formulation of convolution layers which exposes the numerical inaccuracies introduced by the Winograd transformations to the learning of the model parameters, enabling the design of competitive quantized models without impacting model size. We also address the source of the numerical error and propose a relaxation on the form of the transformation matrices, resulting in up to 10% higher classification accuracy on CIFAR-10. Finally, we propose wiNAS, a neural architecture search (NAS) framework that jointly optimizes a given macro-architecture for accuracy and latency leveraging Winograd-aware layers. A Winograd-aware ResNet-18 optimized with wiNAS for CIFAR-10 results in 2.66x speedup compared to im2row, one of the most widely used optimized convolution implementations, with no loss in accuracy.

研究の動機と目的

  • 量子化ネットワークにおけるWinograd畳み込みの数値不安定性を解消し、低精度推論への応用を促進すること。
  • 数値誤差を学習プロセスにさらすことで、INT8量子化モデルにおける高速Winograd畳み込みの利用を可能にすること。
  • モバイルCPU上の精度と遅延を最適化するために、ネットワークアーキテクチャと畳み込みアルゴリズム選択を統合的に最適化すること。
  • 最適なWinograd対応レイヤーを遅延と精度の両面で選択する、wiNASと呼ばれるニューラルアーキテクチャ探索フレームワークを開発すること。
  • 学習可能なWinograd変換が、量子化環境下で標準的な固定変換を上回ることを実証すること。

提案手法

  • Winograd変換の変換行列をネットワークの学習可能なパラメータに統合したWinograd対応畳み込みレイヤーを提案。これにより、Winograd変換がもたらす数値誤差にモデルが適応可能になる。
  • 数値誤差、特に量子化下での誤差を低減するため、標準的なWinograd変換行列形式の緩和を導入。
  • Winograd計算グラフにおける中間出力の増加に起因するバックプロパゲーション時のメモリ使用量の増大を管理するため、勾配チェックポイント技術を採用。
  • モバイルCPU(A73/A53)上で測定した推論時間に基づき、精度と遅延の両方を最適化する、微分可能ナスフレームワークであるwiNASを構築。
  • 探索中に精度と速度のバランスを取るために、遅延重み係数(λ₂)を含む多目的損失関数を採用。
  • 精度の低下を緩和するため、初期層ではより高いビット幅を用いる混合精度量子化を採用。

実験結果

リサーチクエスチョン

  • RQ1トレーニング中に変換行列を学習することで、INT8量子化モデルにおけるWinograd畳み込みを効果的に活用できるか?
  • RQ2Winograd変換行列の形式を緩和することで、量子化ネットワークにおける数値安定性と精度にどのような影響を与えるか?
  • RQ3wiNASというナスフレームワークは、モバイルCPU上で遅延を最小限に抑えつつ高い精度を維持するWinograd対応レイヤーを効果的に選択できるか?
  • RQ4学習済み変換と固定変換を用いた場合の、遅延、精度、数値誤差のトレードオフはどのように変化するか?
  • RQ5Winograd対応レイヤーは、標準的なim2rowおよびFP32 Winograd実装に比べて、INT8推論でどの程度優れているか?

主な発見

  • Winograd対応ResNet-18をINT8に量子化した場合、A73上でim2rowに比べ2.66倍高速化され、高精度モデルと同等の精度を維持した。
  • FP32 Winograd実装よりも最大1.32倍高速な推論を達成した。これにより、実際の応用においてINT8 WinogradがFP32を上回ることを示した。
  • 学習可能なWinograd変換を用いることで、標準的な固定変換よりもCIFAR-10で最大10%高い精度が達成された。
  • 遅延を考慮したwiNASを用いることで、CIFAR-100のA53上で遅延が最大9ms短縮され、INT8精度が1.1%向上した。
  • wiNASで最適化されたWA-Qモデルは、高精度モデルとの精度ギャップを埋め、CIFAR-10とCIFAR-100の両方でそれぞれ0.32%および1.1%高いINT8精度を達成した。
  • A73上でも強力な高速化を維持しており、最適化されたim2row実装に比べ、ResNet-18モデルは1.54倍速くなった。

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

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

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

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