LSTM: 상수 오차 회전목마로 1000스텝의 시간 간격을 건너다
한 줄 요약
RNN이 긴 시간 간격을 학습하지 못하는 이유는 알고리즘 탓이 아니라 오차 역류(error backflow)의 구조적 문제다 — 역전파 오차는 시간을 거슬러 갈 때마다 곱으로 스케일되어 지수적으로 소멸하거나 폭발한다. LSTM은 오차가 스케일 없이 흐르는 통로(자기 재귀 가중치 1.0의 선형 유닛, 상수 오차 회전목마 CEC)를 만들고, 그 통로의 읽기/쓰기를 곱셈형 게이트로 통제해 1000스텝 이상의 최소 시간 간격 문제를 상수 시간 복잡도 로 푼다.
문제 분석 — 왜 오차는 사라지는가
Hochreiter(1991)의 분석을 따라, 유닛 의 시각 오차가 스텝 이전의 유닛 로 역전파될 때의 스케일 인자는 모든 경로에 대한 곱들의 합이다:
이면 오차가 에 지수적으로 폭발해 가중치가 진동하고, 이면 지수적으로 소멸해 아무것도 배울 수 없다. 로지스틱 시그모이드는 이므로 가중치 절대값이 4.0 미만이면(학습 초기가 특히 그렇다) 오차 흐름은 소멸 쪽으로 밀린다. 초기 가중치를 키우거나 학습률을 올리는 것으로는 해결되지 않는다 — 장거리 오차와 단거리 오차의 비율 자체가 바뀌지 않기 때문이다.
핵심 기여
-
상수 오차 회전목마 (CEC): 단일 유닛 를 통과하는 오차 흐름이 상수가 되려면 이어야 하고, 이를 적분하면 는 선형이고 활성이 일정하게 유지되어야 한다는 결론이 나온다. 실험에서는 , 으로 구현 — 이 자기 재귀 선형 유닛이 LSTM의 심장이다.
-
왜 게이트가 필요한가 — 입력/출력 가중치 충돌: 순진한 CEC의 문제는 유닛이 다른 유닛들과도 연결된다는 데 있다. 같은 입력 가중치 가 (1) 정보를 저장하는 역할과 (2) 무관한 입력으로부터 저장된 정보를 보호하는 역할을 동시에 해야 해서 상충하는 업데이트 신호를 받는다(입력 가중치 충돌). 출력 쪽도 마찬가지로 (1) 내용을 읽는 역할과 (2) 다른 유닛을 교란하지 않는 역할이 충돌한다. 이 충돌이 곱셈형 입력 게이트(쓰기 통제)와 출력 게이트(읽기 통제)를 도입하는 이유다.
-
메모리 셀: 번째 메모리 셀 의 동역학은
여기서 는 시그모이드 게이트 활성, 는 셀 입력을 squash하는 함수, 는 내부 상태를 스케일하는 함수다. 내부 상태 는 게이트가 닫혀 있는 한 덧셈으로만 갱신되므로 오차가 안에서 무한정 스케일 없이 순환할 수 있다. 같은 입력·출력 게이트를 공유하는 개의 셀을 묶은 메모리 셀 블록으로 분산 표현도 저장한다.
-
절단된 학습 규칙: RTRL 변형을 쓰되, 메모리 셀의 net 입력에 도착한 오차는 셀 내부 상태를 통해서만 시간을 거슬러 전파되고 그 밖으로는 절단된다. 덕분에 업데이트 복잡도가 가중치당 , 전체 이며, BPTT와 달리 공간과 시간 모두에서 국소적이다(시퀀스 길이에 비례하는 활성 스택이 필요 없다).
-
실전 장치들: 학습 초기에 셀이 바이어스 셀로 남용되는 문제(abuse problem)는 출력 게이트에 음수 초기 바이어스를 줘 해결하고, 내부 상태가 한 방향으로 흘러가는 drift는 입력 게이트를 초기에 0 쪽으로 바이어스해 막는다.
주요 결과
- 임베디드 Reber 문법(짧은 시간 간격 벤치마크)에서 RTRL/BPTT/Elman 망을 성공률과 속도 모두에서 크게 앞선다 — 출력 게이트의 효용을 보여주는 예시.
- 최소 시간 간격 1000스텝의 노이즈 시퀀스 문제를 풀어낸다. BPTT와 RTRL은 10스텝에서 이미 실패한다.
- 연속 실수값을 수백 스텝 동안 정확히 저장해야 하는 adding problem류의 과제, 그리고 멀리 떨어진 입력들의 시간적 순서를 구분해야 하는 과제 등, 이전의 어떤 순환망 알고리즘도 풀지 못한 인공 과제들을 해결했다.
- 저자들은 당시 유행하던 긴 시간 간격 벤치마크 다수가 무작위 가중치 추측만으로도 풀린다는 점을 지적하며, 실험을 추측이 불가능하도록 설계했다.
계보에서의 위치
이 논문의 LSTM에는 아직 forget 게이트가 없다 — 내부 상태는 리셋되지 않고 계속 쌓인다. forget 게이트(Gers et al. 1999)와 peephole 연결이 추가된 형태가 오늘날 표준 LSTM이고, 이후 GRU가 이를 단순화했다. NLP 관점에서 LSTM은 2010년대 중반까지 시퀀스 모델링의 기본 부품이었다: seq2seq 번역, ELMo의 양방향 언어 모델이 모두 LSTM 위에 서 있다. “덧셈 경로로 그래디언트를 보존한다”는 CEC의 아이디어는 residual connection과 Transformer 시대까지 이어지는, 딥러닝에서 가장 오래 살아남은 설계 원리 중 하나다.