NL-346, On the Parameterization and Initialization of Diagonal State Space Models (S4D), NeurIPS 2026

S4D를 처음부터 이해하기: “상태 업데이트”에서 “Convolution”까지 이번 글은 S4D: On the Parameterization and Initialization of Diagonal State Space Models 논문을 처음 보는 사람을 위한 설명이다. 수식이 많이 나오지만, 목표는 하나다. S4D는 긴 시퀀스를 잘 처리하기 위해, 입력을 내부 기억에 저장하고, 그 기억을 효율적인 convolution kernel로 바꿔 계산하는 모델이다. 이 글에서는 특히 네가 헷갈려 했던 부분들을 중심으로 설명한다. (x'(t))가 무엇인지 왜 갑자기 (y)가 (u)의 함수처럼 보이는지 (K(t)=Ce^{tA}B)가 어디서 나오는지 S4D는 기존 S4에서 무엇을 단순화한 것인지 논문은 S4D를 기존 S4보다 훨씬 단순한 diagonal SSM으로 만들면서도, 성능은 거의 유지할 수 있음을 보인다. 1. S4D가 풀고 싶은 문제 우리가 다루고 싶은 데이터는 보통 시퀀스 다. 예를 들어: 문장: [나는, 오늘, 학교에, 갔다] 오디오: [0.01, 0.03, -0.02, ...] 주가: [100, 101, 99, 102, ...] 이미지: 픽셀을 한 줄로 펼친 sequence 이런 데이터의 핵심은 앞에서 나온 정보가 뒤에 영향을 줄 수 있다 는 점이다. 예를 들어 문장에서: "철수는 영희에게 책을 빌려주었다. 그는 ..." 여기서 “그”가 누구인지 알기 위해서는 앞부분 기억이 필요하다. 오디오도 마찬가지다. 지금 소리 하나만 보고는 단어를 알 수 없다. 앞뒤의 긴 패턴을 같이 봐야 한다. 그래서 S4D는 이런 일을 하려 한다. 입력 시퀀스 u ↓ 과거 정보를 잘 기억 ↓ 출력 시퀀스 y 생성 2. State Space Model이란? S4D는 State Space Model , 줄여서 SSM 계열 모델이다. SSM은 아주 단순하게 말하면: 입력이 들어오면 내부 기억을 업데이트하고, ...

NL-345, Mamba: Linear-Time Sequence Modeling with Selective State Spaces, CoLM 2024

Abstract 파운데이션 모델은 현재 딥러닝의 흥미로운 응용 대부분을 구동하고 있으며, 거의 예외 없이 Transformer 아키텍처와 그 핵심인 attention 모듈에 기반한다. 긴 시퀀스에서 Transformer의 계산 비효율성을 해결하기 위해 linear attention, gated convolution 및 recurrent 모델, structured state space model(SSM)과 같은 많은 subquadratic-time 아키텍처가 개발되어 왔지만, 언어와 같은 중요한 모달리티에서는 attention만큼 좋은 성능을 보이지 못했다. 우리는 이러한 모델들의 핵심 약점이 content-based reasoning을 수행하지 못하는 데 있음을 확인하고, 이를 개선하기 위한 몇 가지 방법을 제안한다. 첫째, SSM 파라미터가 입력의 함수가 되도록 하는 단순한 변경만으로도 discrete modality에서의 약점을 해결할 수 있으며, 모델이 현재 토큰에 따라 시퀀스 길이 차원을 따라 정보를 선택적으로 전파하거나 잊을 수 있게 한다. 둘째, 이 변경으로 인해 효율적인 convolution을 사용할 수 없게 되지만, 우리는 recurrent mode에서 hardware-aware parallel algorithm을 설계한다. 우리는 이러한 selective SSM을 attention은 물론 MLP block조차 없는 단순화된 end-to-end neural network architecture인 Mamba에 통합한다. Mamba는 빠른 inference, 즉 Transformer보다 5배 높은 throughput을 보이며, 시퀀스 길이에 대해 선형적으로 scaling된다. 또한 실제 데이터에서 million-length sequence까지 성능이 향상된다. 일반적인 sequence model backbone으로서 Mamba는 언어, 오디오, 유전체학 등 여러 모달리티에서 state-of-the-art 성능을 달성한다. Language modeli...

NL-342, Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity, JMLR 2022

이미지
◼ Comment MoE 초기 논문 이후로, 그 다음 MoE 국밥 논문인듯 내가 느끼기엔 근데 방법론 자체는 비슷한데, Transformer 구조에 적용하고 다양한 실험을 해본 것 전체 구조는 그림 2와 같고, Transformer에서 FFN layer을 보통 모든 입력에 대해 동일한 layer을 사용하는데 여기서는, 입력 토큰별로 다른 FFN layer을 쓴다는 것이다. 그럼 어떤 FFN layer을 사용하는지를, Router을 둬서 사용하는것이고, 이 방법은 MoE 방법과 동일하다 단, 몇개의 FFN layer을 사용할지 top-k 을 선택해야하는데 기존에는 2개 이상을 쓰는걸로 주로 실험되었지만, 여기서 해보니 top-1을(expert 1개만 사용) 써도 성능 잘나오더라 학습 효율 top-1 expert을 사용하게끔 학습할때, 입력이 하나의 expert로 쏠리는 학습 불안정 현상이 있다는거 같음 그래서 이를 어느정도 균등하게 하기 위한 노력이 있는데, 1) 식 3처럼, expert당 처리할 수 있는 입력 토큰 개수를 정해두고, 이 제한 입력이 꽉차면, 이 expert로 들어오면 FFN layer의 출력을 0 처리해서 residual 로 바꿔버림.  이를 dropped token이라 부름 2) 식 4,5,6처럼 penalty loss 개념을 도입한다. 이 Loss는 균등하게 Expert로 분배되면 낮아지는 수식이다 즉 배치에 구성된 토큰들이 만약 한쪽 expert로 쏠리면, f, P 값이 커지면서 loss가 증가한다 여기서 f는 실제 top-1 배분 비율, P는 router가 준 확률의 평균 실험 결과는 그냥 스크리닝만 했는데, 기존 dense 스타일인 T5랑 MoE 모델보다 같은 토큰 학습 steps 기준 좋다라고 주장하는거 같음 전반적으로 sparse expert는 학습 불안정성이 있지만, 이거를 bfloat16으로 해결하려고 했던거 같고  모델 스케일링 실험 expert을 늘리면 손쉽게 capacity 늘리고 성능도 좋아지지만, 한계가...

