반응형
옵티마이저 시리즈
| Optimizer | URL |
| 옵티마이저란? [optimizer] | https://ai-duck1.tistory.com/16 |
| SGD[Stochastic Gradient Descent] | https://ai-duck1.tistory.com/17 |
| 모멘텀[Momentum] | https://ai-duck1.tistory.com/18 |
| RMSProp | https://ai-duck1.tistory.com/22 |
| Adam | https://ai-duck1.tistory.com/23 |
| Adamw | https://ai-duck1.tistory.com/35 |
모델을 학습하는데 있어서 손실을 최소화할 수 있도록 가중치를 업데이트하는 것을 옵티마이저(optimizer)라고 부른다.
현재 가장 보편적으로 사용하는 옵티마이저는 Adam으로 두 가지가 결합된 형태이다:
- Momentum (모멘텀)
- 속도를 기억하여 관성처럼 계속 움직이도록 한다.
- 더 오래될수록 적게 반영되며 이를 지수이동평균이라 한다.
- RMSProp
- 학습률을 조절한다.
- 손실함수의 기울기가 완만하면 학습률을 크게하고
- 기울기가 가파르면 학습률을 줄인다.
- 모멘텀과 같이 지수이동평균을 적용한다.
하지만 AdamW가 등장하여 사용되는 계기는 Adam에 문제점이 존재하기 때문이다.
Adam의 문제점
학습한 모델이 훈련 데이터에 너무 맞추려는(답안지를 베끼는) 오버피팅[overfitting]이 발생하지 않도록 가중치를 억제하는 역할을 정규화라고 한다.
그런데 Adam은 이 정규화에서 문제가 발생하는데 그 이유는 RMSProp로 인하여 서로 다른 학습률(learning rate)를 갖기 때문이다.

위 그림과 같이 각 파라미터는 서로 다른 기울기의 손실함수를 갖고 RMSProp는 이를 반영하여 파라미터마다 서로 다른 학습률을 갖게된다.
그로인해 파라미터와 기울기가 더 작게 정규화가 된다는 문제가 발생한다.
AdamW의 아이디어
이를 해결하기 위해서 Adam과의 차별점으로 정규화의 가중치 감소를 따로 분리하여 직접 기울기에 정규화를 취한다는 특징이 존재한다.
| 구분 | Adam | AdamW |
| 방식 | 손실함수에 정규화항을 더함 | 파라미터 업데이트에서 직접 감쇠 |
수식 비교
| 구분 | Adam | AdamW |
| 수식 | $ \theta _{t+1}=\theta _{t}-\eta \cdot \frac{\hat{m}_{t}}{\sqrt{\hat{v}_{t}}+\epsilon } $ | $\theta _{t+1}=\theta _{t}-\eta \cdot (\frac{\hat{m}_{t}}{\sqrt{\hat{v}_{t}}+\epsilon }\mathbf{+\lambda \theta }_{\mathbf{t}})$ |
위 수식의 AdamW에서 $\lambda\theta_t$ 항은 적응적 학습률과 분리되어
학습률과 가중치 감소를 독립적으로 최적화할 수 있다.
반응형
'AI숏츠' 카테고리의 다른 글
| Adam이란? [Adaptive Moment Estimation] | AI숏츠 (0) | 2025.09.25 |
|---|---|
| RMSProp이란? | AI숏츠 (0) | 2025.09.25 |
| 모멘텀이란?[Momentum] | AI숏츠 (0) | 2025.09.24 |
| SGD란?[Stochastic Gradient Descent] | AI숏츠 (0) | 2025.09.22 |
| 옵티마이저란? (Optimizer) | AI숏츠 (0) | 2025.09.22 |