한줄 요약: 가중치의 1%만 보호하면 전체 품질이 유지되며, 그 1%는 활성화 크기로 식별 가능하다 — 이 단순한 통찰로 GPTQ보다 빠르고 좋은 4비트 양자화를 달성.
| 항목 | 내용 |
|---|---|
| 저자 | Ji Lin, Jiaming Tang, Haotian Tang, Shang Yang, Wei-Ming Chen, Wei-Chen Wang, Guangxuan Xiao, Ligeng Zhu, Chuang Gan, Song Han |
| 소속 | MIT, NVIDIA |
| 발표 | MLSys 2024 (Best Paper Award) |
| 링크 | arxiv.org/abs/2306.00978 |
| 키워드 | Quantization, Weight-only, Activation-aware, On-device |
LLM을 엣지 디바이스에 배포하려면 공격적인 양자화(4비트 이하)가 필요하다. 기존 GPTQ는 Hessian 기반 보상으로 높은 품질을 달성하지만:
1. 양자화 시간이 길다: 70B 모델에 수 시간
2. 순서 의존적: 캘리브레이션 데이터 순서에 따라 결과 변동
3. 구현이 복잡: 열 단위 순차 처리 + Hessian 역행렬 계산
핵심 질문: 더 단순하면서도 효과적인 양자화 기준이 있는가?
실험: 가중치의 1%를 FP16으로 유지, 나머지를 INT3으로 양자화
전체 INT3: perplexity 크게 증가 ❌
랜덤 1% FP16 + 나머지 INT3: perplexity 여전히 높음 ❌
가중치 크기 top 1% FP16: 약간 개선 △
활성화 크기 top 1% 기준 FP16: perplexity 거의 유지 ✅
→ "중요한 가중치"는 가중치 크기가 아니라 활성화 크기로 결정된다!
y = Wx 에서:
출력 오차 = Σ (w_i - ŵ_i) · x_i
x_i가 크면 → (w_i - ŵ_i)의 양자화 오차가 x_i에 의해 증폭
x_i가 작으면 → 양자화 오차가 있어도 출력에 미미한 영향
→ 활성화(x)가 큰 채널의 가중치를 보호해야 함
문제: 중요 가중치만 FP16 → 하드웨어 비효율 (혼합 정밀도)
해결: 수학적 등가 변환으로 스케일링
y = Wx = (W · diag(s)) · (diag(s)⁻¹ · x) = W' · x'
중요 채널(활성화 큰 채널):
s > 1 → W' 값 증가 → 양자화 구간이 넓어짐 → 상대적 오차 감소
동시에 x' 값 감소 → 활성화 이상치 완화
비중요 채널:
s < 1 → 반대 효과, 하지만 출력 영향 미미
최적 스케일 s*:
s_j ∝ (max|X_j|)^α (α ∈ [0, 1], 그리드 서치)
| 모델 | FP16 | RTN 4-bit | GPTQ 4-bit | AWQ 4-bit |
|---|---|---|---|---|
| LLaMA-7B | 5.68 | 6.24 | 5.85 | 5.78 |
| LLaMA-13B | 5.09 | 5.53 | 5.20 | 5.15 |
| LLaMA-2-70B | 3.32 | 3.75 | 3.41 | 3.38 |
→ 4-bit에서 GPTQ 대비 동등 이상, RTN 대비 확연히 우수
| 모델 | GPTQ 3-bit | AWQ 3-bit |
|---|---|---|
| LLaMA-7B | 8.07 | 7.32 |
| LLaMA-13B | 6.63 | 5.89 |
| LLaMA-2-70B | 4.19 | 3.97 |
→ 3-bit에서 AWQ 우위가 더 뚜렷 — 공격적 양자화일수록 "어떤 채널을 보호할지"가 더 중요
| 모델 크기 | GPTQ | AWQ |
|---|---|---|
| 7B | ~25분 | ~15초 |
| 70B | ~4시간 | ~3분 |
→ ~100배 빠른 양자화 — 보상 업데이트가 없으므로
| 모델 | 디바이스 | FP16 | AWQ 4-bit |
|---|---|---|---|
| LLaMA-2-7B | RTX 4090 | 84 tok/s | 155 tok/s |
| LLaMA-2-7B | Jetson Orin | OOM | 18 tok/s |
AWQ의 가장 인상적인 점은 아이디어의 단순함이다. "가중치의 1%만 보호하면 된다, 그 1%는 활성화가 알려준다" — 이 한 문장이 논문 전체를 요약한다. GPTQ가 Hessian 역행렬이라는 무거운 도구를 사용한 반면, AWQ는 활성화 norm이라는 가벼운 통계만으로 동등 이상의 결과를 달성한다.
흥미로운 연결: Wanda(프루닝)도 "가중치 × 활성화"를 기준으로 프루닝하여 SparseGPT와 동등한 결과를 얻었다. AWQ와 Wanda의 공통 교훈은 "활성화 분포가 모델의 중요 구조를 가리킨다"는 것이며, 이는 양자화/프루닝을 넘어 LLM 이해에도 시사점이 있다.
실전 배포에서 AWQ를 선택하는 가장 큰 이유는 양자화 속도다. 새 모델이 나올 때마다 수 분 내에 양자화 버전을 만들 수 있다는 것은 빠른 실험 사이클에서 큰 이점이다.
관련 논문: GPTQ, SmoothQuant, Wanda, QLoRA