Skip to main content
QUICK REVIEW

[논문 리뷰] I-BERT: Integer-only BERT Quantization

Sehoon Kim, Amir Gholami|arXiv (Cornell University)|2021. 01. 05.
Topic Modeling참고 문헌 86인용 수 16
한 줄 요약

I-BERT는 BERT 및 RoBERTa 모델을 위한 새로운 정수 전용 양자화 프레임워크를 제안하며, 부동소수점 연산을 완전히 제거하고 오직 정수 산술만을 사용하여 엔드 투 엔드 추론을 가능하게 한다. GELU, 소프트맥스, 레이어노멀라이제이션과 같은 비선형 레이어에 경량 다항식 근사법을 도입함으로써, I-BERT는 GLUE 벤치마크에서 기존 성능과 유사하거나 略로 향상된 정확도를 달성하고, T4 GPU에서 FP32 추론 대비 최대 4.0×의 속도 향상을 이룬다.

ABSTRACT

Transformer based models, like BERT and RoBERTa, have achieved state-of-the-art results in many Natural Language Processing tasks. However, their memory footprint, inference latency, and power consumption are prohibitive efficient inference at the edge, and even at the data center. While quantization can be a viable solution for this, previous work on quantizing Transformer based models use floating-point arithmetic during inference, which cannot efficiently utilize integer-only logical units such as the recent Turing Tensor Cores, or traditional integer-only ARM processors. In this work, we propose I-BERT, a novel quantization scheme for Transformer based models that quantizes the entire inference with integer-only arithmetic. Based on lightweight integer-only approximation methods for nonlinear operations, e.g., GELU, Softmax, and Layer Normalization, I-BERT performs an end-to-end integer-only BERT inference without any floating point calculation. We evaluate our approach on GLUE downstream tasks using RoBERTa-Base/Large. We show that for both cases, I-BERT achieves similar (and slightly higher) accuracy as compared to the full-precision baseline. Furthermore, our preliminary implementation of I-BERT shows a speedup of 2.4-4.0x for INT8 inference on a T4 GPU system as compared to FP32 inference. The framework has been developed in PyTorch and has been open-sourced.

연구 동기 및 목표

  • BERT와 같은 대규모 NLP 모델의 엣지 및 정수 전용 하드웨어에서의 부동소수점 추론의 비효율성을 해결한다.
  • 정확도 저하 없이 정수 전용 산술에서 비선형 연산(GELU, 소프트맥스, 레이어노멀라이제이션)을 수행하는 데 도전한다.
  • 부동소수점 유닛이 없는 하드웨어, 예를 들어 ARM Cortex-M 및 NVIDIA Turing Tensor Cores와 같은 곳에 BERT 유사 모델의 배포를 가능하게 한다.
  • 모델 정확도를 유지하면서 정수 전용 가속기에서 최대한의 속도와 효율성을 확보하는 양자화 기법을 개발한다.
  • 현대 하드웨어에서 정수 전용 추론이 혼합 정밀도 추론보다 지연 시간과 에너지 효율성 측면에서 뛰어나다는 것을 입증한다.

제안 방법

  • GELU에 대한 정수 전용 계산을 가능하게 하는 두 번째 차수 다항식 근사인 i-GELU를 제안하며, 최대 오차 1.8×10⁻²로 정확한 계산을 달성한다.
  • 최대 오차 1.9×10⁻³을 가진 경량 다항식을 사용하여 정수 전용 소프트맥스 근사를 설계한다.
  • 정수 제곱근 계산을 위한 기존 알고리즘을 활용하여 정수 전용 레이어노멀라이제이션을 구현함으로써 부동소수점 연산을 피한다.
  • 모든 파라미터와 활성화를 INT8로 표현하고, 행렬 곱셈에서는 INT32 누적을 사용하는 전체 양자화 파이프라인에 통합한다.
  • 하이브리드 양자화 전략을 사용: INT8 가중치 및 활성화, INT32 누적, 후속 재양자화를 통한 정수 전용 비선형 연산 유지.
  • 계산 그래프 전반에서 모든 연산이 정수 형식을 유지하도록 보장하며, 부동소수점으로의 캐스팅을 완전히 방지한다.

실험 결과

연구 질문

  • RQ1GELU, 소프트맥스, 레이어노멀라이제이션과 같은 비선형 연산을 정수 산술만으로 정확하게 근사할 수 있는가?
  • RQ2정수 전용 추론을 사용할 경우 BERT 유사 모델의 정확도를 유지하기 위해 허용 가능한 근사 오차 수준은 어느 정도인가?
  • RQ3정수 연산에 최적화된 하드웨어, 예를 들어 T4 GPU 및 ARM 프로세서에서 정수 전용 추론이 상당한 속도 향상을 이룰 수 있는가?
  • RQ4정수 전용 양자화가 전체 정밀도 또는 혼합 정밀도 기준선 대비 정확도 저하를 초래하는가?
  • RQ5제안된 i-GELU 근사법은 정확도 및 효율성 측면에서 다른 정수 전용 GELU 근사법보다 어떻게 비교되는가?

주요 결과

  • I-BERT는 BERT-Large 모델에 대해 INT8 추론 시 FP32 대비 최대 4.0×의 추론 속도 향상을 달성했다. 이는 Tesla T4 GPU에서의 결과이다.
  • 다양한 시퀀스 길이 및 배치 크기에서 평균 지연 시간 속도 향상은 BERT-Base 기준 3.08×, BERT-Large 기준 3.56×이다.
  • I-BERT는 GLUE 평균 점수를 유지하거나 약간 향상시켰다. RoBERTa-Base와 RoBERTa-Large의 경우 각각 전체 정밀도 기준선 대비 0.3점과 0.5점 높은 점수를 기록했다.
  • i-GELU 근사는 네 가지 다운스트림 작업 평균에서 h-GELU 근사보다 평균 0.7점 높은 성능을 보였으며, 전체 정밀도 GELU와 비교해도 정확도 손실이 없었다.
  • 제거 분석 결과, i-GELU는 일부 경우에서 h-GELU나 심지어 전체 정밀도 GELU보다도 더 높은 정확도를 제공함을 확인했으며, 순수한 근사 이상의 잠재적 이점이 있음을 시사한다.
  • 이 프레임워크는 PyTorch로 완전히 오픈소스화되었으며, 정수 전용 하드웨어에서의 배포를 지원함으로써 부동소수점 유닛이 없는 엣지 디바이스에서 효율적인 추론을 가능하게 한다.

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

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

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

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