Skip to Content

6주차 - Mamba: Linear-Time Sequence Modeling with Selective State Spaces(2023.12)


💡 이번주 논문!

Mamba: Linear-Time Sequence Modeling with Selective State Spaces(2023.12)

https://arxiv.org/abs/2312.00752 


State space

상태 공간(state space)을 설명하기 위해, 제어 이론에서 흔히 사용되는 선형 시스템의 상태 공간 표현을 예로 들어볼 수 있습니다. 선형 시스템은 다음과 같은 형태의 두 선형 방정식으로 표현

상태 방정식 (State Equation):

x˙(t)=Ax(t)+Bu(t)\dot{x}(t) = Ax(t) + Bu(t)

여기서,

출력 방정식 (Output Equation):

y(t)=Cx(t)+Du(t)y(t) = Cx(t) + Du(t)

여기서,

이러한 표현은 시스템의 현재 상태가 미래 상태와 출력에 어떻게 영향을 미치는지 설명 상태 벡터 x(t)x(t)는 시스템의 현재 상태를 요약하며, 입력(u(t)u(t)에 따라 시간이 지남에 따라 어떻게 변화하는지를 모델링 상태 공간 접근 방식은 시스템의 동적 행동을 이해하고 제어하는 데 매우 유용 이는 복잡한 시스템을 간결하게 표현하고, 시스템의 안정성, 제어 가능성, 관측 가능성과 같은 중요한 특성을 분석하는 데 사용


https://prod-files-secure.s3.us-west-2.amazonaws.com/f3535685-35fc-415f-ab26-2bdf33ef3241/8b6b4fdd-faf6-4fc9-867e-2e074b6ca2c3/Mamba_Slides.pdf?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=ASIAZI2LB466XH6L56JS%2F20260709%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20260709T044033Z&X-Amz-Expires=3600&X-Amz-Security-Token=IQoJb3JpZ2luX2VjEMz%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEaCXVzLXdlc3QtMiJGMEQCIF3la28OnU9Y5iVIEJtsVGhK%2F7bohuBV8%2Bwlfb5AyAMiAiAXA32%2BY4luWI3u8TTvz53GJ1sr6auFMz4kiK02RI4UnyqIBAiV%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F8BEAAaDDYzNzQyMzE4MzgwNSIMdHGdKPwNNouJGZ0OKtwDcq8tPDoc2o%2Bm%2BmoP8wtOQn0maDVIRhv000WvJpGUIQkac3QVX0Ot1qAXQMww90Z8s7XVIVWqE%2BSE2cXhoCUlp5PGaNCFdMNtVD7PpFkPQQsNXP3nrBWpYs%2FIeC5JyKO%2FY26X%2FKV%2BWEYolGAa9tuG3ISkzANO9iJad8I0B7PpRMxIhK4n0p73nwVrzdxYrJmbRnSjMVGZisIBvGu1zIFLMD%2BuxXQ00dl8Z%2B7t53OxA1%2F0dAQSXw7%2BdqMfCAHfUgBSmD8ZPu%2FZXbXhkogLcAl5MxKgFeCSmF8gv48UXVN2uiWrcyN1Jf9Tpq3yydI2xtJV7g52zl%2FtMKCdNHisTXDsdU0mGJXcBiHXN4dFDK55SYKd8iuUo5yMTuY2Lsh4CgLCrylQQkXgkdXH2hz9TBPaNXQ36vH%2FhXRbtFE6aE60NGT6AUY3T%2Btt1iqfbSxl6kM8iIeRUqxT9y0Po6WvJ3fBwZ2r1xnsCWvhuaCeMKEab%2B9bo84XpqWne9SVG7%2Bcgy2aBv2PhKiGAiuyICuU5%2FgxXoQmY179z16XEYbSripbLgiOFSCGuSgohM2IpPXTL%2FcYIOspNAA1cRUGEFGnaMle%2B0GtPdFuwe9EGwn6u1t4nWC3r7CXm9h1N4UsECowr7i80gY6pgE24uaNxFnSctuPC92k4yZeZhCCp2vE1zP17H3UFoceRh61lEwF1qNNRbY3RWbtuoQ4pLIkjiiKZi285bUsqwokFfWlE8aVnXyJHgaRT5Bnt4ljh%2BKBhgAIYbOgFEfmavwEs%2Ff4Vd9C0hIKHe0ZebTEzcUZgi6J93CUqDjsYinfX9MyT7H178z39wyk4exefYhbttKzvdtf7k%2FXe6ZTjhY8LpMP3Tah&X-Amz-Signature=8c2c33a313e7377f8327da8f0d889359d02dd1414436831798f49892db54c024&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject 

Zero-Order Hold (ZOH)


참고자료

  • HiPPO: Recurrent Memory with Optimal Polynomial Projections https://proceedings.neurips.cc/paper/2020/file/102f0bb6efb3a6128a3c750dd16729be-Paper.pdf 

  • Combining Recurrent, Convolutional, and Continuous-time Models with Linear State Space Layers https://proceedings.neurips.cc/paper_files/paper/2021/hash/05546b0e38ab9175cd905eebcc6ebb76-Abstract.html 

  • Efficiently Modeling Long Sequences with Structured State Spaces https://arxiv.org/abs/2111.00396 

  • How to Train Your HiPPO: State Space Models with Generalized Orthogonal Basis Projections https://openreview.net/pdf?id=klK17OQ3KB 

    • SSM, State Space Models 모델들은 원래 공학 및 통계학에서 사용되던 고전적인 모델이지만, 구조화된 상태 공간 시퀀스 모델(S4, Structured State Space sequence model)을 통해 머신 러닝에서의 잠재력이 드러났습니다. S4의 핵심 구성 요소 중 하나는 SSM의 상태 행렬을 특정 행렬, 즉 HiPPO(History-Indexed Polynomial Projection Operator) 행렬로 초기화하는 것입니다. 이 행렬은 S4가 긴 시퀀스를 처리하는 능력에 있어서 경험적으로 중요한 것으로 밝혀졌습니다. 그러나 S4가 사용하는 구체적인 행렬은 실제로 이전 작업에서 특정한 시간 변화하는 동적 시스템에 대해 유도된 것이며, 시간 불변 SSM으로서의 사용은 수학적 해석이 없었습니다. 따라서 S4가 장거리 의존성을 모델링하는 이론적 메커니즘은 여전히 설명되지 않았습니다.

이에 대해 HiPPO 프레임워크의 보다 일반적이고 직관적인 공식을 유도하였습니다. 이는 S4를 지수적으로 왜곡된 르장드르 다항식으로 분해하는 것으로 해석할 수 있으며, 이를 통해 장거리 의존성을 포착하는 능력을 설명합니다. 이 일반화는 이론적으로 풍부한 SSM의 새로운 클래스를 소개하며, 푸리에 기저와 같은 다른 기저에 대한 직관적인 S4 변형을 유도할 수 있도록 합니다. 또한, S4를 훈련하는 데 중요한 시간 척도 매개변수를 초기화하는 방법과 같은 다른 측면들도 설명합니다. 이러한 통찰력은 Long Range Arena 벤치마크에서 S4의 성능을 86%로 향상시켰으며, 가장 어려운 Path-X 작업에서는 96%의 성과를 달성했습니다.

요약하면, 이 연구는 S4 모델의 핵심 구성 요소인 HiPPO 행렬의 보다 일반적이고 직관적인 이해를 제공하며, 이를 통해 S4가 장거리 의존성을 효과적으로 모델링할 수 있는 이유를 설명합니다. 이러한 이해는 S4의 성능을 크게 향상시키는 데 기여했습니다.


만족도 조사 https://form.typeform.com/to/dtEo7AIA