13.13 기울기 클리핑(Gradient Clipping)

13.13 기울기 클리핑(Gradient Clipping)

기울기 클리핑(gradient clipping)은 기울기의 노름이 사전에 정의된 임계값을 넘으면 그 노름을 제한하는 학술적 기법이다. 기울기 클리핑은 기울기 폭발(exploding gradient) 문제를 완화하기 위하여 학술적으로 제안되었으며, 특히 순환 신경망과 트랜스포머 모형의 학습에서 광범위하게 채택되어 왔다. 이 절에서는 기울기 클리핑의 학술적 동기, 정의, 두 가지 양식, 학술적 특성, 활용 사례를 학습 순서에 따라 기술한다.

1. 학술적 동기

기울기 폭발은 학습 과정에서 기울기의 노름이 매우 큰 값이 되는 현상이다. 큰 기울기는 매개 변수의 갱신을 과도하게 만들어 학습이 발산하거나 손실 값이 NaN이 되는 수치적 불안정성을 발생시킨다. 기울기 클리핑은 기울기의 노름을 제한하여 이러한 학술적 한계를 완화한다.

기울기 클리핑은 기울기의 방향은 그대로 유지하면서 그 크기만을 제한하므로, 학습 신호의 정보를 보존하면서 갱신의 안정성을 보장한다.

2. 정의

기울기 클리핑에는 두 가지 학술적 양식이 있다.

2.1 노름 기반 클리핑

기울기 벡터 \mathbf{g}의 노름이 임계값 c를 초과하면 노름을 c로 재조정한다.

\mathbf{g}' = \begin{cases} \mathbf{g}, & \|\mathbf{g}\| \leq c \\ \frac{c}{\|\mathbf{g}\|} \mathbf{g}, & \|\mathbf{g}\| > c \end{cases}

이 양식은 기울기의 방향을 유지하면서 노름만을 제한하므로, 학습 신호의 학술적 정합성을 보존한다. 노름은 일반적으로 L_2 노름이 사용된다.

13.13.2.2 값 기반 클리핑

기울기의 각 성분을 사전에 정의된 범위 [-c, c]로 제한한다.

g'_i = \min(\max(g_i, -c), c)

이 양식은 단순하지만 기울기의 방향을 변경할 수 있으므로 학습 신호의 정보 손실이 발생할 수 있다.

학술 문헌은 일반적으로 노름 기반 클리핑이 학술적·실용적으로 더 우수한 결과를 보고한다.

3. 학술적 특성

기울기 클리핑의 주요 학술적 특성은 다음과 같다.

  • 기울기 폭발의 완화
  • 학습의 수치적 안정성 향상
  • 단순한 구현
  • 추가 하이퍼파라미터: 임계값 c
  • 갱신 방향의 보존(노름 기반 클리핑의 경우)
  • 임계값을 너무 작게 설정하면 학습 신호가 손실됨

임계값 c는 일반적으로 1, 5, 10과 같은 값이 사용된다. 적절한 값은 모형과 과제에 따라 다르며, 학습 손실의 추세에 따라 조정될 수 있다.

4. 학술적 도입

기울기 클리핑은 Mikolov가 2012년 박사 학위 논문 Statistical Language Models Based on Neural Networks에서 순환 신경망의 학습에 도입한 것으로 학술적으로 알려져 있다. 이후 Pascanu, Mikolov, Bengio가 2013년에 On the difficulty of training Recurrent Neural Networks에서 기울기 클리핑의 학술적 효과를 정량적으로 분석하였다.

이 학술 문헌은 순환 신경망의 손실 표면이 매우 가파른 절벽을 포함할 수 있으며, 절벽에서의 매개 변수 갱신이 학습을 발산시킬 수 있음을 분석하였다. 기울기 클리핑은 이러한 절벽에서의 갱신을 제한하여 학습이 절벽을 안전하게 통과하도록 한다.

5. 활용 사례

기울기 클리핑은 다음의 학술적 활용 사례에서 사용된다.

  • 순환 신경망: LSTM, GRU 등 RNN의 학습에서 표준적으로 사용
  • 트랜스포머 모형: BERT, GPT 등 대규모 트랜스포머 모형의 학습에서 사용
  • 강화 학습: 정책 경사 알고리즘에서 학습 안정성을 향상
  • 생성적 적대 신경망: 학습의 안정성을 향상
  • 일반 깊은 신경망: 기울기 폭발이 우려되는 모든 학습

6. 노름 기반 클리핑의 학술적 의미

노름 기반 클리핑은 다음과 같은 학술적 의미를 가진다. 기울기 벡터 \mathbf{g}가 학습 신호의 방향을 표현한다고 보면, 노름 기반 클리핑은 이 방향을 유지하면서 단계 크기만을 제한한다. 따라서 학습은 본질적으로 동일한 방향으로 진행되지만, 그 크기가 안전한 범위로 제한된다. 이 학술적 해석은 노름 기반 클리핑이 학습 신호의 정보를 최대한 보존하는 학술적 정당화를 제공한다.

7. 학술적 한계와 보완

기울기 클리핑은 다음의 학술적 한계를 가진다.

  • 임계값의 선택: 임계값이 너무 크면 클리핑의 효과가 사라지고, 너무 작으면 학습이 정체된다.
  • 클리핑은 기울기 폭발의 증상을 완화하지만 그 원인을 해결하지 않는다.
  • 일부 모형에서는 클리핑만으로 학습이 안정화되지 않을 수 있다.

이러한 한계를 보완하기 위하여 적응적 임계값(adaptive clipping), 매개 변수별 클리핑, 통계 기반 클리핑 등이 학술적으로 제안되어 왔다.

8. 출처 및 버전 정보

  • Mikolov, T., Statistical Language Models Based on Neural Networks, PhD Thesis, Brno University of Technology, 2012
  • Pascanu, R., Mikolov, T., Bengio, Y., On the difficulty of training Recurrent Neural Networks, International Conference on Machine Learning, 2013
  • Hochreiter, S., Schmidhuber, J., Long Short-Term Memory, Neural Computation, 1997
  • Goodfellow, I., Bengio, Y., Courville, A., Deep Learning, MIT Press, 2016
  • You, Y., Li, J., Reddi, S., Hseu, J., Kumar, S., Bhojanapalli, S., Song, X., Demmel, J., Keutzer, K., Hsieh, C.-J., Large Batch Optimization for Deep Learning: Training BERT in 76 minutes, International Conference on Learning Representations, 2020