시간은 데이터가 아니라 구조
인간의 행동과 언어와 선택은 단일 순간의 사건이 아닙니다. 그것들은 항상 시간 위에 펼쳐진 흐름으로 존재합니다. 우리가 어떤 말을 이해할 때도, 어떤 행동의 의도를 해석할 때도, 우리는 그 이전에 무엇이 있었는지와 이후에 무엇이 기대되는지를 함께 고려합니다. 같은 말이라도 언제 나왔는지에 따라 의미가 달라지고, 같은 행동이라도 이전의 선택 맥락에 따라 전혀 다른 의도로 해석됩니다. 이러한 연속성과 맥락을 하나의 구조로 다루는 개념이 바로 시퀀스(sequence)입니다.
AI가 시퀀스를 다룬다는 것은 단순히 여러 입력을 순서대로 처리한다는 뜻이 아닙니다. 시퀀스를 이해한다는 것은 과거의 정보가 현재에 어떤 영향을 미치고, 현재의 상태가 미래의 선택을 어떻게 제약하는지를 모델 내부에 표현한다는 뜻입니다. 이는 단순한 입력 누적이나 기억 저장과는 전혀 다른 문제입니다. 시퀀스 모델은 시간의 흐름 속에서 정보의 중요도가 어떻게 변하는지, 무엇이 유지되고 무엇이 잊혀져야 하는지를 스스로 결정해야 합니다.
이 글은 인공지능이 시퀀스를 다루기 위해 어떤 구조적 시도를 해왔는지를 단계적으로 살펴보는 글입니다. 순환 신경망에서 시작해 장단기 기억 네트워크와 게이트 순환 유닛을 거쳐, 트랜스포머에 이르기까지의 흐름을 통해 하나의 질문을 반복적으로 던집니다. 시퀀스를 처리한다는 것은 단순한 기술 문제가 아니라, 시간과 기억과 상태를 어떻게 정의하느냐의 문제라는 점입니다.
시퀀스란 무엇인가: 시간·행동·문맥의 결합

