Skip to main content
QUICK REVIEW

[논문 리뷰] Packing: Towards 2x NLP BERT Acceleration

Matej Kosec, Sheng Fu|arXiv (Cornell University)|2021. 06. 29.
VLSI and FPGA Design Techniques참고 문헌 6인용 수 4
한 줄 요약

이 논문은 BERT 미세조정에서 패ading을 제거하기 위해 결정적 히스토그램 기반 패킹 알고리즘을 제안하며, 여러 시퀀스를 단일 샘플로 통합함으로써 시퀀스/초 단위로 2배의 속도 향상을 달성한다. SPFHP 및 NNLSHP와 같은 방법들은 선형 시간 효율성을 확보하기 위해 시퀀스 길이 히스토그램을 기반으로 작동하며, 모델 성능에 미치는 영향을 최소화하면서도 BERT-Large 미세조정 과정에서 거의 최적의 패킹을 실현한다.

ABSTRACT

We find that at sequence length 512 padding tokens represent in excess of 50% of the Wikipedia dataset used for pretraining BERT (Bidirectional Encoder Representations from Transformers). Therefore by removing all padding we achieve a 2x speed-up in terms of sequences/sec. To exploit this characteristic of the dataset, we develop and contrast two deterministic packing algorithms. Both algorithms rely on the assumption that sequences are interchangeable and therefore packing can be performed on the histogram of sequence lengths, rather than per sample. This transformation of the problem leads to algorithms which are fast and have linear complexity in dataset size. The shortest-pack-first histogram-packing (SPFHP) algorithm determines the packing order for the Wikipedia dataset of over 16M sequences in 0.02 seconds. The non-negative least-squares histogram-packing (NNLSHP) algorithm converges in 28.4 seconds but produces solutions which are more depth efficient, managing to get near optimal packing by combining a maximum of 3 sequences in one sample. Using the dataset with multiple sequences per sample requires additional masking in the attention layer and a modification of the MLM loss function. We demonstrate that both of these changes are straightforward to implement and have relatively little impact on the achievable performance gain on modern hardware. Finally, we pretrain BERT-Large using the packed dataset, demonstrating no loss of convergence and the desired 2x speed-up.

연구 동기 및 목표

  • 시퀀스 길이 512에서 위키피디아 데이터셋에서 BERT 미세조정 과정에서 50% 이상의 과도한 패딩으로 인한 비효율성을 해결한다.
  • 각 샘플 처리를 피하기 위해 시퀀스 길이 히스토그램을 기반으로 작동하는 빠르고 결정적인 패킹 알고리즘을 개발한다.
  • 모델 수렴성과 성능을 유지하면서 거의 최적의 패킹 효율성을 달성한다.
  • 패킹된 시퀀스에 대해 주의 마스크 및 수정된 MLM 손실 함수가 현대 하드웨어에서 경량적이고 효과적임을 입증한다.

제안 방법

  • 패킹 문제를 각 시퀀스 처리에서 히스토그램 기반 최적화로 전환하여 데이터셋 크기 비례 선형 복잡도로 감소시킨다.
  • 더 짧은 시퀀스를 우선순위로 하는 가장 짧은 패킹 우선 히스토그램 패킹(SPFHP) 알고리즘을 설계하여 1600만 개 시퀀스에 대해 0.02초 내로 패킹을 완료한다.
  • 깊이 효율성을 최적화하기 위해 비음수 최소 제곱 히스토그램 패킹(NNLSHP) 알고리즘을 구현하여 최대 세 개의 시퀀스를 한 샘플에 통합할 수 있도록 한다.
  • 패킹된 샘플 내에서 서로 다른 원본 시퀀스의 토큰 간 주의를 방지하기 위해 자기주의 주의층에서 시퀀스별 마스크를 도입한다.
  • 패킹으로 인해 마스크가 적용된 일부 토큰이 무작위 손상이 아닌 원인임을 고려하여 마스크 언어 모델링(MLM) 손실 함수를 수정한다.
  • 패킹된 데이터셋을 사용해 BERT-Large를 미세조정하여 성능 유지 및 2배의 속도 향상이 달성되었음을 검증한다.

실험 결과

연구 질문

  • RQ1결정적 히스토그램 기반 패킹이 모델 수렴성을 훼손하지 않고 50% 이상의 패딩을 제거할 수 있는가?
  • RQ2각 샘플 처리 방법과 비교해 히스토그램 기반 패킹 알고리즘이 실행 시간과 패킹 깊이 측면에서 얼마나 효율적인가?
  • RQ3패킹된 BERT 학습에서 주의 마스크 및 수정된 MLM 손실 함수의 성능에 미치는 영향은 어떠한가?
  • RQ4하향류 작업 성능에 대한 열등성 최소화로 시퀀스/초 단위로 2배의 속도 향상을 달성할 수 있는가?

주요 결과

  • 패킹을 통해 시퀀스 길이 512에서 입력의 패딩 비율을 50% 이하로 감소시켜 BERT 미세조정 과정에서 시퀀스/초 단위로 2배의 속도 향상을 달성한다.
  • SPFHP 알고리즘은 1600만 개 시퀀스로 구성된 위키피디아 데이터셋을 단 0.02초 만에 패킹하여 선형 시간 확장성의 가능성을 입증한다.
  • NNLSHP 알고리즘은 높은 패킹 깊이 효율성을 달성하여 최대 세 개의 시퀀스를 한 샘플에 통합함으로써 거의 최적의 패킹에 수렴한다.
  • 수정된 주의 마스크 및 MLM 손실 함수는 모델 성능에 거의 영향을 주지 않으며, BERT-Large 미세조정 과정에서 수렴성을 유지한다.
  • 패킹된 데이터셋을 사용한 BERT-Large 미세조정은 표준 학습과 동일한 수렴 행동을 보이며, 이 방법의 실용성을 확인한다.
  • 이 방법은 현대 하드웨어에서 실용적이며, 패킹 알고리즘과 추론 수정 사항 모두 간단하고 쉽게 구현할 수 있다.

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

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

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

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