반응형
옵티마이져 시리즈
| 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 |
RMSProp(Root Mean Square Propgation)은
기울기 크기에 따라 학습률을 자동 조절해주는
옵티마이저이다.
기존 옵티마이저인 SGD나 Momentum은 학습률이 고정됨
RMSProp는 파라미터마다 적절한 학습률이 달라짐
RMSProp 특징
RMS[Root Mean Square]은 기울기의 제곱 평균으로
이를 통해서 자동으로 학습률을 조절하기 위해 RMSProp 옵티마이저를 사용한다.
너무 가파른 내리막길에서는 발걸음을 좁혀서 조금씩 안전하게 움직일 수 있게하고 평평한 평지에서는 발걸음을 넓게해서 빠르게 지나갈 수 있게하는 것이 핵심 아이디어이다.

RMSProp은 기울기가 큰 방향은 줄이고, 작은 방향은 학습률을 늘릴 수 있는 방법으로 2012년 제프리 힌튼 연구팀이 제안하였다.
수식
1. 기울기 제곱의 지수이동평균 저장
$E[g^2]_t=\rho \cdot E[g^2]_{t-1}+(1-\rho )\cdot g_t^2$
- ρ: decay rate (일반적으로 0.9)
- g_t : 현재 step의 기울기
Decay rate란 RMS를 얼마나 빠르게 줄이지를 정하는
하이퍼파라미터로 이전 정보와 현재 정보를 얼마나 반영할지를 정하는 비율임
2. 파라미터 업데이트
$\theta _{t+1}=\theta _t-\frac{\eta }{\sqrt{E[g^2]_t+\varepsilon }}\cdot g_t$
- ε: 작은 수, 0으로 나누는 것을 방지 (예: 1e-8)
- η: 기본 학습률
즉, 기울기가 큰 방향은 학습률을 줄이고, 작은 방향은 학습률을 늘린다.
PyTorch 코드
optimizer = torch.optim.RMSprop(model.parameters(), lr=0.001, alpha=0.9)
- alpha는 decay rate ρ에 해당 (기본값 0.99도 자주 사용)
- eps도 보통 1e-08로 기본 설정
RMSProp의 장단점
장점
- 진동이 큰 부분에서는 학습률을 줄이기 때문에 안정적인 수렴 가능
- 학습률을 따로 조절하지 않아도 비교적 빠르고 효과적임
단점
- 기울기가 0 근처로 계속 작아져서 너무 느려지는 문제가 생김
-> 그래서 Adam (모멘텀 + RMSProp의 결합 형태)이 등장함
요약
RMSProp은 최근 기울기의 제곱 평균으로 학습률을 조절해, 진동을 줄이고 안정적인 학습을 돕는 옵티마이저이다.
반응형
'AI숏츠' 카테고리의 다른 글
| AdamW이란? [Adaptive Moment Estimation] | AI숏츠 (0) | 2026.01.07 |
|---|---|
| Adam이란? [Adaptive Moment Estimation] | 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 |
