모멘텀 (Momentum) 경사하강법
개요
모멘텀 경사하강법은 기계 학습에서 최적화를 수행하는데 중요한 알고리즘이다. 이 방법은 기존의 경사하강법의 단점을 보완하여 더 빠르고 안정적인 수렴을 가능하게 한다. 모멘텀 경사하강법은 물리학에서의 모멘텀 개념을 도입하여, 단순한 기울기 계산에 의존하지 않고 과거의 기울기도 반영하는 방식으로 동작한다.
모멘텀의 개념
모멘텀은 물리학에서 질량과 속도의 곱으로 정의된다. 최적화 문제에서는 기울기가 속도에 해당한다. 모멘텀 경사하강법은 이 개념을 활용하여, 현재 기울기에 의한 변화를 직접 반영하는 것뿐만 아니라, 이전 단계에서의 기울기 변화를 일정 비율로 현재 단계에 반영한다. 이를 통해 경사하강법이 단순히 기울기만을 따라가는 것이 아니라, 방향을 더 일관되게 유지할 수 있도록 돕는다.
수식으로는 다음과 같이 표현된다:
여기서:
$ v_t $는 현재 속도(모멘텀),
$ \beta $는 모멘텀 계수로, 이전 속도가 현재 속도에 미치는 영향을 결정한다,
$ \eta $는 학습률,
$ \nabla J(\theta_t) $는 현재 기울기,
$ \theta_t $는 현재 파라미터 값이다.
모멘텀 계수의 역할
모멘텀 계수 $ \beta $는 0과 1 사이의 값으로 설정된다. $ \beta $ 값이 클수록 이전 단계의 속도가 현재 단계에 미치는 영향이 커진다. 이는 경사하강법이 좁고 깊은 골짜기에서의 진동을 줄이고, 수렴 속도를 높이는 데 도움을 준다. 너무 작은 $ \beta $ 값은 모멘텀의 효과를 줄여 단순 경사하강법과 크게 다르지 않게 된다. 반대로, 너무 큰 $ \beta $ 값은 시스템을 불안정하게 만들어, 최적화 과정에서 발산할 수 있다.
모멘텀 경사하강법의 수렴 특성
모멘텀 경사하강법은 수렴 속도를 높이는 데 매우 효과적이다. 일반적인 경사하강법에서는 매 반복마다 기울기를 따라 이동하기 때문에, 경사면이 급격하게 변하는 구간에서 진동이 발생할 수 있다. 모멘텀을 도입하면, 이러한 진동이 줄어들어 더 안정적인 수렴이 가능한다. 특히, 골짜기 구조의 손실 함수에서 효과적이며, 이러한 상황에서 모멘텀은 단순한 경사하강법보다 훨씬 빠르게 수렴할 수 있다.
모멘텀은 특히 비선형 함수의 최적화에서 강력한 도구로 활용된다. 비선형 함수는 다수의 국소 최저점을 가질 수 있으며, 단순 경사하강법은 이러한 국소 최저점에서 쉽게 멈출 수 있다. 모멘텀 경사하강법은 이러한 국소 최저점에서 벗어나, 전역 최저점에 더 빠르게 도달할 수 있도록 돕는다.
관련 자료:
Sutskever, I., Martens, J., Dahl, G., & Hinton, G. (2013). On the importance of initialization and momentum in deep learning. International conference on machine learning.
Polyak, B. T. (1964). Some methods of speeding up the convergence of iteration methods. USSR Computational Mathematics and Mathematical Physics.
Last updated