본문 바로가기

AI/Paper - Theory

[Mamba 논문 리뷰 2] - LSSL: Combining Recurrent, Convolutional, and Continuous-time Models with Linear State-Space Layers

반응형

*Mamba 논문 리뷰 시리즈2 입니다! 궁금하신 점은 댓글로 남겨주세요!

시리즈 1: Hippo

시리즈 2: LSSL

시리즈 3: S4

시리즈 4: Mamba

시리즈 5: Vision Mamba


LSSL paper: [2110.13985] Combining Recurrent, Convolutional, and Continuous-time Models with Linear State-Space Layers (arxiv.org)

 

Combining Recurrent, Convolutional, and Continuous-time Models with Linear State-Space Layers

Recurrent neural networks (RNNs), temporal convolutions, and neural differential equations (NDEs) are popular families of deep learning models for time-series data, each with unique strengths and tradeoffs in modeling power and computational efficiency. We

arxiv.org

 

LSSL github: Combining Recurrent, Convolutional, and Continuous-time Models with Linear State-Space Layers | Papers With Code

 

Papers with Code - Combining Recurrent, Convolutional, and Continuous-time Models with Linear State-Space Layers

#2 best model for Sequential Image Classification on Sequential MNIST (Permuted Accuracy metric)

paperswithcode.com


Contents

1. Simple Introduction

2. Background Knowledge: HiPPO

3. Method

4. Result

5. Furthermore


Simple Introduction

HiPPO

Mamba 논문리뷰를 위한 첫번째 여정으로 우리는 HiPPO에 대해서 살펴봤었다!

SSM (state-space model)을 모델에 어떻게 넣는지, 그리고 measure을 통해서 A와 B matrix를 정의하고 이산적인 시간에 대해 dynamic linear system을 푸는 방법에 대해서 살펴봤다.

 

State space representation

LSSL은 linear state space layers의 약자로,

우리가 앞에서 살펴봤던 state-space representation 수식을 모델에 넣는 것이다.

즉, input 값 u를 output y로 매핑하는 과정을 SSM으로 구현한 것인데 한번 살펴보자!


Background Knowledge: HiPPO

HiPPO 논문 리뷰: https://kyujinpy.tistory.com/146

 

[Mamba 논문 리뷰 1] - HiPPO: Recurrent Memory with Optimal Polynomial Projections

*Mamba 논문 리뷰 시리즈1 입니다! 궁금하신 점은 댓글로 남겨주세요!시리즈 1: Hippo시리즈 2: LSSL시리즈 3: S4시리즈 4: Mamba시리즈 5: Vision MambaHiPPO paper: https://arxiv.org/abs/2008.07669 HiPPO: Recurrent Memory wit

kyujinpy.tistory.com

- Mamba 논문 리뷰 첫번째 시리즈인 HiPPO 입니다! (필수 X)

 

- HiPPO는 f(t)에 대해서 fixed probability measure를 통해 N개의 basis functions으로 구성된 polynomal g(t)를 생성하고, g(t)를 통해서 coefficients를 생성하는 f -> u 간의 mapping operator 모델입니다!


Method

LSSL

LSSL의 세가지 관점을 나타낸 이미지이다!

- Continous-time

- Recurrent

- Convolutional

 

Discretized SSM

우리는 여기서, recurrent와 convolutional을 집중적으로 보겠습니다!

가장 큰 차이점은, HiPPO 같은 경우에는 Coef.를 계산할 때 A, B, C, D가 fixed state space representation 이었습니다!

다만, LSSL은 fixed하지 않는 A, B, C, D를 동시에 활용합니다!


Recurrent

Recurrence

Recurrence의 아이디어는 매우 simple합니다!

- Input u_k가 들어왔을 때,

-> u_k에 B matrix를 곱하고 (linear)

-> 이전 hidden state cell의 X_k-1에 A matrix를 곱하고 (linear)

- X_k = u_k * B + X_k-1 * A로 정의.

- X_k * C + u_k * D를 통하여서 output y_k를 정의.

*이렇게 총 4개의 layer parameters를 훈련하면 된다!


Convolutional

Convolutional
Discretized SSM

간단한 상황을 정의하기 위해서 위의 수식에서 t=0일 때, x_(-1)이 0이라고 가정해보자.

 

그렇다면, equation (6)처럼 output y_k를 정의할 수 있다.

또한, y를 좀더 simple하게 나타내기 위해 Krylov function (7)을 활용한다.

 

간단하게 정리하면, 

input u에 대해서 A, B는 history에 대한 information을 주는 과정에 해당하고, 

C, D는 time step에 대한 feature vector를 추출하는 과정이라고 생각할 수 있다.

이는 kenel을 통해서 정보를 뽑고 모두 더해서 window의 정보를 추출하는 convolution (합성곱) 연산과 동치라고 생각할 수 있다!


[참고자료: JunYoung님의 더 자세한 정리]

- Welcome to JunYoung's blog | Mamba modeling의 기초 (1) - Linear State-Space Layer (LSSL)에 대하여 (junia3.github.io)


HiPPO와 LSSL 의미 정리

[HiPPO]

- Continuous한 function을 어떻게 subspace g(t)로 잘 근사시킬 수 있는지가 주요 목표!

- 여기서 중요한 factor는 2가지 정도 있는데

-> 어떤 measure를 활용하여 projection 시킬 것인지,

-> 그리고 time window (step)을 어떻게 설정할 것인지.

- time window에 따른 중요도와 weight를 적절하게 결정하기 위해서, LegS (scaled Legendre)를 제안함.

- 여러 증명들을 통해서, measures를 가지고 state space model을 구성하는 A와 B matrix가 어떤 수식을 갖는지 증명함.

- A와 B를 가지고 Coef.에 대한 dynamic linear system을 품!

 

[LSSL]

- A, B, C, D를 각각의 linear layer라고 두고 state space model을 디자인 함.

- 또한 time step과 A가 모델의 성능과 데이터셋을 예측하는데 중요한 역할을 한다는 것을 알아냄.

- State space layers를 RNN과 CNN에 적용시킨 형태를 보여줌.

- State matrix A가 학습 가능하도록 설정했을 때, HiPPO에서 제안한 state matrix A보다 성능이 더 잘 나올 수 있음을 보임.


State Space Model (SSM)


Result

- A를 HiPPO에서 정의한 matrix로 fixed한 것 보다 훈련시킨 것이 약간 더 높은 것을 알 수 있다!

- 그러나 실제로, 연산 메모리 문제 때문에 활용이 어렵다는 단점이 있다..! (S4에서 언급!)


Furthermore

S4 논문리뷰: https://kyujinpy.tistory.com/148

 

[Mamba 논문 리뷰 3] - S4: Efficiently Modeling Long Sequences with Structured State Spaces

*Mamba 논문 리뷰 시리즈3 입니다! 궁금하신 점은 댓글로 남겨주세요!시리즈 1: Hippo시리즈 2: LSSL시리즈 3: S4시리즈 4: Mamba시리즈 5: Vision MambaS4 paper: [2111.00396] Efficiently Modeling Long Sequences with Structured

kyujinpy.tistory.com

 

- Mamba 논문 리뷰 세번째 시리즈도 만나러 가시죠!


- 2024.06.26 Kyujinpy 작성.

*광고 수익은 연말에 기부를 할 생각입니다! 감사합니다.

반응형