Skip to main content
QUICK REVIEW

[논문 리뷰] Hardware Acceleration of Fully Quantized BERT for Efficient Natural Language Processing

Zejian Liu, Gang Li|arXiv (Cornell University)|2021. 03. 04.
Topic Modeling참고 문헌 9인용 수 5
한 줄 요약

이 논문은 엣지 디바이스에서 효율적인 추론을 위한 완전 양자화 BERT(FQ-BERT) 모델과 맞춤형 FPGA 가속기 아키텍처를 제안한다. 가중치, 활성화, 스케일링 요소, 소프트맥스, 레이어 정규화를 포함한 모든 모델 구성 요소를 4/8비트 정수로 양자화함으로써 FQ-BERT는 정확도 손실을 최소화하면서도 7.94배의 모델 압축을 달성한다. 가속기는 ZCU111 FPGA에서 3.18 fps/W의 에너지 효율성을 제공하여 CPU 및 GPU보다 성능 대비 에너지 소비에서 각각 28.91배와 12.72배 뛰어난 성능을 기록한다.

ABSTRACT

BERT is the most recent Transformer-based model that achieves state-of-the-art performance in various NLP tasks. In this paper, we investigate the hardware acceleration of BERT on FPGA for edge computing. To tackle the issue of huge computational complexity and memory footprint, we propose to fully quantize the BERT (FQ-BERT), including weights, activations, softmax, layer normalization, and all the intermediate results. Experiments demonstrate that the FQ-BERT can achieve 7.94x compression for weights with negligible performance loss. We then propose an accelerator tailored for the FQ-BERT and evaluate on Xilinx ZCU102 and ZCU111 FPGA. It can achieve a performance-per-watt of 3.18 fps/W, which is 28.91x and 12.72x over Intel(R) Core(TM) i7-8700 CPU and NVIDIA K80 GPU, respectively.

연구 동기 및 목표

  • 자원이 제한된 엣지 디바이스(예: FPGA)에서 효율적인 BERT 추론을 가능하게 하기 위해.
  • 모든 매개변수와 중간 결과를 완전히 양자화하여 모델 크기와 계산 복잡도를 감소시키기 위해.
  • 런타임에 8/4비트 및 8/8비트 계산을 지원하는 혼합 정밀도 정수 연산을 수행할 수 있는 하드웨어에 맞는 가속기 아키텍처를 설계하기 위해.
  • CPU 및 GPU 대비 FPGA 플랫폼에서 높은 에너지 효율성과 성능 대비 에너지 소비 비용을 달성하기 위해.
  • 표준 NLP 벤치마크에서 양자화 정밀도, 모델 압축 비율, 정확도 간의 상호 상관 관계를 평가하기 위해.

제안 방법

  • 활성화 통계의 지수이동 평균(EMA)을 기반으로 스케일링 요소를 도출하여 대칭 선형 양자화를 가중치 및 활성화에 적용한다.
  • 고정소수점 표현을 사용하여 편향, 스케일링 요소, 소프트맥스, 레이어 정규화를 통합된 양자화 체계로 통합한다.
  • 런타임에 동적으로 8/4비트 및 8/8비트 곱셈 연산을 지원하기 위해 비트 수준에서 재구성 가능한 승수기 회로를 가속기 내부에 구현한다.
  • 작업 수준 스케줄링을 통한 도트프로덕트 기반 처리 요소(PE) 아키텍처를 설계하여 외부 메모리 전송과 계산을 겹치도록 한다.
  • Xilinx ZCU102 및 ZCU111 MPSoC 플랫폼에서 가속기를 구현하기 위해 고수준 합성(Vivado HLS) 기법을 사용한다.
  • 정확도 유지를 위해 정밀도 손실을 최소화하는 양자화 훈련 파이프라인을 두 단계로 구성: 먼저 정밀도가 전체인 BERT로 사전 훈련한 후, 정확도 손실을 최소화하기 위해 양자화 함수를 적용해 미세조정한다.
Figure 1: Left: the overall BERT architecture; middle: the architecture of multi-head self-attention module; right: the architecture of scaled dot-product attention layer.
Figure 1: Left: the overall BERT architecture; middle: the architecture of multi-head self-attention module; right: the architecture of scaled dot-product attention layer.

실험 결과

연구 질문

  • RQ1모든 BERT 구성 요소(가중치, 활성화, 스케일링 요소, 소프트맥스, 레이어 정규화)를 완전히 양자화할 경우, 정확도 손실을 최소화하면서도 고도의 모델 압축을 달성할 수 있는가?
  • RQ2FQ-BERT용 FPGA 기반 가속기의 성능 대비 에너지 소비 비용은 표준 NLP 워크로드에서 CPU 및 GPU 대비 어떻게 비교되는가?
  • RQ3소프트맥스, 레이어 정규화와 같은 특정 구성 요소를 양자화할 경우 전체 모델 정확도에 어떤 영향을 미치는가?
  • RQ4작업 수준 스케줄링과 부분적 가중치 로딩이 FPGA에서 메모리 액세스와 계산을 효과적으로 겹치는 데 기여하는가?
  • RQ5PE 및 승수기의 수를 증가시킬 경우 가속기의 확장성은 어떻게 나타나는가?

주요 결과

  • FQ-BERT는 SST-2 데이터셋에서 0.81%의 정확도 손실로 7.94배의 모델 압축 비율을 달성했으며, MNLI에서는 3.08%의 정확도 손실을 기록했다.
  • Ablation 연구에서 소프트맥스 및 레이어 정규화를 양자화함으로써 정확도가 91.28%에서 91.86%로 향상되어, 단지 가중치와 활성화 외의 구성 요소까지 양자화하는 데도 잠재적인 이점이 있음을 시사한다.
  • ZCU111 FPGA에 구현된 FPGA 가속기는 3.18 fps/W의 에너지 효율성을 기록했으며, 이는 Intel i7-8700 CPU의 28.91배, NVIDIA K80 GPU의 12.72배 높은 성능 대비 에너지 효율성을 확보했다.
  • ZCU111에서 단일 시퀀스의 지연 시간은 23.79ms이며, 전력 소비는 13.2W로, CPU(145.06ms, 65W) 및 GPU(27.84ms, 143W)에 비해 뚜렷한 성능 향상을 보였다.
  • ZCU111의 BIM 유닛에서 승수기 수를 두 배로 늘리면 지연 시간이 23.79ms에서 12.03ms로 감소하여 강력한 확장성을 입증했다.
  • 16개의 PE와 16개의 승수기를 사용할 경우 ZCU111에서 가속기는 679개의 BRAM18K 및 3287개의 DSP48E 슬라이스를 사용하며, 고처리량 추론에 있어 자원 활용 효율성이 뛰어나다는 것을 보여준다.
Figure 2: The overall architecture of the proposed accelerator for fully quantized BERT.
Figure 2: The overall architecture of the proposed accelerator for fully quantized BERT.

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

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

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

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