모멘텀 최적화 (Momentum)

컴퓨터과학·AI
한 줄 정의: 이전 업데이트 방향을 누적해 관성처럼 반영함으로써 경사 하강의 진동을 줄이고 수렴을 가속하는 기법.

쉽게 풀면

확률적 경사 하강법만 사용하면 매번 방향이 조금씩 흔들려서 최적점까지 가는 길이 지그재그로 왔다갔다할 수 있어요. 모멘텀은 공이 언덕을 굴러 내려갈 때 관성이 붙는 것처럼, 이전까지의 이동 방향을 어느 정도 기억해서 현재 업데이트에 반영합니다. 이렇게 하면 일관된 방향으로는 점점 속도가 붙어 더 빠르게 수렴하고, 흔들리는 방향으로는 서로 상쇄되어 진동이 줄어들어요. 그래서 SGD에 모멘텀을 더한 방식이 순수 SGD보다 훨씬 안정적이고 빠르게 학습되는 경우가 많습니다.

왜 중요한가

모멘텀은 딥러닝 최적화 논문에서 학습 안정성과 수렴 속도를 개선하는 가장 기본적인 기법 중 하나로 다뤄집니다. 손실함수의 표면이 좁고 가파른 골짜기 형태를 가질 때 순수 경사 하강법은 좌우로 진동하며 느리게 수렴하는데, 모멘텀은 이런 비효율을 줄여 학습 시간을 단축시킵니다. 이 아이디어는 이후 Adam, RMSprop 등 널리 쓰이는 적응형 옵티마이저의 핵심 구성요소로 흡수되었기 때문에, 최적화 기법을 다루는 논문이라면 모멘텀의 원리를 이해하는 것이 출발점이 됩니다.

논문에서는 이렇게 쓰입니다

"옵티마이저로는 모멘텀 0.9를 적용한 SGD를 사용하였다."

이전 업데이트 방향의 90%를 다음 업데이트에 반영하는 방식으로 SGD를 개선해 사용했다는 뜻이다.

"네스테로프 모멘텀을 적용한 결과, 동일한 학습률에서도 표준 모멘텀 대비 더 빠른 손실 감소를 보였다."

네스테로프 모멘텀은 현재 위치가 아니라 관성으로 이동할 다음 위치에서 미리 그래디언트를 계산해 반영하는 변형으로, 표준 모멘텀보다 더 정확한 방향으로 수렴하는 경우가 많다는 것을 보여주는 문장입니다.

"강화학습 정책망 학습에서 모멘텀 계수를 낮게 설정하여 보상 신호의 노이즈에 따른 업데이트 변동을 완화하였다."

강화학습처럼 그래디언트 신호 자체가 불안정한 분야에서는 모멘텀 계수를 조정해 노이즈에 흔들리지 않도록 학습을 안정화하는 방식으로 활용되기도 합니다.

조금 더 깊게 보면

표준 모멘텀 외에 네스테로프 가속 경사(Nesterov Accelerated Gradient)라는 변형이 널리 쓰이는데, 이는 관성 방향으로 먼저 한 걸음 이동한 지점에서 그래디언트를 계산해 반영함으로써 방향 보정이 더 빠르다는 이론적 장점이 있습니다. 또한 모멘텀은 지수이동평균(exponential moving average) 형태로 과거 그래디언트를 누적하는데, 이 원리가 확장되어 Adam 옵티마이저에서는 1차 모멘트(방향)뿐 아니라 2차 모멘트(그래디언트 크기의 제곱)까지 함께 추적해 파라미터별로 학습률을 적응적으로 조절합니다.

주의할 점

모멘텀 값을 너무 크게 설정하면 관성이 지나치게 강해져 최적점을 지나쳐버리는 오버슈팅이 발생할 수 있다.

관련 용어