13.7 모멘텀(Momentum) 기법
모멘텀(momentum) 기법은 경사 하강법의 갱신에 이전 갱신의 방향을 일정 비율로 누적하여 학습의 안정성과 속도를 향상시키는 학술적 기법이다. 모멘텀은 물리학에서 운동량의 개념을 차용한 학술적 비유로서, 매개 변수의 갱신이 일정한 방향으로의 관성을 가지도록 한다. 이 절에서는 모멘텀의 정의, 학술적 동기, Nesterov 가속, 학술적 특성, 활용 사례를 학습 순서에 따라 기술한다.
1. 학술적 동기
단순 경사 하강법은 다음의 학술적 한계를 가진다.
- 컨디션 수가 큰 문제에서의 진동: 등고선이 길게 늘어진 타원형인 경우 학습이 골짜기를 따라 진동하면서 천천히 진행한다.
- 평탄한 영역에서의 정체: 기울기가 작은 영역에서 갱신이 미미하다.
- 잡음의 누적: 미니배치 학습에서 잡음이 갱신 방향에 영향을 미친다.
모멘텀은 이러한 학술적 한계를 완화하기 위하여 이전 갱신의 방향을 누적한다.
2. 정의
모멘텀이 도입된 경사 하강법은 다음의 갱신 규칙을 따른다.
\mathbf{v}^{(t+1)} = \mu \mathbf{v}^{(t)} + \nabla_\theta \mathcal{L}(\theta^{(t)})
\theta^{(t+1)} = \theta^{(t)} - \eta \mathbf{v}^{(t+1)}
여기서 \mathbf{v}^{(t)}는 모멘텀 벡터(또는 속도 벡터), \mu \in [0, 1)는 모멘텀 계수, \eta는 학습률이다. 모멘텀 계수는 일반적으로 0.9와 같은 값이 사용된다.
이 갱신 규칙은 현재 기울기와 과거 갱신의 가중 합을 사용하므로, 갱신의 방향이 일정한 방향으로 누적된다. 모멘텀이 0인 경우는 단순 경사 하강법과 동등하다.
3. 학술적 효과
모멘텀의 학술적 효과는 다음과 같다.
- 진동의 완화: 골짜기를 따라 진동하는 경우 가로 방향의 진동이 상쇄되고 세로 방향의 누적이 강화된다.
- 평탄한 영역의 통과: 기울기가 작은 영역에서도 누적된 모멘텀에 의하여 갱신이 지속된다.
- 잡음의 평균화: 미니배치 학습에서 잡음이 시간에 따라 평균화된다.
- 수렴 속도의 향상: 컨디션 수가 큰 문제에서 학술적으로 수렴 속도가 향상된다.
모멘텀의 학술적 분석은 Polyak이 1964년에 Some methods of speeding up the convergence of iteration methods에서 처음 제시하였다. 이 분석은 선형 시스템의 반복 해법에서 모멘텀이 수렴 속도를 향상시키는 효과를 정량적으로 보였다.
4. Nesterov 가속
Nesterov 가속 경사 하강법(Nesterov Accelerated Gradient, NAG)은 Nesterov가 1983년에 *A method for unconstrained convex minimization problem with the rate of convergence O(1/k^2)*에서 학술적으로 제안한 모멘텀의 변형이다. NAG의 갱신 규칙은 다음과 같이 표현된다.
\mathbf{v}^{(t+1)} = \mu \mathbf{v}^{(t)} + \nabla_\theta \mathcal{L}(\theta^{(t)} - \eta \mu \mathbf{v}^{(t)})
\theta^{(t+1)} = \theta^{(t)} - \eta \mathbf{v}^{(t+1)}
표준 모멘텀과의 학술적 차이는 기울기가 현재 위치 \theta^{(t)}가 아닌 모멘텀에 의하여 미리 이동한 위치 \theta^{(t)} - \eta \mu \mathbf{v}^{(t)}에서 평가된다는 점이다. 이 차이는 기울기에 대한 미리 보기(look-ahead)의 효과를 가지며, 학술적으로 볼록 문제에서 최적의 수렴 속도 O(1/k^{2})을 달성한다.
5. 학술적 특성
모멘텀과 NAG의 주요 학술적 특성은 다음과 같다.
- 단순한 구현: 단일 모멘텀 벡터의 추가만으로 구현 가능
- 추가 메모리: 매개 변수와 동일한 크기의 모멘텀 벡터 저장이 요구됨
- 학습률과의 결합: 학습률과 모멘텀 계수가 결합되어 갱신 크기를 결정함
- 수렴 보장: 적절한 조건 하에서 수렴이 학술적으로 보장됨
- 비볼록 문제에서의 효과: 학술 문헌은 비볼록 신경망 학습에서도 모멘텀이 수렴 속도를 향상시킴을 보고함
6. 활용 사례
모멘텀과 NAG는 다음의 학술적 활용 사례에서 사용된다.
- 깊은 신경망의 학습: 컨디션 수가 큰 문제에서의 수렴 속도 향상
- 합성곱 신경망의 학습: 이미지 분류와 같은 과제에서 표준적으로 사용
- 대규모 사전 학습: 대규모 모형의 학습에서 모멘텀의 잡음 평균화 효과 활용
- Adam과 결합: Adam 최적화기의 1차 모멘트 추정에 모멘텀과 유사한 메커니즘이 사용됨
7. 모멘텀 계수의 학술적 선택
모멘텀 계수 \mu는 일반적으로 0.9와 같은 값이 사용되지만, 0.5에서 0.99 사이의 다양한 값이 학술적으로 시도되어 왔다. 모멘텀 계수가 작으면 단순 경사 하강법에 가까워지고, 모멘텀 계수가 크면 과거 갱신의 영향이 강해진다. 학습 초기에 작은 모멘텀 계수를 사용하고 학습이 진행됨에 따라 증가시키는 일정도 학술적으로 사용된다.
8. 출처 및 버전 정보
- Polyak, B. T., Some methods of speeding up the convergence of iteration methods, USSR Computational Mathematics and Mathematical Physics, 1964
- Nesterov, Y., A method for unconstrained convex minimization problem with the rate of convergence O(1/k^2), Doklady Akademii Nauk SSSR, 1983
- Sutskever, I., Martens, J., Dahl, G., Hinton, G., On the importance of initialization and momentum in deep learning, International Conference on Machine Learning, 2013
- Goodfellow, I., Bengio, Y., Courville, A., Deep Learning, MIT Press, 2016
- Nocedal, J., Wright, S. J., Numerical Optimization, Springer, 2006