입력을 앞에서부터 읽으며 내용을 고정 크기의 '상태'에 압축해 들고 가는 모델 구조로, 모든 토큰을 서로 비교하는 Transformer와 달리 입력이 길어져도 계산량이 길이에 비례해서만 늘어난다. 아주 긴 시퀀스를 빠르고 가볍게 처리해야 할 때 Transformer 대신 쓰거나 함께 쓴다.
| 항목 | Transformer (어텐션) | SSM (Mamba 등) |
|---|---|---|
| 계산량 | 길이의 제곱 | 길이에 비례 |
| 생성할 때 메모리 | KV 캐시가 계속 커짐 | 상태 크기 고정 |
| 앞 내용을 그대로 찾기 | 강함 | 상대적으로 약함 |
| 도구·모델 생태계 | 매우 큼 | 작음 |
Self-Attention은 모든 토큰 쌍을 비교하므로 시퀀스가 두 배 길어지면 계산량이 네 배 늘어난다. 답을 생성할 때도 지나온 토큰을 모두 KV 캐시에 쌓아 두기 때문에 문맥이 길수록 메모리가 커진다.
SSM은 신호 처리에서 쓰던 상태 공간 개념을 신경망에 가져온 것이다. 새 토큰이 들어올 때마다 상태만 갱신하면 되므로 토큰 하나를 만드는 비용이 문맥 길이와 상관없이 일정하다.
초기 S4 계열은 긴 시퀀스에 강했지만, 언어처럼 내용에 따라 중요도가 달라지는 데이터에는 약했다. 2023년 나온 Mamba는 입력에 따라 상태 전이를 바꾸는 선택적 상태 공간을 도입해, 무엇을 기억하고 무엇을 흘려보낼지 모델이 직접 고르게 했다. 이후 Mamba-2가 나왔고, 어텐션 층과 Mamba 층을 섞은 하이브리드 구조도 활발히 연구되고 있다.
가장 쉬운 방법은 HuggingFace에 공개된 Mamba 계열 체크포인트를 Transformers 라이브러리로 불러 보는 것이다. 빠른 전용 커널을 쓰려면 공식 저장소의 mamba-ssm 패키지를 설치하는데, NVIDIA GPU와 CUDA 환경이 필요하다. 작업별로는 이렇게 판단하면 된다.
| 작업 | SSM 적합도 | 이유 |
|---|---|---|
| 생체 신호·오디오 같은 긴 연속 데이터 | 높음 | 길어져도 비용이 일정하다 |
| 긴 코드·로그 훑기 | 실험해 볼 만함 | 메모리 부담이 작다 |
| 긴 문서에서 특정 문장 정확히 찾기 | 낮음 | 압축하면서 세부가 빠질 수 있다 |
| 일반 챗봇·API 서비스 | 낮음 | Transformer 모델이 훨씬 많다 |
SSM은 모든 내용을 고정 크기 상태에 눌러 담기 때문에, 긴 문맥에서 특정 문장을 그대로 찾아 옮기는 일은 어텐션보다 약하다. 하이브리드 구조가 나온 것도 이 약점을 메우기 위해서다.
미세 조정 자료, 최적화된 서빙 도구, 공개 모델 수도 아직 Transformer보다 적다. 도입하기 전에 내 데이터로 속도와 품질을 직접 비교해 보는 게 안전하다.
단독으로 쓰기보다 길이 때문에 Transformer가 버거운 곳에 넣는 경우가 많다. 오디오나 생체 신호처럼 아주 긴 데이터를 다루거나, 어텐션 층과 섞어 긴 문맥을 싸게 처리하는 언어 모델을 만들 때 쓴다.
| 어디서 | 어떻게 쓰나 |
|---|---|
| 오디오·생체 신호 분석 | 몇 분에서 몇 시간 길이의 연속 신호를 잘게 자르지 않고 통째로 넣어 분류·예측한다 |
| 하이브리드 언어 모델 | 층 일부를 Mamba로 바꿔 긴 문맥의 메모리 부담을 줄이고, 정확한 찾기는 어텐션 층에 맡긴다 |
| 긴 코드·로그 실험 | 공개 Mamba 체크포인트로 긴 입력을 돌려 보고 Transformer와 속도·품질을 비교한다 |