모델은 어떻게 스스로 “계수”를 조정하는가?
여기서 계수는 딥러닝 모델을 하나의 함수로 보았을때, 가중치를 의미합니다.
1. 딥러닝에서 ‘최적화’란 무엇인가?
딥러닝 모델을 학습한다는 것은 입력과 정답(Label)을 비교해서 오차를 계산하고, 그 오차가 줄어들도록 모델 내부의 파라미터(계수)를 조정하는 과정입니다.
딥러닝 모델은 거대한 함수이고 학습은 그 함수의 “계수”를 계속 수정해가는 과정

즉, 손실이 줄어드는 방향으로 조금씩 이동하는 것이 최적화의 핵심입니다.
2. 기본 중의 기본: Gradient Descent
2-1. Gradient Descent (경사하강법)
가장 기본이 되는 알고리즘으로원리는 아래와 같습니다.
- 현재 위치에서
- 손실 함수의 기울기를 계산하고
- 기울기 반대 방향으로 이동
산 위에서 가장 낮은 지점을 찾는 과정이라고 생각하면 됩니다.
2-2. Batch / Stochastic / Mini-batch
1) Batch Gradient Descent
- 전체 데이터를 한 번에 사용
- 정확하지만 느림
2) Stochastic Gradient Descent (SGD)
- 데이터 1개씩 사용
- 빠르지만 불안정
3) Mini-batch SGD ⭐ (가장 많이 사용)
- 일부 데이터 묶음 사용
- 안정성과 속도의 균형
3. SGD의 한계를 개선한 방법들
SGD는 단순하지만 문제가 조금 있습니다.
- 진동이 심함
- 지역 최소값에 빠질 수 있음
- 학습 속도가 느림
그래서 등장한 것이 “개선된 최적화 기법”들입니다
4. Momentum
이전 이동 방향을 기억해서 관성처럼 더 빠르게 이동하게 만드는 방법입니다.

비유
- SGD: 공이 덜컹덜컹 내려감
- Momentum: 공이 탄력 받아서 굴러감
협곡 구조에서 매우 효과적이라고 볼 수 있습니다.
5. AdaGrad
자주 업데이트되는 파라미터는 학습률을 줄이고 드물게 업데이트되는 파라미터는 학습률을 크게 만듭니다

장점
- 희소 데이터에서 좋음 (NLP 등)
단점
- 학습률이 계속 줄어들어 학습이 멈춤
6. RMSProp
AdaGrad의 문제 해결 버전입니다.
과거 기울기를 “지수 평균”으로 관리하고, 학습률이 너무 작아지지 않도록 유지.

7. Adam ⭐ (가장 많이 사용)
📌 Adam = Momentum + RMSProp
- 기울기의 평균 (1차 모멘트)
- 기울기의 제곱 평균 (2차 모멘트)
두 개를 모두 사용합니다.

왜 많이 쓰일까?
- 초기 학습이 빠름
- 튜닝이 비교적 쉬움
- 대부분의 문제에서 안정적
8. AdamW (최근 표준)
Adam의 Weight Decay 분리 버전으로, 기존 Adam은 정규화가 완전히 분리되지 않는 문제가 있었습니다.
이때 AdamW는

를 분리 적용합니다.
→ Transformer, ViT, 최신 모델의 표준
9. Learning Rate의 중요성
최적화에서 가장 중요한 하이퍼파라미터
너무 크면?
- 발산
- 손실이 튐
너무 작으면?
- 학습 느림
- 지역 최소값에 갇힘
📌 Learning Rate Scheduler 종류
- Step decay
- Cosine annealing
- Exponential decay
- Warm-up ⭐ (Transformer 필수)
10. 최적화와 파인튜닝의 관계
우리가 비유한 “함수의 계수 갱신”을 기준으로 보면
| 재학습 | 계수를 처음부터 다시 찾음 |
| 파인튜닝 | 기존 계수 근처에서 조금만 수정 |
즉,
- 재학습: 함수 자체를 다시 설계
- 파인튜닝: 기존 함수의 계수 미세 조정
여기서 중요한 건, 어떤 Optimizer를 쓰느냐에 따라 파인튜닝의 안정성이 달라진다는 점입니다.
실제 실무에서의 선택할때
| CNN 기본 모델 | Adam |
| Transformer | AdamW |
| 작은 데이터셋 | Adam |
| 대규모 학습 | SGD + Momentum |
| 희소 데이터 | AdaGrad |
정리
딥러닝 최적화는 결국, 손실이 줄어드는 방향으로 함수의 계수를 계속 수정하는 과정이며, 그 “수정 방법”이 바로 Optimizer입니다.
- SGD → 기본기
- Momentum → 가속
- RMSProp → 안정성
- Adam → 실무 표준
- AdamW → 최신 표준
'Computer Science > 딥러닝' 카테고리의 다른 글
| 임베딩(Embedding)을 하는 이유와 개념 (0) | 2026.02.08 |
|---|---|
| 원핫 인코딩을 하는 이유 (0) | 2026.02.07 |
| 다중공선성이란? (0) | 2026.02.05 |
| 파운데이션 모델(Foundation Model)이란? (0) | 2026.01.31 |
| Latent Space(잠재공간)란? (0) | 2026.01.23 |