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)|2021. 04. 07.
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) 분해를 활용하여 파라미터 수를 극적으로 감소시킨다.
  • 훈련 중 최적의 텐서 랭크를 자동으로 결정할 수 있도록 베이지안 사전 확률를 사용하는 랭크 적응형 훈련 모델을 도입하여 수동적인 랭크 선택이 필요 없어진다.
  • 저정밀도 최적화(고정소수점 산술)를 통합하여 훈련 중 메모리 및 계산 비용을 추가로 감소시킨다.
  • 세 개의 처리 요소(PEs)를 갖는 맞춤형 FPGA 가속기 설계를 수행한다: PE1은 첫 번째 및 마지막 차원을 따라 병렬 텐서 결합을 수행하고, PE2는 중간 단계의 결합을 처리하며, PE3는 16중 병렬성으로 외적을 계산한다.
  • 하드웨어 설계는 128개의 MAC 유닛을 병렬로 사용하며, 텐서 차원을 16의 배수로 정렬하여 데이터 재사용을 효율적으로 최적화한다.
  • 훈련 파이프라인은 HLS로 구현되었으며, Xilinx MPSoC를 대상으로 하여 모든 모델 파라미터를 내장 메모리에 저장하고 FPGA에서 끝에서 끝까지의 훈련을 가능하게 한다.

실험 결과

연구 질문

  • RQ1랭크 적응형 압축을 갖춘 텐서라이즈드 신경망이 최소한의 메모리 사용량과 높은 효율성으로 FPGA 내 훈련을 가능하게 할 수 있는가?
  • RQ2기본 정밀도 훈련 대비 저정밀도 텐서라이즈드 훈련을 사용할 경우 얼마나 많은 메모리 감소를 달성할 수 있는가?
  • RQ3현장 학습을 위한 FPGA 기반 훈련과 임베디드 CPU 훈련 간의 속도 향상과 에너지 효율성 향상은 어느 정도인가?
  • RQ4제안된 베이지안 랭크 적응형 방법은 수동적인 하이퍼파라미터 조정이나 여러 차례의 훈련 반복 없이도 높은 모델 정확도를 달성할 수 있는가?
  • RQ5정확도 저하 없이 저정밀도 계산을 텐서라이즈드 훈련에 어느 정도 통합할 수 있는가?

주요 결과

  • 제안된 방법은 표준 전정밀도 훈련 대비 292배의 메모리 감소를 달성하였으며, FashionMNIST에서 테스트 정확도가 4.5% 감소하는 데 그쳤다.
  • FPGA 구현은 Raspberry Pi 3B의 1.2GHz ARM 프로세서에서의 훈련 대비 59배의 속도 향상과 123배의 에너지 절감을 달성하였다.
  • 모델 파라미터가 모두 내장 메모리에 저장되어 외부 메모리에 가중치를 저장하지 않고도 끝에서 끝까지의 현장 훈련이 가능하다.
  • 랭크 적응형 베이지안 사전 확률는 조합적 랭크 검색이나 하이퍼파라미터 조정 없이도 자동으로 한 번에 모델 압축을 가능하게 한다.
  • 하드웨어 설계는 LUT의 79.55%, FF의 21.37%, DSP의 77.22%, BRAM의 17.82%를 사용하여 자원 활용 효율성이 높음을 보여준다.
  • 실제로는 294배의 메모리 감소를 달성하여 초록에 기재된 292배를 略로 초월함으로써 강력한 메모리 효율성을 확인하였다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.