본문으로 건너뛰기

© 2026 Molayo

Dev.to중요헤드라인2026. 04. 24. 04:18

적응형 학습률 방법론: AdaGrad와 RMSProp 비교 분석

요약

본 글은 단일 스칼라 학습률(single scalar η)의 한계를 지적하며, 모델 파라미터마다 다른 업데이트 전략이 필요함을 설명합니다. AdaGrad는 각 파라미터별로 제곱된 기울기 합을 누적하여 (Gₜ) 적응형 학습률을 제공하지만, 이 누적치가 무한히 증가하는 '사망 학습률(dying learning rate)' 문제가 있습니다. RMSProp은 이 문제를 해결하기 위해 누적합 대신 지수 가중 이동 평균(Exponentially Weighted Moving Average, EMA)을 사용하여 최근 기울기 정보에 더 큰 가중치를

핵심 포인트

  • 단일 글로벌 학습률은 희소한 신호가 오는 파라미터와 밀집된 신호가 오는 파라미터를 동시에 효율적으로 업데이트할 수 없습니다.
  • AdaGrad는 각 파라미터별로 제곱 기울기 합을 누적하여 (Gₜ) 적응형 학습률을 계산하지만, 이 값이 무한히 커지면서 결국 모든 학습률이 0에 수렴하는 '사망 학습률' 문제가 발생합니다.
  • RMSProp은 AdaGrad의 누적합 방식을 지수 가중 이동 평균(EMA)으로 대체하여, 오래된 기울기 정보의 영향을 줄이고 최근 변화하는 손실 표면(loss surface)에 적응할 수 있게 합니다.
  • AdaGrad는 희소한 특징을 가진 컨벡스 문제에 강력하지만, 깊은 신경망의 비정상적인 손실 표면에서는 실질적으로 실패할 수 있습니다.

딥러닝 모델 학습에서 모든 파라미터를 하나의 스칼라 값 $\eta$으로 제어하는 방식(Global Learning Rate)에는 근본적인 한계가 존재합니다. 예를 들어, 언어 모델의 임베딩 테이블은 토큰별로 희소하고 간헐적인 기울기 신호를 받는 반면, 최종 투영 레이어는 매 스텝마다 밀집되고 일관된 기울기를 받습니다. 이처럼 파라미터 유형에 따라 필요한 업데이트 전략이 다르기 때문에 단일 학습률로는 두 가지 극단적인 상황을 모두 만족시킬 수 없습니다.

1. AdaGrad (Adaptive Gradient Algorithm)

AdaGrad는 각 파라미터가 자체적인 효과적 학습률(effective learning rate)을 유지하도록 설계되었습니다. 이는 지금까지 관측된 기울기 제곱의 합($G_t$)을 추적하는 누적 방식입니다. 업데이트 공식은 다음과 같습니다:
$$\theta_{t+1} = \theta_t - (\eta / \sqrt{G_t + \epsilon}) \cdot \nabla L(\theta_t)$$

이 메커니즘의 핵심은 각 파라미터 $\theta_i$가 자신만의 누적기 $G_i$를 가지며, 기울기를 $\sqrt{G_i}$로 나누어 업데이트한다는 점입니다. 이 방식 덕분에:

  • 희소 파라미터: 간헐적으로 신호가 오면 $G$ 값이 작아져 효과적인 학습률이 커지고, 큰 보폭으로 빠르게 이동할 수 있습니다.
  • 밀집 파라미터: 자주 업데이트되면서 $G$ 값이 커지므로, 상대적으로 작은 보폭으로 보수적이고 안정적인 업데이트를 수행합니다.

AdaGrad는 이러한 장점 덕분에 NLP의 단어 임베딩이나 추천 시스템 등 희소 특징(sparse features)이 많은 분야에서 강력한 성능을 보여주었습니다. 이론적으로 컨벡스 문제에서는 최적의 회개 경계(optimal regret bounds)를 보장합니다.

2. AdaGrad의 치명적인 결함: Dying Learning Rate (사망 학습률)

AdaGrad는 $G_t$를 단순히 누적하는 방식이기 때문에, 훈련 스텝이 진행될수록 이 누적기($G_t$)가 무한히 커집니다. 결국 $\eta / \sqrt{G_t}$의 값은 모든 파라미터에 대해 0으로 수렴하게 됩니다. 이는 모델 학습을 효과적으로 중단시켜 버리는 '사망 학습률' 문제로 이어지며, 충분히 많은 스텝이 지나면 모델이 아직 수렴하지 않았더라도 사실상 학습이 멈추게 만듭니다.

또한, 깊은 신경망의 손실 표면(loss landscape)은 비정상적(non-stationary)입니다. 즉, 다른 파라미터가 업데이트되면서 최적화 목표 자체가 계속 변합니다. 이 경우 초기에 얻은 오래된 기울기 정보는 현재 상황에 대한 오해를 불러일으키며, AdaGrad의 누적 방식은 이러한 변화하는 곡률 정보를 제대로 반영하지 못합니다.

3. RMSProp (Root Mean Square Propagation)

RMSProp은 AdaGrad가 가진 이 구조적인 문제를 해결하기 위해 등장했습니다. 핵심 변경점은 누적합(cumulative sum)을 **지수 가중 이동 평균(Exponentially Weighted Moving Average, EMA)**으로 대체한 것입니다.
$$E_t = \rho \cdot E_{t-1} + (1 - \rho) \cdot (\nabla L(\theta_t))^2$$
$$\theta_{t+1} = \theta_t - (\eta / \sqrt{E_t + \epsilon}) \cdot \nabla L(\theta_t)$$

여기서 $\rho$는 감쇠 계수(decay coefficient)로, 최근 기울기 정보에 더 큰 가중치를 부여합니다. EMA를 사용함으로써 $E_t$는 무한히 커지지 않고 '슬라이딩 윈도우'처럼 작동하게 됩니다. 즉, 수백 스텝 전의 오래된 기울기는 점차 희미해지고(fade out), 최신 손실 표면의 곡률 정보가 효과적으로 반영됩니다.

RMSProp은 AdaGrad의 장점인 파라미터별 적응성을 유지하면서도, 깊은 학습 환경에서 발생하는 '사망 학습률' 문제를 해결하여 실질적인 적용 범위를 크게 넓힌 알고리즘입니다.

AI 자동 생성 콘텐츠

본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
3

댓글

0