NL-341, Outrageously Large Neural Networks: The Sparsely-Gated Mixture-of-Experts Layer, ICLR 2017

이미지
◼ Comment 이 논문은 MoE의 시초로 쓱 봤는데, MoE 아이디어를 한번더 확인한 느낌 알아둬야할것은 2.1 섹션이면 될것 같음 즉 입력값에 weight 곱하고 softmax 취해서 expert 취한다는 것인데 단순히 이렇게 하면 확률의 차이지 모든 expert을 계산해야하기 때문에 Noisy top-k gating이라해서, 가우시안 노이즈 더하고 expoert top-k만 선별하는 식으로 업데이트한다 섹션4에서 MoE학습시, 몇 개의 epxert가 큰 가중치를 주는 상태로 수렴하는 경향이 있는 문제가 있음 즉 선호되는 expert가 있고, 이것이 자주 선택되고 빠르게 학습되기 때문에 local minimum에 빠질 수 있다고함 그래서 추가적인 loss을 제안해서 밸런싱을 맞추려고 한 것 같음 ABSTRACT 신경망이 정보를 흡수할 수 있는 능력은 그 파라미터 수에 의해 제한된다. 조건부 계산(conditional computation)은 네트워크의 일부가 예제마다 선택적으로 활성화되도록 하여, 계산량을 그에 비례해 늘리지 않고도 모델 용량을 극적으로 키우는 이론적 방법으로 제안되어 왔다. 그러나 실제로는 알고리즘적·성능적 난제가 상당하다. 본 연구에서는 이러한 난제를 해결하고 조건부 계산의 가능성을 마침내 실현하여, 현대 GPU 클러스터에서 계산 효율의 손실은 크지 않으면서 모델 용량을 1000배 이상 향상시킨다. 우리는 수천 개의 feed-forward 서브네트워크로 구성된 Sparsely-Gated Mixture-of-Experts 레이어(MoE)를 제안한다. 학습 가능한 게이팅 네트워크는 각 예제마다 사용할 전문가들의 희소한 조합을 결정한다. 우리는 이 MoE를 언어 모델링과 기계번역에 적용하는데, 이들 과제에서는 훈련 코퍼스에 존재하는 방대한 지식을 흡수하기 위해 모델 용량이 매우 중요하다. 또한 최대 1370억 개의 파라미터를 갖는 MoE가 스택된 LSTM 층 사이에 합성곱 방식으로 적용되는 아키텍처를 제시한다. 대규모 언어 모델링 및 기계번...

