[논문 리뷰] FTRANS: Energy-Efficient Acceleration of Transformers using FPGA
FTRANS는 향상된 블록 순환 행렬(BCM)-기반 모델 압축과 맞춤형 하드웨어 아키텍처를 사용하여 에너지 효율적인 FPGA 기반 추론 프레임워크를 제안한다. 이는 정확도 손실을 최소화하면서 최대 16배의 모델 크기 감소를 달성하며, CPU 대비 27.07배 높은 처리량과 81배 뛰어난 에너지 효율성을 제공한다. GPU 대비 에너지 효율성은 8.80배 향상된다.
In natural language processing (NLP), the "Transformer" architecture was proposed as the first transduction model replying entirely on self-attention mechanisms without using sequence-aligned recurrent neural networks (RNNs) or convolution, and it achieved significant improvements for sequence to sequence tasks. The introduced intensive computation and storage of these pre-trained language representations has impeded their popularity into computation and memory-constrained devices. The field-programmable gate array (FPGA) is widely used to accelerate deep learning algorithms for its high parallelism and low latency. However, the trained models are still too large to accommodate to an FPGA fabric. In this paper, we propose an efficient acceleration framework, Ftrans, for transformer-based large scale language representations. Our framework includes enhanced block-circulant matrix (BCM)-based weight representation to enable model compression on large-scale language representations at the algorithm level with few accuracy degradation, and an acceleration design at the architecture level. Experimental results show that our proposed framework significantly reduces the model size of NLP models by up to 16 times. Our FPGA design achieves 27.07x and 81x improvement in performance and energy efficiency compared to CPU, and up to 8.80x improvement in energy efficiency compared to GPU.
연구 동기 및 목표
- 에너지 및 메모리 제약이 있는 엣지 디바이스에 대규모이고 계산 집약적인 Transformer 모델을 구현하는 데 도전하는 문제를 해결하기 위해.
- BERT나 RoBERTa와 같은 사전 학습된 NLP 모델의 모델 크기를 정확도가 크게 떨어지지 않도록 감소시키기 위해.
- 압축된 Transformer 모델을 효율적으로 가속화할 수 있는 저전력, 고처리량 FPGA 아키텍처를 설계하기 위해.
- CPU 및 GPU 구현 대비 뛰어난 에너지 효율성과 성능을 달성하기 위해.
제안 방법
- 정확도 저하를 최소화하면서 알고리즘 수준에서 Transformer 모델 가중치를 압축하기 위해 향상된 BCM 기반 가중치 표현 방식을 제안한다.
- FPGA에서 자원 제약을 완화하고 계산 스케줄링을 최적화하기 위해 이중 단계 최적화 접근법을 도입한다.
- 압축된 모델을 지원하기 위해 최적화된 데이터 플로우와 자원 활용을 고려한 맞춤형 FPGA 아키텍처를 설계한다.
- Xilinx SDx 2017.1를 사용한 고수준 합성(HLS)을 활용하여 FPGA 구현을 자동화하고 병렬성을 최적화한다.
- BCM 압축과 함께 양자화를 적용하여 추가로 모델 크기를 줄이고 하드웨어 효율성을 향상시킨다.
- 처리량과 에너지 효율성의 최적 설정을 도출하기 위해 배치 크기 조정과 지연/전력 간 상호 조정 분석을 실시한다.
실험 결과
연구 질문
- RQ1향상된 BCM 기반 압축 기법이 대규모 Transformer 모델의 크기를 정확도 손실을 최소화하면서 효과적으로 감소시킬 수 있는가?
- RQ2압축된 NLP 모델에 대해 고처리량과 저지연을 달성하기 위해 FPGA 기반 가속화를 어떻게 최적화할 수 있는가?
- RQ3FPGA 기반 추론이 CPU 및 GPU 대비 Transformer 모델에서 어떤 에너지 효율성과 성능 향상을 달성하는가?
- RQ4제안된 프레임워크는 저전력 임베디드 디바이스에 대규모 NLP 모델을 구현하는 데 기여할 수 있는가?
주요 결과
- FTRANS는 RoBERTa와 같은 NLP 모델에 대해 최대 16배의 모델 압축을 달성하면서 정확도 저하를 최소화한다.
- IMDB 벤치마크에서 FPGAs의 구현은 CPU 대비 27.07배 높은 처리량과 81배 뛰어난 에너지 효율성을 확보한다.
- GPU(RTX 5000) 대비 FTRANS는 전력 소비를 5.01배 줄이고 에너지 효율성을 8.80배 향상시킨다.
- 임베디드 Jetson TX2에서 FTRANS는 내장 GPU 대비 2.44배 뛰어난 에너지 효율성을 확보한다.
- 지연 대 전력 비율 최적화를 위한 최적의 배치 크기는 8이며, 처리량과 에너지 소비를 균형 있게 조절한다.
- FPGA에서의 자원 활용률은 낮은 편으로, RoBERTa(base)에 대해 단지 6,531개의 DSP와 452,661개의 LUT만 사용되어 소형 FPGA에의 구현을 가능하게 한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.