시퀀스란 여러 개의 데이터가 나열된 집합이 아닙니다. 시퀀스는 순서 자체가 의미를 가지는 데이터의 구조입니다. 각 요소는 독립적으로 해석되지 않으며, 이전 요소와 이후 요소와의 관계 속에서만 의미를 갖습니다. 시퀀스의 핵심은 개별 항목이 아니라, 항목들 사이의 연결과 흐름입니다.
시간은 시퀀스를 정의하는 가장 기본적인 축입니다. 이 시간은 물리적인 시계 시간일 수도 있고, 논리적인 순서일 수도 있습니다. 중요한 점은 순서가 바뀌면 의미가 바뀐다는 사실입니다. 같은 단어들이라도 배열 순서가 달라지면 문장의 의미는 완전히 달라집니다. 행동 로그에서도 클릭의 순서가 바뀌면 사용자의 의도 해석은 전혀 달라집니다.
특히 사용자 행동을 다루는 시스템에서 시퀀스는 행동의 연속으로 나타납니다. 사용자는 한 번의 클릭으로 자신의 의도를 드러내지 않습니다. 탐색하고, 비교하고, 망설이고, 다시 돌아오는 일련의 행동을 통해 점진적으로 상태를 드러냅니다. 이때 개별 행동은 단서일 뿐이며, 행동의 순서와 조합이 의미를 만듭니다.
문맥은 시퀀스를 단순한 나열이 아닌 의미 구조로 만드는 핵심 요소입니다. 같은 행동이라도 문맥에 따라 전혀 다른 의미를 가집니다. 처음 보는 상품을 클릭하는 행동과 이미 여러 번 본 상품을 다시 클릭하는 행동은 이벤트 수준에서는 동일해 보이지만, 문맥이 다르기 때문에 해석은 완전히 달라집니다.
시퀀스를 이해한다는 것은 각 시점의 관측을 독립적으로 처리하지 않는다는 뜻입니다. 현재의 입력은 항상 과거의 축적 위에서 해석됩니다. 이때 중요한 점은 모든 과거 정보가 동일한 중요도를 갖지 않는다는 사실입니다. 어떤 정보는 오래 유지되어야 하고, 어떤 정보는 빠르게 사라져야 합니다. 이 지점에서 시퀀스는 단순한 기록이 아니라, 상태의 흔적으로 이해됩니다.
RNN, LSTM, GRU는 왜 등장했는가
초기의 AI 모델들은 시퀀스를 제대로 다루지 못했습니다. 입력을 하나의 고정된 벡터로 처리하는 방식은 순서가 중요한 데이터를 설명할 수 없었기 때문입니다. 문장의 의미는 단어의 집합이 아니라 단어의 순서에서 나오고, 사용자의 의도는 행동의 목록이 아니라 행동의 흐름에서 나타납니다. 이러한 문제의식 속에서 등장한 구조가 순환 신경망(Recurrent Neural Network)입니다.
순환 신경망은 이전 시점의 정보를 현재 시점의 계산에 다시 사용하는 구조입니다. 이전 시점의 내부 상태는 과거 정보를 요약한 기억처럼 작동하며, 현재 입력은 이 기억 위에서 해석됩니다. 이는 시퀀스를 처음으로 구조적으로 다루려는 시도였습니다. 그러나 이 구조는 곧 한계를 드러냈습니다. 학습 과정에서 기울기 소실과 기울기 폭주 문제가 발생했고, 그 결과 먼 과거의 정보는 제대로 유지되지 못했습니다.
이 한계를 극복하기 위해 등장한 구조가 장단기 기억 네트워크(Long Short-Term Memory)입니다. 장단기 기억 네트워크는 게이트 구조를 통해 어떤 정보는 유지하고 어떤 정보는 잊을지를 선택적으로 제어합니다. 이를 통해 장기 의존성 문제를 어느 정도 완화할 수 있었습니다.
게이트 순환 유닛(Gated Recurrent Unit)은 이 구조를 단순화한 형태입니다. 핵심 아이디어는 유지하되 계산 구조를 줄여 효율을 높인 모델입니다. 이 세 모델은 공통적으로 “과거 정보를 하나의 내부 상태로 요약해 전달한다”는 접근을 취합니다. 이는 효율적이지만, 동시에 중요한 정보를 잃어버릴 위험을 내포합니다.
Transformer는 무엇을 해결했고, 무엇을 남겼는가
트랜스포머(Transformer)는 시퀀스를 다루는 방식에 큰 전환점을 만든 구조입니다. 이 모델은 순차적 계산을 제거하고, 시퀀스 전체를 동시에 바라보는 방식을 택했습니다. 그 핵심이 바로 어텐션(attention) 메커니즘입니다.
트랜스포머는 모든 토큰을 동시에 놓고, 각 토큰이 다른 토큰들과 어떤 관계를 맺고 있는지를 계산합니다. 이를 통해 계산의 병렬화가 가능해졌고, 장기 의존성 문제를 직접 참조 방식으로 완화할 수 있었습니다. 이 구조 덕분에 대규모 언어 모델과 멀티모달 모델이 가능해졌습니다.
그러나 트랜스포머가 해결한 것은 시퀀스를 계산하는 방식이지, 시퀀스를 이해하는 방식 그 자체는 아닙니다. 트랜스포머는 상태를 명시적으로 표현하지 않습니다. 내부에는 수많은 벡터와 가중치가 존재하지만, 그것이 하나의 일관된 상태 개념으로 정리되지는 않습니다. 모델은 다음 토큰을 확률적으로 잘 예측하지만, 지금 어떤 상태에 있는지를 구조적으로 유지하지는 않습니다.
Attention은 기억이 아니라 선택
어텐션은 흔히 기억 메커니즘처럼 설명되지만, 본질은 선택입니다. 어텐션은 과거를 저장해 두었다가 꺼내는 구조가 아닙니다. 현재의 계산 목적에 따라, 과거 전체 중 무엇을 참고할지를 매번 새롭게 선택하는 구조입니다.
이 방식은 강력합니다. 멀리 떨어진 정보라도 현재와 관련이 있다면 즉시 연결할 수 있습니다. 그러나 이 선택은 상태를 형성하지 않습니다. 과거와 현재를 하나의 연속된 상태로 묶지 않기 때문에, 상태의 변화 과정은 모델 내부에 남지 않습니다. 어텐션은 순간적인 중요도 판단의 스냅샷일 뿐, 지속적인 내부 상태는 아닙니다.
긴 시퀀스 문제는 계산의 문제가 아니라 구조의 문제
긴 시퀀스 문제, 즉 장기 의존성 문제는 시퀀스 모델의 본질적인 한계입니다. 중요한 것은 과거 정보가 남아 있는지가 아니라, 그 과거가 현재 상태에 어떻게 통합되었는지입니다. 순환 모델에서는 정보가 희석되고, 트랜스포머에서는 정보가 매번 새롭게 선택될 뿐 누적되지 않습니다.
이 문제의 핵심은 시퀀스를 관측의 나열로 볼 것인가, 상태의 전이로 볼 것인가의 선택입니다. 관측 중심 모델은 패턴에는 강하지만, 상태 변화에는 취약합니다. 이 한계는 이후에 등장하는 상태 공간 모델(SSM, State Space Model)과 순환 상태 공간 모델(RSSM, Recurrent State Space Model)이 왜 필요한지를 설명하는 출발점입니다.
다음 글에서는 시퀀스를 상태의 연속적인 변화로 재정의하는 접근, 즉 상태 중심 모델링이 어떻게 이 한계를 돌파하는지를 다루게 됩니다. 이는 단순한 모델 교체의 이야기가 아니라, AI가 시간을 사고하는 방식 자체를 바꾸는 이야기입니다.