초거대 언어 모델(LLM) 압축 Compressing Large LanguageModels

2026. 1. 30. 00:44LG Aimers

목차

  1. 초거대 언어 모델(LLM)의 현황과 한계
  2. LLM 압축의 3대 기법
  3. PTQ vs QAT: 양자화의 두 가지 접근법
  4. PTQ 기법 상세
  5. QAT 기법 상세: EfficientQAT
  6. PEFT와 LoRA
  7. QLoRA와 QA-LoRA
  8. 결론 및 요약

1. 초거대 언어 모델(LLM)의 현황과 한계

1.1 LLM의 놀라운 성능

최근 언어 모델은 자연어 처리 분야에서 비약적인 발전을 이루었습니다. 주요 응용 분야:

  • 코드 생성 (Code Generation)
  • 텍스트 요약 (Text Summarization)
  • 대화형 챗봇 (Chat)
  • 번역 (Translation)
  • 콘텐츠 생성 (Content Generation)

1.2 LLM의 심각한 부작용

대표적인 대규모 모델: OPT-175B, LLaMA-65B, LLaMA2-70B

주요 부작용:

  • 막대한 저장 공간(메모리, 디스크) 요구
  • 높은 계산 비용
  • 대량의 에너지 소비
  • 스마트폰 등 소형 디바이스에서 실행 불가
예시: GPT-3(175B) 모델은 추론만을 위해서도 1TB 이상의 메모리가 필요합니다.

1.3 LLM 압축의 목표

핵심 목표: 언어 모델을 빠르고, 메모리 효율적이며, 에너지 효율적으로 압축하면서도 정확도를 유지

실용적 제약 조건:

  • 대규모 코퍼스로 학습된 정확한 사전학습 모델을 압축해야 함
  • LLM의 거대한 규모를 고려하여 압축 알고리즘의 비용을 최소화해야 함

2. LLM 압축의 3대 기법

2.1 Pruning (가지치기)

개념과 동기

Pruning은 인간 두뇌의 시냅스 가지치기에서 영감을 받은 기법입니다. 상당한 메모리 사용량과 높은 전력 소비 문제를 해결합니다.

핵심 알고리즘

단계 설명
1. 임계값 기반 제거 |weight| < threshold인 웨이트 제거
2. 재학습(Retrain) 가지치기 후 남은 웨이트로 재학습
3. 반복적 가지치기 위 과정을 반복하여 효과적인 연결만 학습

실험 결과

네트워크 Top-1 Error 파라미터 압축률
LeNet-300-100 Ref 1.64% 267K -
LeNet-300-100 Pruned 1.59% 22K 12×
AlexNet Ref 42.78% 61M -
AlexNet Pruned 42.77% 6.7M
VGG-16 Ref 31.50% 138M -
VGG-16 Pruned 31.34% 10.3M 13×
Pruning 후 오히려 일반화 성능이 향상되는 경우도 있습니다.

2.2 Knowledge Distillation (지식 증류)

Teacher-Student 모델 개념

큰 Teacher 모델의 지식을 작은 Student 모델로 전달하는 기법입니다.

핵심 아이디어:

  • Teacher 모델의 소프트 타겟(확률 분포)을 Student 모델의 학습 레이블로 사용
  • Hard label(0 또는 1)보다 Soft label이 더 많은 정보를 담고 있음

Soft Target 생성 공식

 

T(Temperature)가 클수록 더 부드러운(softer) 분포 생성

MiniLM 벤치마크 결과

모델 파라미터 SQuAD2 MNLI-m SST-2 평균
BERT_BASE (teacher) 109M 76.8 84.5 93.2 81.5
DistilBERT 66M 70.7 82.2 91.3 77.6
TinyBERT 66M 73.1 83.5 91.6 79.1
MiniLM 66M 76.4 84.0 92.0 80.4

2.3 Quantization (양자화)

Uniform Quantization 기본 개념

실수 값을 대응하는 b-bit 정수 값으로 매핑합니다. (일반적으로 b ≤ 8)

RTN 양자화 함수

 
파라미터 공식 설명
Δ (scaling factor) (max r - min r) / (2b - 1) 스케일링 인자
z (zero point) ⌊-(2b-1·max r + (2b-1-1)·min r) / (max r - min r)⌉ 제로 포인트

양자화 대상 비교

방식 설명 특징
Weight-only 모델의 웨이트만 양자화 추론 시 역양자화 필요
Activation 웨이트와 활성화 값 모두 양자화 역양자화 불필요 → 더 빠른 추론

 

- 역양자화 Dequantization


3. PTQ vs QAT: 양자화의 두 가지 접근법

방식 설명 장점 단점
PTQ (Post-Training Quantization) 모델 재학습 없이 양자화 효율적, 빠름 정확도 약간 하락
QAT (Quantization-Aware Training) 모델 재학습 필요 높은 정확도 비효율적, 느림

4. PTQ 기법 상세

4.1 SmoothQuant

