AI바라기의 인공지능
개념정리 : SSM(state space model) 본문
1. '시간'을 바라보는 관점의 차이
RNN이나 트랜스포머에게 '시간'이란, 사실 시간이 아닙니다. 그냥 데이터가 들어온 '순서(Index)'일 뿐. 왜냐하면 t를 입력으로 받지 않기때문임.
하지만 SSM은 '시간($t$)'을 단순한 순서표가 아니라 진짜 물리적인 시간으로 모델링.
2. SSM의 핵심: 속도와 흐름 학습
SSM의 뼈대 수식인 $h'(t) = A h(t) + B x(t)$를 말로 풀면 이렇습니다.
"입력($x$)이 들어왔을 때, 내 상태($h$)가 1초당 얼마나 빠르게 변할 것인가($h'$)?”
즉, SSM은 다음 단어가 뭔지 단순 계산하는 게 아니라, 데이터가 시간에 따라 변화하는 '속도'와 '흐름(Dynamics)' 자체를 통째로 학습.
"그래서 시간을 명확히 모델링하면 AI에서 뭐가 좋은데?"
시간을 명확히 모델링했다는 것은 곧, 모델 내부에 **시간 조절 나사($\Delta$, 스텝 사이즈)**가 생겼다는 뜻입니다. 이게 엄청난 정보력, 데이터 사이의 시간 관계마저 활용할 수 있기 때문, 입력 순서보다 더 정보가 많음.
3. A행렬 초기화 문제와 HiPPO
근데 일단 A와 B가 학습가능하지만 아무값이나 초기화 하면 안됨. 안될이유는 없지만 잘 안된다고 함.
왜냐면 A의 거듭제곱 형태때문에 데이터의 수가 많아지면 A의 영향력이 매우 줄거나 매우 커짐.
그래서 적절한 값으로 검증된 초기값이 필요한데 그걸 수학적으로 찾았음.
어떻게 찾냐. HiPPO-LegS 에 때려 넣으면 된다고 함. 자세한건 패스.
4. 은닉 상태 $h$의 진짜 의미 (계수 $c$)
먼저 데이터를 대표하는 함수를 만들어야함. 베이시스와 c의 조합으로 만듬.
오차가 적어지는 방향으로 t에 대한 데이터를 예측(정확히는 과거를 시간 함수로 보고, 이를 basis 조합으로 온라인 근사/압축한다.).
이걸 회귀 같은 방식으로하는데 차이점은 회귀는 모든 데이터를 사용하지만 이건 입력 될떄마다 c를 업데이트해버림.
즉 h엔 데이터를 기억할수 있는 c들이 담겨있는 셈.
(정확히는 HiPPO 관점에서는 ℎt를 과거 함수의 basis 계수 벡터로 해석할 수 있다.)
5. 수식 전개 (추론 vs 학습)
그래서 수식을 다시쓰면 다음과 같다.
[추론(Inference) 시: RNN 형태]
이산화된 $\bar{A}$와 $\bar{B}$를 사용하면 우리가 아주 잘 아는 RNN의 형태가 됩니다. 추론(Inference)할 때 아주 가볍고 빠르게 한 글자씩 뱉어내는 수식입니다.
새로운 입력 $x_t$가 들어올 때마다 이전 상태 $h_{t-1}$에 $\bar{A}$를 곱해서 업데이트합니다.
[학습(Training) 시: 합성곱 / Transformer 형태]
이게 SSM이 트랜스포머를 이길 수 있는 무기입니다. $h_0 = 0$이라고 가정하고 위 이산 시간 수식을 쭉 전개해 보면 재미있는 패턴이 나옵니다.
이걸 가만히 보면, 입력 $x$에 어떤 '커널(Kernel)'을 곱해서 더하는 CNN(합성곱) 연산과 완전히 똑같아집니다. 이 커널 $\bar{K}$를 수식으로 묶으면 이렇습니다.
즉, 학습할 때는 과거의 모든 데이터를 RNN처럼 순차적으로 계산할 필요 없이, **커널 $\bar{K}$를 미리 계산해 두고 Transformer처럼 전체 데이터에 한 번에 빵! 하고 병렬 곱셈(Convolution)**을 해버립니다. 그래서 학습 속도가 엄청나게 빠른 것이죠.
(정확히는 “LTI SSM에서는 recurrence를 convolution kernel로 전개할 수 있어서, training 시 병렬 계산이 가능하다.”)
💡 정리
수식을 보면 SSM은 학습할 때는 CNN(합성곱)처럼 병렬로 빠르게 처리하고, 추론할 때는 RNN처럼 메모리를 적게 쓰면서 하나씩 가볍게 뽑아내는 야누스 같은 매력을 가진 모델입니다.
'인공지능' 카테고리의 다른 글
| 개념정리 : SSM 기반 LLM (0) | 2026.03.26 |
|---|---|
| 개념정리 : S4 : Structured State Space Model (0) | 2026.03.25 |
| 개념 정리 : Linear Recurrence (0) | 2026.03.25 |
| 개념정리 : Sparse Rate Reduction (0) | 2026.03.25 |
| 개념 정리 : LayerNorm (0) | 2026.03.16 |
