RNN Gradient 소멸은 왜 피할 수 없었나
Pascanu 2013의 spectral radius 조건부터 saturation 문제, gradient clipping, orthogonal/identity 초기화까지 — RNN 학습 불안정성의 근본 원인과 그 대응의 계보를 추적한다.
- 01 RNN은 왜 sequence를 기억하는가
- 02 RNN 학습은 왜 이렇게 설계됐는가
- 03 RNN Gradient 소멸은 왜 피할 수 없었나
- 04 LSTM은 어떻게 vanishing gradient를 피하는가
- 05 RNN 변형들이 공유하는 하나의 질문
- 06 Attention은 어떻게 Seq2Seq의 병목을 뚫었는가
- 07 RNN이 Transformer에 밀린 이유, 그리고 Mamba가 돌아온 이유
RNN이 100 step 이전의 정보를 학습하지 못하는 이유는 무엇인가? 단순히 “gradient가 작아진다”는 설명으로는 부족하다. Pascanu 2013은 이 현상을 spectral radius라는 단 하나의 수치로 정량화했고, 그 분석 위에서 orthogonal 초기화, gradient clipping, IRNN, LSTM이 각각 다른 방식으로 같은 문제를 공략했다. 이 챕터들이 공유하는 질문은 하나다 — `를 1 근처에 유지하는 것이 왜 이렇게 어려운가?
문제의 수학적 정체
BPTT에서 시간 에서 로 흐르는 gradient는 Jacobian의 곱이다.
이 곱의 장기적 행동을 결정하는 것이 spectral radius 다.
RNN의 hidden Jacobian 에 대해,
(saturation이 없는 영역에서)
submultiplicative property로 . 각 이고, 번 곱하면 . Gelfand의 spectral radius formula 에 의해, 충분히 큰 에서 effective rate가 로 수렴한다.
Tanh의 경우 이므로 기준은 이 된다. , 이면 . 100 step 전 신호는 사실상 소멸한다.
유지가 불가능한 이유
이론적 해법은 명확하다 — 를 정확히 1로 유지하면 된다. 그러나 두 가지 힘이 이를 방해한다.
첫째, saturation. 는 영역에서 0에 가까워진다. 학습이 진행될수록 weight magnitude가 커지고 pre-activation 가 saturation 영역에 진입한다. 의 가 1이더라도 effective rate는 로 추락한다. Lyapunov exponent로 표현하면:
이어도 이면 vanishing이다.
둘째, weight drift. Gradient update 는 를 perturbation한다. Random init의 가 asymptotically 1에 가까운 것(circular law)은 사실이나, 학습이 길어질수록 가 1에서 멀어지는 random walk를 보인다.
, 평균 (moderate saturation)이면 effective rate는 . 100 step 후 gradient는 . 를 아무리 잘 맞춰도 saturation 하나가 학습을 파괴할 수 있다.
세 가지 대응과 그 한계
이 문제에 대한 대응은 크게 세 방향으로 나뉜다.
Gradient Clipping (Pascanu 2013). Exploding을 막는 가장 단순한 도구다.
방향은 보존하고 magnitude만 이하로 cap한다. PyTorch의 clip_grad_norm_이 이를 구현하며, 현대 LLM 학습에서도 이 표준이다. 그러나 clipping은 exploding만 치료한다. 인 vanishing에는 개입할 수 없다.
Orthogonal Initialization (Saxe 2014). 이면 모든 singular value가 정확히 1이 되어 이 보장된다. Linear RNN에서 orthogonal 는 을 모든 에서 정확히 유지한다. Saturation이 없는 linear regime에서는 완벽한 해법이다. 그러나 tanh의 saturation은 여전히 을 만들고, weight drift로 orthogonality도 학습 중 무너진다.
IRNN — Identity Init + ReLU (Le 2015). , activation은 ReLU. Positive region에서 Jacobian은 로, active neuron에서 gradient가 정확히 보존된다.
이는 ResNet의 residual connection을 RNN에 적용한 것이다. Adding Problem 에서 LSTM과 거의 동등한 성능을 파라미터 1/4로 달성했다. 대신 ReLU의 unbounded 출력이 exploding 위험을 높여 gradient clipping이 필수다.
트레이드오프
| 기법 | Vanishing 대응 | Exploding 대응 | 한계 |
|---|---|---|---|
| Gradient Clipping | 없음 | 강력 | vanishing 무력 |
| Orthogonal Init | 중간 (linear만) | 중간 | saturation, drift |
| IRNN | 강함 (active region) | 취약 (clipping 필요) | dead unit, positional 손실 |
| LSTM | 가장 강함 (CEC) | 중간 | 파라미터 4배, 복잡도 |
세 기법을 합산해도 vanishing의 근본 원인인 matrix product의 곱셈적 누적은 남는다. LSTM이 진정한 돌파구인 이유는 cell state의 additive update
로 이 곱셈을 우회하기 때문이다. Transformer는 한 걸음 더 나아가 product 자체를 attention으로 대체한다.
정리
- 이면 gradient는 지수적으로 소멸한다. 이는 “어려움”이 아니라 선형대수의 필연이다.
- 유지는 saturation과 weight drift 두 힘에 의해 실전에서 거의 불가능하다.
- Gradient clipping, orthogonal init, IRNN은 각각 증상·초기조건·Jacobian 구조를 공략하는 보완적 도구다.
- 세 기법의 공통 한계가 LSTM과 Transformer의 architectural 혁신을 필연으로 만들었다.