Skip to main content
QUICK REVIEW

[論文レビュー] On-FPGA Training with Ultra Memory Reduction: A Low-Precision Tensor Method

Kaiqi Zhang, Cole Hawkins|arXiv (Cornell University)|Apr 7, 2021
Tensor decomposition and applications参考文献 23被引用数 10
ひとこと要約

本論文は、テンソル・トレイン分解とベイジアンランク適応、低精度計算を組み合わせることで、FPGA上でのトレーニングにまで対応する低精度・ランク適応型テンソル化ニューラルネットワークトレーニングフレームワークを提案する。これにより、最大292倍のメモリ削減が達成され、Xilinx MPSoC上で組み込みCPUと比較して59倍の高速化と123倍のエネルギー効率向上を実現。精度損失は最小限に抑えられ、エッジデバイスにおけるエンドツーエンドのオンデバイストレーニングを実現する。

ABSTRACT

Various hardware accelerators have been developed for energy-efficient and real-time inference of neural networks on edge devices. However, most training is done on high-performance GPUs or servers, and the huge memory and computing costs prevent training neural networks on edge devices. This paper proposes a novel tensor-based training framework, which offers orders-of-magnitude memory reduction in the training process. We propose a novel rank-adaptive tensorized neural network model, and design a hardware-friendly low-precision algorithm to train this model. We present an FPGA accelerator to demonstrate the benefits of this training method on edge devices. Our preliminary FPGA implementation achieves $59 imes$ speedup and $123 imes$ energy reduction compared to embedded CPU, and $292 imes$ memory reduction over a standard full-size training.

研究の動機と目的

  • リソース制限のあるエッジデバイス(例:FPGA)において、オンデバイスでエネルギー効率よくリアルタイムにニューラルネットワークをトレーニングすることを可能にすること。
  • オンデバイストレーニングにおける高いメモリおよび計算コストの課題に対処し、メモリを桁違いに削減すること。
  • 繰り返しのランクチューニングや複数回のトレーニングランを回避する、ハードウェアにやさしいワンショットトレーニング手法を開発すること。
  • すべてのモデルパラメータをオンチップに保持するFPGA上でのエンドツーエンドトレーニングを実証し、プライバシー保護型で低遅延な学習を可能にすること。
  • 競争力のあるモデル精度を維持しつつ、スピードとエネルギー消費効率を大幅に向上させること。

提案手法

  • 本手法は、テンソル・トレイン行列(TTM)分解を用いて、低ランクテンソルの系列によるニューラルネットワーク重みのコンact表現を実現し、パラメータ数を著しく削減する。
  • トレーニング中に最適なテンソルランクを自動的に特定するベイジアン事前分布を用いたランク適応型トレーニングモデルを導入し、手動でのランク選定の必要性を排除する。
  • 低精度最適化(固定小数点演算)を統合することで、トレーニング中のメモリおよび計算コストをさらに削減する。
  • 3つの処理要素(PE)を備えたカスタムFPGAアクセラレータを設計:PE1は最初および最後の次元に沿った並列テンソル結合を実行し、PE2は中間的結合処理を担当し、PE3は16方向の並列性を有して外積を計算する。
  • ハードウェア設計では128個のMACユニットを並列に使用し、テンソル次元を16の倍数に揃えることでメモリアクセスを最適化し、データ再利用を効率化する。
  • トレーニングパイプラインはHLSで実装され、Xilinx MPSoCをターゲットとしており、すべてのモデルパラメータをオンチップに保持し、FPGA上でのエンドツーエンドトレーニングを実現する。

実験結果

リサーチクエスチョン

  • RQ1ランク適応型圧縮を施したテンソル化ニューラルネットワークは、最小限のメモリフットプリントと高い効率を実現し、FPGA上でのトレーニングを可能にするか?
  • RQ2標準的なフル精度トレーニングと比較して、低精度テンソル化トレーニングはどの程度のメモリ削減を達成できるか?
  • RQ3オンデバイス学習におけるFPGAベースのトレーニングと組み込みCPUトレーニングの比較において、どの程度のスピードアップとエネルギー効率向上が得られるか?
  • RQ4提案されたベイジアンランク適応手法は、手動でのハイパーパramータチューニングや複数回のトレーニングイテレーションを必要とせずに、高いモデル精度を達成できるか?
  • RQ5精度の著しい低下を伴わずに、低精度計算をテンソル化トレーニングにどの程度統合できるか?

主な発見

  • 提案手法は、標準的なフル精度トレーニングと比較して292倍のメモリ削減を達成し、FashionMNISTではテスト精度がわずか4.5%低下するにとどまる。
  • FPGA実装は、1.2GHz ARMプロセッサ搭載のRaspberry Pi 3Bでトレーニングする場合と比較して、59倍の高速化と123倍のエネルギー削減を達成する。
  • モデルパラメータはすべてオンチップに保持されており、外部メモリへの重み保存なしにエンドツーエンドのオンデバイストレーニングが可能である。
  • ランク適応型ベイジアン事前分布により、組み合わせ的ランク探索やハイパーパramータチューニングを必要とせず、ワンショットでモデル圧縮が自動で実行される。
  • ハードウェア設計では、LUTの79.55%、FFの21.37%、DSPの77.22%、BRAMの17.82%を活用しており、リソースの効率的利用が実証された。
  • 実際の実装では294倍のメモリ削減が達成され、要約の292倍をわずかに上回り、堅牢なメモリ効率が確認された。

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

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

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

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