GLU Variants Improve Transformer (SwiGLU)
Digest: 이 논문은 Transformer의 FFN(Feed-Forward Network) 레이어에 GLU(Gated Linear Unit) 변형을 적용하여 일관된 성능 향상을 달성함을 보인다. 핵심 제안인 SwiGLU는 으로, 기존 ReLU나 GELU 기반 FFN보다 perplexity가 일관되게 낮다. 파라미터 수를 동일하게 맞추기 위해 FFN 차원을 2/3로 줄이되(3개 행렬 사용), 게이팅 메커니즘의 이점이 이를 보상한다. 이후 LLaMA, PaLM, Mistral, Qwen, DeepSeek 등 현대 거의 모든 주요 LLM의 FFN 표준이 되었다.
핵심 개념
기존 FFN vs GLU 변형
기존 Transformer FFN
- 2개 행렬 (, )
- 파라미터:
GLU (Gated Linear Unit)
- Dauphin et al. (2017) 제안
- : sigmoid (원본), 이후 다양한 활성 함수로 변형
SwiGLU
- (β=1이 일반적)
- 3개 행렬 사용 → 파라미터 균형을 위해 FFN dim을 로 축소
GLU 변형 종류
| 변형 | 게이트 활성 함수 | 수식 |
|---|---|---|
| GLU | Sigmoid | |
| ReGLU | ReLU | |
| GEGLU | GELU | |
| SwiGLU | Swish |
graph TD A["입력 x (d차원)"] --> B["xW₁ → 게이트 값<br/>(Swish 활성화)"] A --> C["xW₂ → 값"] B --> D["Element-wise 곱<br/>Swish(xW₁) ⊗ xW₂"] C --> D D --> E["W₃ → 출력 (d차원)"] style D fill:#f9f,stroke:#333
파라미터 균형
문제: 3개 행렬 → 파라미터 증가
| FFN 유형 | 행렬 수 | 기본 FFN dim | 파라미터 |
|---|---|---|---|
| ReLU/GELU FFN | 2 | 4d | |
| SwiGLU | 3 |
→ FFN dim을 로 줄여 총 파라미터 수를 동일하게 유지
실제 LLM에서의 FFN dim
| 모델 | d_model | FFN dim | FFN/d 비율 | 활성 함수 |
|---|---|---|---|---|
| GPT-3 (175B) | 12288 | 49152 | 4.0× | GELU |
| LLaMA-7B | 4096 | 11008 | 2.69× | SwiGLU |
| LLaMA-65B | 8192 | 22016 | 2.69× | SwiGLU |
| Mistral 7B | 4096 | 14336 | 3.50× | SwiGLU |
| Qwen3-8B | — | — | — | SwiGLU |
| PaLM-540B | 18432 | 73728 | 4.0× | SwiGLU |
실험 결과
T5 기반 비교 (동일 파라미터)
| 활성 함수 | Test Perplexity (C4) |
|---|---|
| ReLU | 기준 |
| GELU | ReLU보다 약간 우수 |
| Swish | GELU와 유사 |
| GEGLU | ReLU/GELU보다 우수 |
| SwiGLU | 최고 (GEGLU와 거의 동등, 약간 우수) |
| ReGLU | GEGLU/SwiGLU와 유사 |
핵심 발견
- GLU 변형이 일관되게 우수: ReLU/GELU/Swish 단독보다 GLU(게이팅) 버전이 항상 우수
- SwiGLU ≈ GEGLU > ReGLU: 세 GLU 변형 간 차이는 작으나 SwiGLU가 미세하게 최고
- 게이팅의 힘: 추가 파라미터를 게이팅에 사용하는 것이 단순 FFN dim 확대보다 효과적
- 이론적 설명 부재: 왜 게이팅이 효과적인지 명확한 이론적 설명 없음 (“divine benevolence”)
채택 현황
| 모델 패밀리 | FFN 유형 | 비고 |
|---|---|---|
| LLaMA 1/2/3 | SwiGLU | ✅ 모든 버전 |
| Mistral / Mixtral | SwiGLU | ✅ |
| Qwen 2/2.5/3 | SwiGLU | ✅ |
| PaLM / PaLM-2 | SwiGLU | ✅ |
| DeepSeek V2/V3 | SwiGLU | ✅ (전문가 내) |
| Yi | SwiGLU | ✅ |
| Gemma 1/2/3 | GeGLU | GEGLU 변형 |
| Phi-3 | SwiGLU (mini/medium), gegelu (small) | 혼용 |
| GPT-3/4 | GELU | ❌ (비-GLU) |
| BERT | GELU | ❌ (비-GLU) |
| 원본 Transformer | ReLU | ❌ (비-GLU) |
→ 2023년 이후 새로운 LLM에서 SwiGLU/GeGLU가 사실상 표준
왜 SwiGLU가 효과적인가? (가설)
- 정보 선택: 게이트가 관련 정보를 선택적으로 통과 → attention과 유사한 선택 메커니즘
- 그래디언트 흐름: Swish의 부드러운 게이팅이 ReLU의 dead neuron 문제 완화
- 표현력: 2개 선형 변환의 element-wise 곱이 더 풍부한 비선형 변환 표현
- 저자의 견해: “We offer no explanation as to why these architectures seem to work; we attribute their success to divine benevolence.”
동시대 비교
| 활성 함수 | 제안 시기 | 게이팅 | 채택도 | 성능 |
|---|---|---|---|---|
| ReLU | 2010 | ❌ | 초기 모델 | 기준 |
| GELU | 2016 | ❌ | GPT, BERT | ReLU+ |
| Swish | 2017 | ❌ | 일부 | GELU≈ |
| GLU | 2017 | ✅ | 제한적 | 우수 |
| SwiGLU | 2020 | ✅ | 거의 모든 현대 LLM | 최고 |
| GeGLU | 2020 | ✅ | Gemma | SwiGLU≈ |
| Squared ReLU | 2022 | ❌ | 일부 실험 | 우수 |