두 상태의 역할
한 성분의 기울기를 g, 이동량을 d라 쓰자. 먼저 Gₜ=ρGₜ₋₁+(1-ρ)gₜ²를 계산한다. 원래 방식의 이동량은 dₜ=-√(Uₜ₋₁+ε)gₜ/√(Gₜ+ε)다. 이후 Uₜ=ρUₜ₋₁+(1-ρ)dₜ²로 갱신하고 매개변수에 dₜ를 더한다. 분자는 이전 상태이고 분모는 현재 기울기를 반영한 상태다.
첫 이동의 예
계산을 단순하게 보려고 ρ=1/2, ε=1, G₀=U₀=0, 첫 기울기 2로 두자. G₁=2이고 이동량은 -2/√3이다. 제곱하면 4/3이므로 U₁=2/3이다. ε=1은 설명용 선택이며 실제 학습에 권장하는 값이 아니다.
오래된 정보가 줄어드는 방식
지수 이동평균에서는 새 입력이 없을 때 기존 상태의 기여가 매번 ρ배가 된다. ρ=1/2라면 세 번 뒤에는 원래 기여의 1/8이다. 최근 몇 개만 딱 잘라 저장하는 창과는 다르며, 오래된 값도 점차 작아지는 가중치로 남는다.
설정이 사라지는 것은 아니다
원래 방법에 별도 전역 학습률이 없다는 설명은 모든 설정이 불필요하다는 뜻이 아니다. ρ와 ε가 계산에 영향을 주며, 라이브러리가 추가 학습률 배율을 제공하기도 한다. 실제 비교에서는 알고리즘 이름뿐 아니라 상태 초기화와 갱신 규약도 확인해야 한다.
관련 문서
Adagrad / RMSprop / Adam (최적화) / 모멘텀 (최적화) / 경사 하강법 / 인공 신경망