
RNN은 텍스트, 음성, 시계열처럼 순서가 중요한 데이터를 처리하도록 설계된 신경망입니다. 각 시점 (t)에서 현재 입력과 이전 은닉 상태를 함께 사용해 새 은닉 상태를 만들고, 이 은닉 상태 (S_t)가 이전 입력 정보를 담는 메모리 역할을 합니다.1
하지만 RNN의 강점인 “순서에 따른 메모리”는 학습 단계에서 병목이 됩니다. 전통적인 BPTT는 RNN을 시간축으로 펼친 뒤 여러 시간 단계에 걸쳐 기울기를 계산합니다. 이 방식은 이전 은닉 상태들이 현재 출력에 미친 영향을 반영할 수 있지만, 시간 방향으로 순차적으로 동작하기 때문에 병렬화가 제한됩니다. 긴 시퀀스에서는 기울기 소실·폭주로 장거리 연관성을 배우기 어렵다는 문제도 있습니다.12
SMT는 무엇을 바꾸는가
Supervised Memory Training, 줄여서 SMT의 핵심은 RNN 학습 문제를 다시 정의하는 데 있습니다. 질문은 “긴 시퀀스 전체를 어떻게 끝까지 역전파할 것인가?”가 아니라 “무엇을 메모리로 남겨야 하며, 그 메모리를 한 단계 뒤로 어떻게 갱신할 것인가?”로 바뀝니다.
논문은 SMT가 비선형 RNN 학습을 “한 단계 메모리 전이 라벨에 대한 지도학습 문제”로 바꾼다고 설명합니다.2 즉, RNN이 긴 시간축 전체를 통해 간접적으로 메모리를 배우게 하는 대신, 현재 메모리와 다음 입력을 바탕으로 다음 메모리를 예측하도록 학습시킵니다.
이 관점에서 SMT는 메모리의 내용과 메모리 업데이트 규칙을 분리합니다. 먼저 “좋은 메모리란 무엇인가”를 정의하고, 그다음 RNN이 그 메모리를 한 단계씩 따라가도록 훈련합니다.
기억은 과거 전체가 아니라 미래 예측에 필요한 압축이다
SMT에서 기억해야 할 것은 과거의 모든 정보가 아닙니다. 핵심은 미래를 예측하는 데 필요한 과거의 압축 표현입니다. 논문에서는 이를 위해 Transformer 기반 인코더를 사용해 예측 상태 목표를 학습합니다.2
이 분리가 중요한 이유는 기존 RNN 학습과 비교하면 분명해집니다. 기본 RNN은 현재 입력 (X_t)와 이전 은닉 상태 (S_{t-1})를 결합한 뒤 활성화 함수를 적용해 새 은닉 상태를 만듭니다.1 BPTT에서는 이 갱신 규칙과 메모리의 의미를 긴 역전파 과정 안에서 함께 학습합니다.
반면 SMT는 “어떤 상태가 유용한 메모리인가”를 먼저 감독 신호로 만들고, RNN은 그 상태 전이를 배우는 데 집중합니다. 그래서 학습의 초점이 긴 시간축 전체의 역전파에서, 한 단계 메모리 전이를 맞히는 문제로 이동합니다.
왜 시간 병렬 학습이 중요한가
SMT가 주목받는 이유는 시간 병렬 방식으로 RNN을 학습할 수 있다는 점입니다. BPTT는 시간 순서대로 펼친 계산 그래프에 의존하기 때문에 긴 시퀀스일수록 병렬화가 어렵습니다.2 SMT는 이 병목을 줄이기 위해 RNN을 반복적으로 펼쳐 학습하는 대신, 메모리 전이 라벨을 이용한 지도학습 형태로 문제를 바꿉니다.
논문은 이 접근이 토큰 사이의 기울기 경로를 안정적인 (O(1)) 길이로 유지할 수 있다고 주장합니다.2 긴 문맥이나 긴 시계열처럼 멀리 떨어진 정보가 중요한 작업에서는 이 점이 특히 의미가 있습니다. 학습이 시간축 전체의 긴 의존성에 덜 묶이면, RNN의 순차 처리 구조가 갖는 비용을 줄일 가능성이 생기기 때문입니다.
적용할 때 봐야 할 점
SMT를 이해할 때 중요한 판단 기준은 세 가지입니다.
첫째, 메모리 라벨을 만드는 비용입니다. SMT는 좋은 메모리 목표를 필요로 하며, 논문에서는 Transformer 기반 인코더가 그 역할을 합니다.2 따라서 RNN 자체의 학습이 단순해지더라도, 메모리 목표를 만드는 과정의 비용을 함께 고려해야 합니다.
둘째, 기존 BPTT 대비 전체 학습 비용입니다. SMT는 시간 병렬 학습이라는 장점을 제시하지만, 실제 적용에서는 메모리 라벨 생성과 RNN 학습을 포함한 전체 파이프라인을 비교해야 합니다.
셋째, 해결하려는 문제가 정말 긴 의존성을 필요로 하는지입니다. SMT의 장점은 긴 문맥과 장거리 연관성에서 더 분명해질 수 있습니다. 반대로 짧은 시퀀스나 단순한 패턴에서는 복잡한 학습 절차가 항상 이득이 된다고 볼 수는 없습니다.
결론: RNN을 다시 설계 가능한 메모리 모델로 보기
SMT의 의미는 RNN을 단순히 “오래된 순환 구조”로 되살리는 데 있지 않습니다. 더 중요한 점은 RNN의 메모리를 직접 정의하고 감독할 수 있는 대상으로 바꾼다는 것입니다.
기존 BPTT가 긴 시간축을 따라 메모리와 갱신 규칙을 함께 배우는 방식이었다면, SMT는 기억해야 할 내용을 먼저 압축 표현으로 만들고, RNN이 그 표현을 한 단계씩 갱신하도록 학습합니다. 이 전환은 RNN을 시간 병렬 학습이 가능한 구조로 다시 바라보게 만듭니다.
따라서 SMT를 볼 때의 핵심 질문은 “RNN이 Transformer를 대체할 수 있는가?”가 아닙니다. 더 실용적인 질문은 “긴 순서 데이터에서 어떤 정보를 메모리로 감독할 수 있으며, 그 감독 신호를 만드는 비용이 학습 효율의 이득보다 작은가?”입니다. 이 기준이 맞는 문제라면, SMT는 RNN을 긴 시퀀스를 다루는 효율적인 선택지로 다시 검토하게 만드는 접근입니다.
1Back Propagation through time in RNN - GeeksforGeeks
2[2606.06479] Pretraining Recurrent Networks without Recurrence
이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.
