[論文レビュー] ESE: Efficient Speech Recognition Engine with Compressed LSTM on FPGA
本稿では、負荷バランスに配慮したプルーニングおよび量子化を用いてLSTMモデルを圧縮する効率的な音声認識エンジンESEを提案する。モデルサイズを20倍に削減しつつ精度の損失を最小限に抑え、XCKU060 FPGA上にハードウェアに配慮したスケジューラとカスタムFPGAアーキテクチャを実装。41Wで282 GOPSを達成し、CPUに比べ43倍速く、40倍高いエネルギー効率を実現。GPUに比べ3倍の高速化を達成。
Long Short-Term Memory (LSTM) is widely used in speech recognition. In order to achieve higher prediction accuracy, machine learning scientists have built larger and larger models. Such large model is both computation intensive and memory intensive. Deploying such bulky model results in high power consumption and leads to high total cost of ownership (TCO) of a data center. In order to speedup the prediction and make it energy efficient, we first propose a load-balance-aware pruning method that can compress the LSTM model size by 20x (10x from pruning and 2x from quantization) with negligible loss of the prediction accuracy. The pruned model is friendly for parallel processing. Next, we propose scheduler that encodes and partitions the compressed model to each PE for parallelism, and schedule the complicated LSTM data flow. Finally, we design the hardware architecture, named Efficient Speech Recognition Engine (ESE) that works directly on the compressed model. Implemented on Xilinx XCKU060 FPGA running at 200MHz, ESE has a performance of 282 GOPS working directly on the compressed LSTM network, corresponding to 2.52 TOPS on the uncompressed one, and processes a full LSTM for speech recognition with a power dissipation of 41 Watts. Evaluated on the LSTM for speech recognition benchmark, ESE is 43x and 3x faster than Core i7 5930k CPU and Pascal Titan X GPU implementations. It achieves 40x and 11.5x higher energy efficiency compared with the CPU and GPU respectively.
研究の動機と目的
- 音声認識における大規模LSTMモデルの高い計算およびメモリ要件に対処する。
- データセンターにおける総所有コスト(TCO)が高いため、モデルサイズとエネルギー消費を低減する。
- 予測精度を維持したまま、LSTMモデルの圧縮により高スループットかつ低消費電力の推論を実現する。
- 圧縮されたモデルを効率的に処理できる専用ハードウェアアーキテクチャを設計する。
- CPUおよびGPU実装と比較して、優れた性能とエネルギー効率を達成する。
提案手法
- モデル精度を維持したままLSTMモデルサイズを10倍に削減する負荷バランスに配慮したプルーニング手法を提案する。
- さらに量子化を適用して2倍の圧縮を実現し、合計で20倍のモデルサイズ削減を達成する。
- 処理素子(PE)に圧縮モデルを分割して並列実行するためのスケジューラを設計する。
- LSTM計算における複雑な順序依存性を管理するため、データフローに配慮したスケジューリングアルゴリズムを開発する。
- Xilinx XCKU060 FPGA上に、圧縮されたLSTMモデルに最適化されたカスタムハードウェアアーキテクチャESEを実装する。
- スケジューラとハードウェアパイプラインを統合し、圧縮モデル上で効率的かつリアルタイムの推論を可能にする。
実験結果
リサーチクエスチョン
- RQ1負荷バランスに配慮したプルーニングと量子化により、LSTMモデルサイズを20倍に削減しつつ、精度損失を無視できるほどに抑えることができるか?
- RQ2カスタムスケジューラは、FPGA上での圧縮LSTMモデルにおける並列性をどれほど効果的に活用できるか?
- RQ3CPUおよびGPUと比較して、FPGA上に圧縮LSTMモデルをデプロイすることで、どの程度の性能およびエネルギー効率の向上が達成できるか?
- RQ4提案されたハードウェアアーキテクチャは、高スループットを維持しながら低消費電力で動作を継続できるか?
- RQ5モデル圧縮は、リソース制限のあるハードウェアプラットフォーム上で効率的な推論をどの程度可能にするか?
主な発見
- ESEシステムは、XCKU060 FPGA上で200MHzで動作する圧縮LSTMモデルに対して282 GOPSの性能を達成した。
- ESEの有効スループットは、元の圧縮されていないモデルでは2.52 TOPSに相当する。
- ESEは、音声認識用の完全なLSTMをわずか41Wの消費電力で処理した。
- Core i7 5930k CPUに比べ、ESEの推論速度は43倍速い。
- Pascal Titan X GPUに比べ、ESEの処理時間は3倍速い。
- ESEはCPUに比べ40倍高いエネルギー効率を達成し、GPUに比べ11.5倍高いエネルギー効率を達成した。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。