RNN 변형들이 공유하는 하나의 질문
양방향 컨텍스트부터 외부 메모리, 무작위 저수지까지 — RNN 확장의 네 가지 방향이 모두 같은 병목을 다른 방식으로 돌파한다는 것을 추적한다.
- 01 RNN은 왜 sequence를 기억하는가
- 02 RNN 학습은 왜 이렇게 설계됐는가
- 03 RNN Gradient 소멸은 왜 피할 수 없었나
- 04 LSTM은 어떻게 vanishing gradient를 피하는가
- 05 RNN 변형들이 공유하는 하나의 질문
- 06 Attention은 어떻게 Seq2Seq의 병목을 뚫었는가
- 07 RNN이 Transformer에 밀린 이유, 그리고 Mamba가 돌아온 이유
LSTM은 순환 신경망의 한계를 돌파했다. 그런데 그 LSTM조차 사람들은 계속 바꾸려 했다 — 양방향으로, 더 깊게, 외부 메모리를 달아서, 심지어 학습 자체를 없애버리는 방식으로. 이 챕터에서 다루는 네 가지 변형은 제각각 다른 것처럼 보이지만, 사실 모두 동일한 질문을 던지고 있다. 단일 히든 벡터 안에 시퀀스의 모든 것을 압축하는 방식, 그 자체가 옳은가?
병목의 정체
표준 RNN이 공유하는 가정이 하나 있다. 위치 에서의 표현은 오직 과거 의 함수여야 한다는 것. 이 단방향성은 자연스럽게 느껴지지만, 실제 언어와 신호에서 현재 토큰의 의미는 미래에도 달려 있다. “He saw her duck” 에서 “duck”이 명사인지 동사인지는 뒤따라오는 단어를 봐야 결정된다.
두 번째 가정은 평탄함이다. 단층 RNN은 단일 비선형 변환 이후 곧바로 출력을 만든다. 어휘 수준의 특징과 문장 수준의 의미가 같은 히든 벡터 안에 뒤섞인다.
세 번째 가정은 내재성이다. 모든 기억은 라는 유한한 실수 벡터 안에 있어야 한다. 외부에 별도 저장소를 두거나 참조하는 개념 자체가 없다.
네 가지 변형은 각각 이 가정 중 하나를 정면으로 공격한다.
BiLSTM — 단방향성의 해체
Bidirectional RNN (Schuster & Paliwal, 1997)의 핵심은 간단하다. Forward와 backward 두 개의 독립된 LSTM을 병렬로 돌리고 각 위치에서 히든을 이어 붙인다.
는 를, 는 를 인코딩한다. 이론적으로 는 시퀀스 전체 의 정보를 담는다. NER이나 POS tagging처럼 각 토큰에 레이블을 붙이는 작업에서 BiLSTM이 단방향 LSTM을 압도하는 이유가 여기 있다. Lample et al. (2016)의 BiLSTM-CRF는 CoNLL-2003 NER에서 SOTA를 달성했는데, CRF의 전이 스코어 가 BiLSTM의 발화 스코어에 시퀀스 일관성 제약을 더한 것이다.
양방향 컨텍스트를 얻으려면 시퀀스 전체가 필요하다. Forward는 토큰이 들어올 때마다 업데이트할 수 있지만, Backward는 마지막 토큰이 도착한 뒤에야 시작할 수 있다. 스트리밍이나 실시간 음성 인식에서는 원천적으로 사용이 불가하다.
Stacked RNN — 평탄함의 해체
단층 RNN에 레이어를 쌓으면 표현이 계층화된다.
CNN이 엣지 → 텍스처 → 오브젝트로 추상화 수준을 높이듯, Stacked LSTM은 단어 → 구 → 문장 수준의 특징을 각 레이어에 분산할 수 있다. Google NMT (Wu et al., 2016)가 8-layer LSTM으로 WMT 번역 SOTA를 달성한 것은 이 원칙의 극단적 적용이다.
그러나 깊이가 늘면 새로운 문제가 생긴다. 그래디언트가 시간 축뿐 아니라 깊이 축에서도 감쇠한다.
개의 야코비안 곱 — 시간 방향 소실과 구조적으로 동일하다. Google NMT가 학습 안정성을 확보한 방법은 ResNet에서 빌린 수직 잔차 연결이었다.
항이 그래디언트 고속도로 역할을 한다.
NTM — 내재 메모리의 해체
Graves et al. (2014)의 Neural Turing Machine은 가장 급진적인 질문을 던진다. 기억을 안에 쑤셔 넣어야 하는가? LSTM의 히든이 개의 실수라면, NTM은 크기의 외부 메모리 행렬 를 따로 둔다.
읽기와 쓰기는 모두 어텐션으로 수행된다.
쓰기는 지우기(erase)와 더하기(add)로 분리된다. 이 두 단계 분리가 핵심이다 — 단순 덮어쓰기는 소프트 어텐션 환경에서 의미가 불명확하기 때문이다. 복사 태스크에서 LSTM이 30 토큰을 넘어서면 급격히 무너지는 반면 NTM은 100+ 토큰까지 일반화한다.
Echo State Network — 학습 자체의 해체
Jaeger (2001)의 ESN은 반대 방향을 택한다. 와 를 무작위로 고정하고 출력 레이어 만 선형 회귀로 학습한다.
학습 비용이 으로 한 번의 패스로 끝난다. BPTT를 수백 에포크 돌리는 LSTM과는 차원이 다른 속도다.
안정성은 스펙트럼 반지름으로 보장된다.
이면, 동일한 입력 시퀀스에 대해 임의의 두 초기 상태 에서 출발한 궤적이 시간이 지남에 따라 수렴한다.
의 립시츠 상수가 1이므로, . 이면 적절한 행렬 노름에서 이 성립(Gelfand 공식의 점근적 결과)하므로 수렴이 지수적으로 보장된다.
카오스 시계열(Mackey-Glass 등) 예측에서 ESN은 LSTM보다 빠르고 경쟁력 있는 성능을 보인다. 단, 태스크 특화 표현을 학습하지 않기 때문에 NLP나 비전에서는 LSTM에 뒤진다.
트레이드오프
네 가지 변형의 설계 공간을 나란히 놓으면 패턴이 보인다.
| 변형 | 해결한 병목 | 새로 생긴 제약 |
|---|---|---|
| BiLSTM | 단방향 컨텍스트 | 스트리밍 불가 |
| Stacked LSTM | 표현의 평탄함 | 수직 기울기 소실, 계산 비용 |
| NTM | 메모리 용량 | 학습 불안정, 구현 복잡도 |
| ESN | 학습 비용 | 태스크 특화 표현 부재 |
네 변형 모두 RNN의 한계를 돌파하지만, 각각 다른 축에서 새로운 제약을 만든다. Transformer는 이 네 가지 문제를 단일 셀프 어텐션 메커니즘으로 동시에 우회했다 — 양방향성, 깊이, 외부 메모리 유사성, 그리고 병렬 학습. 이것이 Transformer가 패러다임 교체가 된 이유다.
정리
- BiLSTM은 로 단방향 가정을 깨되, 전체 시퀀스 가용성이라는 비용을 치른다.
- Stacked LSTM은 계층적 표현을 얻지만, 수직 기울기 소실을 잔차 연결로 별도 처리해야 한다.
- NTM은 외부 메모리와 미분 가능 어드레싱으로 메모리 병목을 해제하며, Transformer 어텐션의 구조적 조상이다.
- ESN은 학습을 선형 회귀로 환원해 속도를 얻지만 표현 최적화를 포기한다.
네 가지 해법이 서로 다른 축을 공격하고 있다는 사실 자체가 단일 히든 벡터 패러다임의 근본 한계를 증언한다.