id, title, category, status, canonical_id, aliases, duplicate_of, source_trust_level, confidence_score, verification_status, tags, raw_sources, last_reinforced, github_commit, tech_stack
id
title
category
status
canonical_id
aliases
duplicate_of
source_trust_level
confidence_score
verification_status
tags
raw_sources
last_reinforced
github_commit
tech_stack
wiki-2026-0508-momentum-and-optimization
Momentum and Optimization
10_Wiki/Topics
verified
self
Optimizers
SGD momentum
Adam
AdamW
Lion
Nesterov
none
A
0.95
applied
optimization
deep-learning
adam
lion
sgd
training
2026-05-10
pending
language
framework
python
pytorch
Momentum and Optimization
매 한 줄
Momentum 은 gradient에 관성(velocity)을 부여해 SGD의 수렴 속도와 안정성을 개선하는 1차 최적화의 핵심 트릭이며, 이를 진화시킨 Adam/AdamW/Lion이 2026년 LLM·비전 학습 표준이다.
매 핵심
1. Vanilla SGD vs Momentum
관성 계수 μ ≈ 0.9 — 직전 gradient의 90% 누적.
ravine(좁은 골짜기)에서 SGD는 진동, momentum은 직진.
2. Nesterov Accelerated Gradient (NAG)
이론적 convergence O(1/k²) (Nesterov 1983), volatile loss에서 momentum보다 안정.
3. Adaptive: Adam (Kingma 2014)
1차 모멘트 m, 2차 모멘트 v 모두 EMA.
bias correction 후 θ ← θ - η · m̂ / (√v̂ + ε).
기본 hyperparam: lr=1e-3, β₁=0.9, β₂=0.999, ε=1e-8.
4. AdamW (Loshchilov 2017) — 표준
weight decay를 gradient에서 분리 (decoupled).
LLM/Transformer 학습에서 사실상 default. lr=1e-43e-4, wd=0.010.1.
5. Lion (Chen et al., Google 2023)
sign-based update: θ ← θ - η · sign(β₁·m + (1-β₁)·g).
메모리 50% 절감 (1차 모멘트만), AdamW 대비 lr 10× 작게(1e-4 → 1e-5).
대규모 비전(ViT-G) / LLM 미세조정에서 동등 또는 우수 성능.
6. 2026 best practices
LLM pretrain : AdamW, β₂=0.95, cosine LR with warmup, gradient clipping 1.0.
LLM finetune : AdamW lr=2e-5 또는 Lion lr=2e-6.
Vision (ViT) : AdamW or Lion, weight decay 0.05.
Diffusion : AdamW lr=1e-4, EMA on weights.
Sophia / Shampoo : 2차 정보 활용, 일부 frontier lab에서 채택 — wall-clock 1.5-2× 개선 보고.
💻 패턴
매 결정 기준
상황
추천 옵티마이저
비고
LLM pretrain
AdamW (β₂=0.95)
표준
LLM finetune
AdamW or Lion
Lion: lr=AdamW/10, wd=AdamW× 3
ViT / 큰 비전 모델
AdamW or Lion
Lion 메모리 우위
Diffusion
AdamW + EMA
EMA 필수
Sparse embedding
SparseAdam
RecSys
메모리 부족
AdamW8bit (bitsandbytes)
75% 절감
RL policy gradient
Adam (낮은 β₂=0.9)
노이즈 환경
단순 CNN/from scratch
SGD+momentum 0.9
잘 일반화
🔗 Graph
🤖 LLM 활용
"AdamW와 Lion의 학습 곡선을 비교해서 어느 게 stable한지 분석" — wandb log dump.
LLM에 hyperparameter sweep 결과 요약 요청.
"이 loss curve가 발산 중인데 lr / clipping / momentum 중 무엇을 조정?" — diagnostic.
❌ 안티패턴
Adam에 weight decay를 L2로 추가 : Adam은 v로 나누므로 의도와 다른 효과 → AdamW 사용.
lr 그대로 Lion 채택 : Lion은 sign-based, AdamW lr / 10 ~ / 5.
β₂=0.999 LLM에 : long sequence + 큰 gradient → β₂=0.95 권장.
Warmup 없이 Adam 시작 : 초기 v 추정 불안정 → divergence.
EMA 없이 diffusion : 샘플 품질 크게 저하.
🧪 검증 / 중복
검증: PyTorch docs, Adam(2014), AdamW(2017), Lion(2023) 원논문.
중복: Adam Optimizer (specific) — 본 문서는 비교/선택 가이드.
🕓 Changelog
2026-05-10: 신규 작성. SGD momentum → Nesterov → Adam → AdamW → Lion + 2026 best practice.