[논문 리뷰] PoWER-BERT: Accelerating BERT Inference via Progressive Word-vector Elimination
PoWER-BERT는 self-attention으로 안내된 중복 단어 벡터(중간 인코더 출력)를 점진적으로 제거하여 BERT 추론 시간을 단축시키고 GLUE 과제에서 <1% 정확도 손실로 최대 4.5x 속도향상을 달성하며, ALBERT에서 비슷한 정확도 손실로 최대 6.8x를 달성합니다.
We develop a novel method, called PoWER-BERT, for improving the inference time of the popular BERT model, while maintaining the accuracy. It works by: a) exploiting redundancy pertaining to word-vectors (intermediate encoder outputs) and eliminating the redundant vectors. b) determining which word-vectors to eliminate by developing a strategy for measuring their significance, based on the self-attention mechanism. c) learning how many word-vectors to eliminate by augmenting the BERT model and the loss function. Experiments on the standard GLUE benchmark shows that PoWER-BERT achieves up to 4.5x reduction in inference time over BERT with <1% loss in accuracy. We show that PoWER-BERT offers significantly better trade-off between accuracy and inference time compared to prior methods. We demonstrate that our method attains up to 6.8x reduction in inference time with <1% loss in accuracy when applied over ALBERT, a highly compressed version of BERT. The code for PoWER-BERT is publicly available at https://github.com/IBM/PoWER-BERT.
연구 동기 및 목표
- BERT 추론 시간을 재학습이나 모델 크기 변경 없이 줄이고자 하는 동기를 제시한다.
- diffusion이 만들어내는 중복 유형: 단어 벡터(중간 인코더 출력) 식별.
- 인코더 간에 단어 벡터를 선택하고 유지하는 동적이며 주의 기반 방법을 개발한다.
- 정확도 손실을 유지하면서 인코더당 유지할 단어 벡터의 수를 지정하는 보존 구성을 학습한다.
제안 방법
- BERT의 self-attention에서 정보의 확산을 활용하여 인코더 간에 점진적인 단어 벡터 제거를 정당화한다.
- 각 인코더에서 얼마나 많은 단어 벡터를 유지할지 지정하는 보존 구성(ell_1,...,ell_{12})를 정의한다.
- 주의를 사용하여 단어 벡터의 중요도 점수를 계산한다: Sig_h(w)=sum_w' A_h[w',w], Sig(w)=sum_h Sig_h(w).
- 정렬된 중요도 위치에 따라 단어 벡터를 부드럽게 스케일링하기 위해 보존 매개변수 r_j[k]를 학습하는 소프트 익스트랙트 레이어를 도입한다([0,1] 구간).
- 세 단계로 학습한다: (1) BERT를 미세조정; (2) 소프트 익스트랙트 레이어와 람다 정규화 손실을 이용한 구성 탐색으로 질량과 보존을 도출; (3) 하드 익스트랙으로 교체하고 재훈련.
- 손실 함수: L(Θ,r) + λ * sum_j j * mass(j;r), 여기서 mass(j;r)=sum_k r_j[k], 보존 구성이 단조롭게 되도록 얻는다.
실험 결과
연구 질문
- RQ1단어 벡터를 전체 인코더가 아니라도 안전하게 제거하여 추론 속도를 높이고 정확도 손실을 피할 수 있는가?
- RQ2주의에서 추출된 중요도가 삭제가 예측에 미치는 영향을 최소화하는 단어 벡터를 정확히 식별하는가?
- RQ3학습된 보존 구성은 입력에 따라 각 인코더에서 얼마나 많은 단어 벡터를 유지할지 적응적으로 결정할 수 있는가?
- RQ4PoWER-BERT는 정확도-추론 시간 트레이드오프 측면에서 인코더 프루닝 기법 및 압축 모델(ALBERT 등)과 어떻게 비교되는가?
주요 결과
- PoWER-BERT는 GLUE 과제에서 BERT BASE 대비 최대 4.5x 더 빠른 추론을 달성하고 <1% 정확도 손실을 보인다.
- ALBERT에서 PoWER-BERT는 GLUE 과제에서 최대 6.8x 속도 향상을 제공하고 <1% 정확도 손실을 보인다.
- 동적이고 주의 기반의 단어 벡터 선택(Attn-WS)은 정적 전략(Head-WS, Rand-WS)보다 우수하며 특히 입력이 길 때 더욱 두드러진다.
- 학습된 보존 구성은 인코더 간에 단어 벡터를 점진적으로 제거하되 CLS 기반 의사결정 경로(CLS는 제거되지 않음)를 보존한다.
- DistilBERT, BERT-PKD, Head-Prune과 비교했을 때 PoWER-BERT가 다수의 GLUE 데이터셋에서 정확도와 추론 시간의 파레토 최적에 있어 우수한 성능을 보인다.
- 코드가 공개되어 재현성과 프로덕션 파이프라인 통합이 가능하다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.