NL-340, Does your data spark joy? Performance gains from domain upsampling at the end of training, CoLM 2024

이미지
◼ Comment 어쩌다 읽게 된 논문인데 나쁘지 않은 결론이다. LLM을 학습할때 데이터 시드별 비율을 적당히 정해서 처음부터 끝까지 학습하는게 보통인데 여기서는 그 비율을 후반부에서 바꿔보니 성능이 꽤 올랐다는 것이다 학습방식 베이스) 테이블 1의 학습 방식으로 7B 모델을 1T토큰 학습하는 세팅인데 기본 pretraining 데이터셋 비율을 테이블 2처럼 구성한다. 테이블2의 구성은 휴리스틱하게 정한것이고, 이게 Llama2보다 더 좋은 가성비?(FLOPS대비 성능)이 좋다는 것을 그림 1로 보인다 DU) 베이스 모델의 중간 체크포인트인 0.8T에 이어서, 0.2T는 다른 데이터세트 비율로(테이블 4) 학습을 이어서 하는 것이다 그랬더니 기본 성능은 유지되고, DU 비율에서 강화시킨 코드/MMLU에 대한 성능이 향상되는 것을 보여준다. MMLU가 여러 도메인을 포함하기 때문에 도메인 데이터가 MMLU 타겟 데이터라 보는 듯? 베이스 vs DU 그럼 그냥 DU의 데이터 비율이 좋은거 아니냐라고 의문가질 수 있는데, 테이블 6이 DS 비율을 언제부터 학습하는게 좋은지 ablation 해본 것 결론은, DS 비율로만 학습하게 됐을때 일반적인 성능이 떨어지는 것을 보여준다 즉 적절한 데이터 비율의 변환 시점을 찾는 실험을 한 것이고 그게 20%라는 것 활용 방식 이 findings을 활용할 수 있는 것으로, 학습 데이터가 여러 시드로 구성됐을 때, 어떤 데이터가 성능 향상에 기여하는 것이냐? 라는 것을 확인할 수 있다는 것 기존에는 처음부터 데이터를 하나씩 빼가는 식의 ablation은 비용이 너무 컸었음 이 발견을 통해, 80%까지는 동일하게 학습하고 후반 학습시, 데이터 세트의 비율만을 바꿔서 관측하면 된다라는 것. Abstract 대규모 언어 모델(LLM)을 위한 사전학습 데이터셋은 수조 개의 토큰 규모로 성장했으며, 대량의 CommonCrawl(CC) 웹 스크랩 데이터와 더불어 소규모의 도메인 특화 데이터셋들로 구성된다. 이러한 도메인 특화 데이터셋이 모...