13.1 경사 하강법(Gradient Descent)의 기본 원리

13.1 경사 하강법(Gradient Descent)의 기본 원리

경사 하강법(gradient descent)은 미분 가능한 함수의 극소값을 찾기 위하여 함수의 기울기의 반대 방향으로 매개 변수를 반복적으로 갱신하는 일계 최적화 알고리즘이다. 경사 하강법은 신경망 학습의 핵심 절차이며, 학술적으로는 19세기 중반 Cauchy의 Méthode générale pour la résolution des systèmes d’équations simultanées (1847)에서 그 기원을 찾을 수 있다. 이 절에서는 경사 하강법의 정의, 기하학적 해석, 수렴 조건, 학습률, 학술적 특성을 학습 순서에 따라 기술한다.

1. 학술적 정의

미분 가능한 목적 함수 f: \mathbb{R}^{n} \to \mathbb{R}의 극소값을 찾기 위한 경사 하강법은 초기점 \mathbf{x}^{(0)}에서 출발하여 다음의 갱신 규칙을 반복적으로 적용한다.

\mathbf{x}^{(t+1)} = \mathbf{x}^{(t)} - \eta \nabla f(\mathbf{x}^{(t)})

여기서 \nabla f(\mathbf{x}^{(t)})\mathbf{x}^{(t)}에서의 f의 기울기, \eta > 0은 학습률(learning rate) 또는 단계 크기(step size)이다. 갱신은 사전에 정의된 종료 조건이 만족될 때까지 반복된다.

13.1.2 기하학적 해석

함수 f의 기울기 \nabla f(\mathbf{x})\mathbf{x}에서 함수가 가장 빠르게 증가하는 방향을 가리키는 벡터이다. 따라서 그 반대 방향 -\nabla f(\mathbf{x})는 함수가 가장 빠르게 감소하는 방향이며, 이 방향으로의 이동은 함수 값의 감소를 보장한다(단, 충분히 작은 단계 크기에 한정).

이러한 기하학적 해석은 경사 하강법이 함수의 등고선에 수직인 방향으로 이동하는 절차임을 보여준다. 등고선의 모양이 길게 늘어진 타원형인 경우 경사 하강법은 골짜기를 따라 진동하면서 천천히 진행할 수 있으며, 이는 학술적으로 컨디션 수(condition number)가 큰 문제의 학습 어려움으로 알려져 있다.

13.1.3 신경망 학습에서의 적용

신경망 학습에서 목적 함수는 학습 데이터에 대한 손실 함수이며, 매개 변수 \theta에 대한 다음의 갱신 규칙이 적용된다.

\theta^{(t+1)} = \theta^{(t)} - \eta \nabla_\theta \mathcal{L}(\theta^{(t)})

기울기 \nabla_\theta \mathcal{L}은 역전파 알고리즘에 의하여 효율적으로 계산된다. 경사 하강법은 손실 함수의 비볼록 표면 위에서의 최적화이므로 전역 최소값(global minimum)이 아닌 지역 최소값(local minimum)이나 안장점(saddle point)에 수렴할 수 있다.

2. 수렴 조건

경사 하강법의 수렴성은 목적 함수의 학술적 특성과 학습률에 의존한다.

  • 볼록 함수의 경우: 함수가 강 볼록(strongly convex)이고 기울기가 Lipschitz 연속이면, 적절한 학습률 하에서 경사 하강법은 전역 최소값에 선형 수렴한다.
  • 일반 볼록 함수의 경우: 적절한 조건 하에서 부함수 수렴(sublinear convergence)이 보장된다.
  • 비볼록 함수의 경우: 일반적으로 전역 수렴은 보장되지 않지만, 적절한 조건 하에서 정류점(stationary point)으로의 수렴이 보장된다.

신경망의 손실 함수는 비볼록이지만, 학술 문헌은 과매개화된 신경망에서 경사 하강법이 학습 데이터에 대한 손실을 0에 가깝게 감소시킬 수 있음을 보고하고 있다.

3. 학습률의 학술적 의의

학습률 \eta는 각 갱신의 단계 크기를 결정하는 하이퍼파라미터이다. 학습률의 선택은 다음의 학술적 영향을 미친다.

  • 너무 작은 학습률: 수렴 속도가 느리고, 지역 최소값이나 안장점에서 정체될 수 있다.
  • 너무 큰 학습률: 학습이 진동하거나 발산할 수 있다.
  • 적절한 학습률: 안정적이고 빠른 수렴이 가능하다.

학술적으로는 학습률을 학습의 진행에 따라 조정하는 학습률 스케줄링이 권고된다. 일정한 학습률 대신 단계 감쇠, 코사인 감쇠, 워밍업 등이 사용된다.

4. 단순 경사 하강법의 학술적 한계

단순 경사 하강법은 다음의 학술적 한계를 가진다.

  • 비볼록 함수에서의 지역 최소값과 안장점
  • 컨디션 수가 큰 문제에서의 진동
  • 잡음에 대한 민감성
  • 평탄한 영역(plateau)에서의 정체
  • 단일 학습률의 한계: 모든 매개 변수에 동일한 학습률이 적용됨

이러한 한계를 완화하기 위하여 모멘텀, AdaGrad, RMSProp, Adam과 같은 학술적 변형이 제안되어 왔다.

5. 학습의 학술적 정당화

경사 하강법은 1차 정보(기울기)만을 사용하므로 매개 변수의 수가 매우 큰 신경망에서도 효율적으로 적용될 수 있다. 2차 정보(헤시안)를 사용하는 뉴턴 방법(Newton’s method)이나 그 변형은 이론적으로는 더 빠른 수렴을 가지지만, 헤시안의 계산과 저장이 매우 큰 모형에서는 비현실적이다. 경사 하강법은 학술적·실용적 균형을 통하여 심층 학습의 표준 학습 절차로 채택되었다.

6. 출처 및 버전 정보

  • Cauchy, A., Méthode générale pour la résolution des systèmes d’équations simultanées, Comptes Rendus de l’Académie des Sciences, 1847
  • Nocedal, J., Wright, S. J., Numerical Optimization, Springer, 2006
  • Boyd, S., Vandenberghe, L., Convex Optimization, Cambridge University Press, 2004
  • Bottou, L., Curtis, F. E., Nocedal, J., Optimization Methods for Large-Scale Machine Learning, SIAM Review, 2018
  • Goodfellow, I., Bengio, Y., Courville, A., Deep Learning, MIT Press, 2016