CS

[논문 리뷰] BitNet: Scaling 1-bit Transformers forLarge Language Models(2023)

yoooon1009 2025. 5. 22. 12:19

Background

소속: Microsoft Research, University of Chinese Academy of Sciences

게재:

Abstract & 1 Introduction

✔️ 기존 양자화 방법들

 

학습 후 양자화 적용

- 훈련 파이프라인 수정과 모델 재훈련 불필요 => 간단하고 적용이 쉬움

- 학습 모델이 양자화가 적용된 표현에 최적화되지 않아 성능이 저하됨

 

양자화 인식 훈련(quantization-aware training)

- 학습 후 양자화 적용보다는 높은 정확도, 지속적인 학습이나 fine-tuning 가능

- 모델의 최적화가 어렵고 scaling law of neural language models를 따르는지 알 수 없음

 

📌 BitNet

  • LLM을 위한 1-bit Transformer architecture 연구
  • BitLinear: 1비트 가중치를 처음부터 훈련하기 위해 nn.Linear 계층을 drop-in 방식으로 대체

2 BitNet

✔️ Overview

  • 기존의 Transformer와 비교해서 BitNet은 이진화된 가중치로 이뤄진 BitLinear를 사용. 
  • 잔차 연결, QKV, 임베딩 등은 성능 유지 목적에서 다른 구성 요소의 경우 8비트 가중치를 사용해 고정밀도 유지
  • 계산 효율성을 극대화하면서도 성능 저하를 최소화한 설계 전략

2.1 BitLinear

✔️ 가중치 양자화

가중치 값이 해당 가중치 매트릭 $W \in \mathcal{R}^{n \times m}$의 평균값 보다 크면 +1, 작거나 같으면 -1로 변환

$$ \widetilde{W} = \text{Sign}(W - \alpha) $$

$$ \text{Sign}(W_{ij}) = \begin{cases} +1, & \text{if } W_{ij} > 0, \\ -1, & \text{if } W_{ij} \leq 0, \end{cases} $$

$$ \alpha = \frac{1}{nm} \sum_{ij} W_{ij} $$

✔️ activation function 양자화

 

$Q_b = 2^b - 1$: $b$ 비트 정수 표현에서 가질 수 잇는 최대 양의 정수 값

 

1. $x$를 $[ -Q_b, Q_b]$ 범위로 정규화

$$ \widetilde{x} = \text{Quant}(x) = \text{Clip}(x \times \frac{Q_b}{\gamma}, -Q_b + \epsilon, Q_b - \epsilon) $$

$$ \text{Clip}(x, a, b) = \text{max}(a, \text{min}(b, x)), \gamma = ||x||_\infty$$

 

2. activation 적용 전 $x$를 $[0, Q_b]$ 범위로 이동

$$ \widetilde{x} = \text{Quant}(x) = \text{Clip}((x - \eta) \times \frac{Q_b}{\gamma}, \epsilon, Q_b - \epsilon), \eta = \min_{ij} x_{ij}$$

 

✔️ BitLinear

activation quantization 전에 LayerNorm을 적용하고, 양자화 후에 스케일링 계수 $\beta$를 사용하여 실수값과 이진화된 가중치 사이의 $l2$ 오차를 줄임

$$ y = \widetilde{W}\widetilde{x} = \widetilde{W} \text{Quant}(\text{LN}(x)) \times \frac{\beta\gamma}{Q_b} $$
$$ \text{LN}(x) = \frac{x - E(x)}{\sqrt{\text{Var}(x) + \epsilon}}, \quad \beta = \frac{1}{nm}||W||_1 $$

2.3 Computational Efficiency

  • 모든 모델 크기(6.7B, 13B, 30B)와 공정(7nm, 45nm)에서, BitNet (WBits=1)이 Transformer (WBits=32 또는 16)보다 훨씬 적은 에너지를 소모하는 것을 볼 수 있습니다.
  • 일반적으로 곱셈(MUL) 연산이 덧셈(ADD) 연산보다 더 많은 에너지를 소모합니다.

3 Comparison with FP16 Transformers

3.2 Inference-Optimal Scaling Law

  • BitNet은 손실 스케일링이 전력 법칙을 따르는 FP16 트랜스포머와 유사하다
  • BitNet 모델의 실제 성능(손실)을 매우 정확하게 예측할 수 있음
  • 모델 크기가 커짐에 따라 BitNet과 FP16 트랜스포머 사이의 격차가 작아짐
  • 7nm 공정 노드에서 추론 에너지 비용에 대한 스케일링 곡선을 통해 BitNet의 확장 효율이 훨씬 더 높다는 것을 증명함
  • 고정된 계산 예산이 주어졌을 때 BitNet은 훨씬 더 나은 손실을 달성하면서, FP16 모델과 동일한 성능을 얻기 위한 추론 비용은 훨씬 더 작음

3.3 Results on Downstream Tasks

  • 해석 가능한 지표를 활용하여, 네 가지 다운스트림 태스크(Hellaswag, Winogrande, Winograd, Storycloze)에서 Zero-shot 및 Few-shot 성능을 테스트
  • 연산 예산(Computation Budget) 증가에 따라 다운스트림 태스크 성능도 향상됩니다 (손실 스케일링과 유사).
  • BitNet의 능력 스케일링 효율은 FP16 Transformer 기준선보다 훨씬 높습니다. ( Zero-shot 및 Few-shot 성능 모두에서 확인)

3.4 Stability Test

  • 그림 5a는 안정성 테스트의 결과를 보여줍니다. 이 그림은 BitNet이 큰 학습 속도로 수렴할 수 있는 반면 FP16 트랜스포머는 수렴할 수 없음을 보여줌으로써 BitNet의 훈련 안정성이 더 우수하다는 것을 보여줍니다.
  • 그림 5b는 학습률 증가로 인해 BitNet이 PPL 측면에서 더 나은 수렴을 달성할 수 있음을 보여줍니다.

4 Comparison with Post-training Quantization

4.2 Results

  • 낮은 비트 수준에서 기준 접근 방식에 비해 경쟁력 있는 성능 수준을 달성하는 데 있어 BitNet이 효과적
  • 8비트 모델 비교해서 성능이 비슷하지만 추론 비용은 훨씬 낮습니다
  • 4비트 모델과 비교해서 PTQ 방법이 더 뛰어나다.(GPTQ vs. BitNet)
  • 1트 모델과 비교햇을 떄는 PTQ 방식보다 BitNet이 더 성능이 좋다
  • 더 낮은 비트 모델의 경우, BitNet은 모든 기준선보다 일관되게 우수한 점수를 받았습니다. 이는 훈련 후 양자화 방식에 비해 양자화 인식 훈련 접근법의 장점이 입증된 것

 

  • 모델 크기를 13억 개에서 67억 개로 확장했을 때 우리 방법과 기준선의 제로 샷 정확도와 소수 샷 정확도를 모두 요약한 것입니다. 이는 다양한 규모에서 이점이 일관되게 유지된다는 것을 증명합니다.

6 Conclusion and Future Work

We present BitNet, a novel 1-bit Transformer architecture for large language models. 

 

The experimental results demonstrate that BitNet achieves competitive performance in terms of both perplexity and downstream task performance, while significantly reducing memory footprint and energy consumption compared to the baselines.

 

스케일링 법칙도 따름. 꽤 정확함. 모델을 효과적으로 확장할 수 있음

 

반응형