논문: "Accurate and Efficient Post-Training Quantization for Large Language Models" (ICML '23)

핵심 문제

활성화 값의 이상치(Outlier)로 인해 양자화 구간이 넓어지고 양자화 오차가 증가합니다.

핵심 아이디어

양자화 난이도를 활성화에서 웨이트로 이전합니다.

WX ≈ Q(W · diag(s)) · Q(diag(s)-1 X)

Migration parameter:

sj = max(|Xj|)α / max(|Wj|)1-α
(a) Original                     (b) SmoothQuant
|X|: outlier, hard to quantize   |X̂|: smoothed, easy to quantize
|W|: very easy to quantize       |Ŵ|: easy to quantize
              ↓
       migrate difficulty →

4.2 QuaRot

논문: "Outlier-Free 4-Bit Inference in Rotated LLMs" (NeurIPS '24)

핵심 아이디어

벡터를 무작위 방향으로 회전시키면 이상치가 제거됩니다.

WX ≈ Q(WH-1) · Q(HX)

H는 무작위 Hadamard 행렬입니다. 이상치 없이 4-bit 양자화가 가능합니다.


5. QAT 기법 상세: EfficientQAT

논문: "EfficientQAT: Efficient Quantization-Aware Training for Large Language Models" (ACL '25)

핵심 특징

  • 현재 LLM QAT의 SOTA
  • PTQ 대비 더 좋은 성능
  • 합리적인 계산 오버헤드 (A100 GPU 1개로도 가능)

기존 QAT의 문제점

방법 A100-80GB 가능? GPU 시간
LLM-QAT 900h
QuiP# 300h
AQLM 336h
EfficientQAT 41h

Two-Stage 접근법

단계 설명 학습 대상
0. RTN 초기화 -
1. Block-AP 블록 단위 순차 학습 s, z, W
2. E2E-QP End-to-end 학습 s만

LLaMA-2 기준 성능

모델 Block-AP 시간 E2E-QP 시간 총 시간
7B 3.3h ~1.5h 4.8h
13B 5.6h ~2.9h 8.5h
70B 26.6h ~14.3h 40.9h

6. PEFT와 LoRA

6.1 PEFT의 필요성

GPT-3 175B는 전체 모델 업데이트에 1.2TB VRAM 필요 (80GB A100 GPU 가격: $15,000 이상)

PEFT (Parameter Efficient Fine-Tuning): 사전학습된 LLM을 fine-tuning할 때, 소수의 파라미터만 수정

6.2 LoRA (Low-Rank Adaptation)

논문: Hu et al. ICLR 2022

핵심 개념

저차원(low-rank) 근사를 활용하여 fine-tuning 비용 절감

h = Wx + ΔWx = Wx + BAx

변수 차원 설명
x d 입력
h d 출력
A r×d 저차원 행렬
B d×r 저차원 행렬
r - 랭크 (r << d)

메모리 절감 효과 (GPT-3 175B)

항목 Before After 개선
학습 중 VRAM 1.2TB 350GB ~3.4×
체크포인트 크기 350GB 35MB ~10,000×

실험 결과

모델 & 방법 학습 파라미터 WikiSQL MNLI-m
GPT-3 (Full FT) 175,255.8M 73.8 89.5
GPT-3 (LoRA) 4.7M 73.4 91.7
GPT-3 (LoRA) 37.7M 74.0 91.6
0.022% 미만의 파라미터만 튜닝해도 Full FT와 비슷한 성능!

7. QLoRA와 QA-LoRA

7.1 발전 과정

기법 입력 출력
LoRA 사전학습 모델 (FP) Fine-tuned 모델 (FP)
QLoRA 사전학습 모델 (FP) + 비트 B B-bit 모델 + 어댑터 (FP)
QA-LoRA 사전학습 모델 (FP) + 비트 B B-bit 모델 (어댑터 없음)

7.2 QLoRA 핵심 아이디어

Idea 1: 4-bit NormalFloat (NF4)

  • 웨이트 분포(정규분포)를 기반으로 양자화 레벨 결정
  • 코드북 사용

Idea 2: Double Quantization

방식 Scale 저장 오버헤드
기존 FP32 per 64 params 0.5 bits
Double Quant FP8 + FP32 scale 0.127 bits

7.3 비교 다이어그램

                Training                    Inference

LoRA:       [FP16] → [FP16]            [FP16] → [FP16]
               W        h                  W        h

QLoRA:      [NF4]+[FP16] → [FP16]      [NF4]+[FP16] → [FP16]
             W_q   A,B       h          W_q   A,B       h

QA-LoRA:    [INT4]+[FP16] → [FP16]     [INT4] → [FP16]
             W_q    A,B       h          W_q       h
                                        (어댑터 없음!)

8. 결론 및 요약

주요 압축 기법 비교

기법 장점 단점 적용 시나리오
Pruning 높은 압축률 (10x+) 재학습 필요 모델 크기 대폭 감소
Distillation Teacher 지식 전달 별도 Teacher 필요 작은 모델 성능 향상
Quantization 빠른 적용 정확도 손실 가능 추론 속도 개선

양자화 기법 비교

기법 재학습 정확도 효율성
PTQ 불필요 보통 높음
QAT 필요 높음 낮음
EfficientQAT 필요 (효율적) 높음 높음

PEFT + 양자화 결합

기법 학습 효율 추론 효율 메모리 효율
LoRA 높음 - 보통
QLoRA 높음 낮음 높음
QA-LoRA 높음 높음 높음

핵심 메시지: Parameter-efficient fine-tuning과 양자화의 결합을 통해 fine-tuning과 추론 모두 효율화 가능

이 노트가 LLM 압축 기술을 이해하는 데 도움이 되길 바랍니다.