SAS: 증류 없이 문맥 랭킹을 직접 학습하는 단순한 어텐션 스파시피케이션
TL;DR — 사후 학습(post-training) 어텐션 스파시피케이션에서, 선택기(selector)가 만든 연속 점수를 어텐션 로짓에 로그 게이트(log gate) 로 주입한다. 이렇게 하면 이산 Top-K 선택이 막고 있던 기울기를 우회해, 보조 증류(distillation) 없이 언어모델링 손실로 선택기를 종단 간 학습할 수 있다. 결과적으로 Qwen3-4B/8B/14B에서 타이트한 예산(1024 토큰)일 때 SeerAttention-R 대비 GPQA-Diamond를 최대 +15.5점 끌어올렸고, 디코딩 지연은 512K 문맥에서 최대 5.6× 절감했다.
핵심 아이디어
긴 문맥 추론의 병목은 어텐션의 이차 복잡도다. 토큰 $n$개짜리 문맥에서 자동회귀 디코딩이 매 스텝 모든 선행 토큰을 읽으면 누적 비용은 $O(n^2)$로 자란다 (근거: §3). 이미 배포된 고성능 LLM은 대부분 dense attention이라, 재학습 없이 사후에 어텐션을 희소화하는 사후 학습 스파시피케이션이 실무적으로 매력적이다.
핵심 질문은 “제한된 어텐션 예산 안에서 각 쿼리에 가장 유용한 문맥 단위(토큰 혹은 블록)를 어떻게 고를 것인가"다 (근거: §1). 학습 가능한 선택기 기반 방법들이 등장했지만, 하드 Top-K 선택은 미분 불가능해서 언어모델링 손실의 기울기가 선택기로 흐르지 못한다 (근거: Fig. 1a). 그래서 기존 방법들은 각 레이어의 dense attention 분포를 선택기에 **증류(distill)**하는 우회로를 썼다 (근거: §1).
SAS의 통찰은 바로 이 지점이다. 증류는 선택기에게 “원본 dense 모델이 어디를 보는지"를 가르치지만, 이는 “고정 예산 하에서 최종 예측에 어떤 영향을 미치는지"라는 목표와 정렬되지 않는다(ranking misalignment) (근거: §1). SAS는 선택기의 점수를 어텐션 계산의 미분 가능한 부분으로 만들어 언어모델링 손실이 직접 선택기를 업데이트하게 한다 (근거: Fig. 1b).
중심 가설: 저자들은 선택기의 연속 점수를 어텐션 로짓에 로그 게이트로 주입함으로써, 보조 증류의 순위 정렬 오류를 극복하고 예산 제약 하에서 더 정확한 문맥 랭킹을 학습할 수 있다고 가정한다.
배경: 그들이 해결한 문제
표준 어텐션은 다음과 같이 정의된다 (근거: §3, Eq. 1):
$$o = \text{softmax}(qK^\top)\,V$$여기서 $q \in \mathbb{R}^{d}$는 현재 토큰의 쿼리, $K, V \in \mathbb{R}^{n \times d}$는 $n$개 선행 토큰의 키·밸류다. 블록 희소 어텐션은 쿼리가 선택된 블록 집합 $\mathcal{S}$에만 참여하도록 제한해 비용을 $O(|\mathcal{S}|)$로 줄인다 (근거: §3, Eq. 2):
$$o = \text{softmax}(qK_{\mathcal{S}}^\top)\,V_{\mathcal{S}}$$$\mathcal{S}$를 만들기 위해, 문맥의 $n$개 위치를 각각 $b$개 토큰씩 $C = n/b$개의 블록 $\{B_1, \dots, B_C\}$로 나누고, 가벼운 선택기 $R_\theta(\cdot)$가 블록별 관련성 점수 $s \in \mathbb{R}^{C}$를 계산한 뒤 상위 $K$개 블록을 고른다 (근거: §3, Eq. 3):
$$I = \text{Top-K}(s, K), \qquad \mathcal{S} = \bigcup_{m \in I} B_m$$문제는 이 **하드 Top-K 아래에서 선택된 인덱스 집합이 점수에 대해 조각별 상수(piecewise constant)**라는 점이다. 즉 손실로부터 선택기를 업데이트할 유용한 기울기가 전혀 흐르지 않는다 (근거: §3, Fig. 1a).
기존 학습형 방법들이 여기에 매달린 방식은 레이어별 dense attention 증류다. 선택기를 각 레이어에서 원본 dense 모델의 어텐션 질량과 일치하도록 지도하는 것인데, 여기 두 가지 결정적 한계가 있다 (근거: §1):
- 레이어별 목표는 교차 레이어 상보성(cross-layer complementarity)을 무시한다. 한 레이어에서 놓친 블록을 다른 레이어가 보완할 수 있는데, 레이어별 로컬 목표는 이를 포착하지 못한다.
- 어텐션 가중치만 맞출 뿐, 실제로 참여하는 밸류(V 행렬)가 최종 예측에 미치는 영향을 무시한다.
즉, 증류는 “어디를 보는가(어텐션 분포)“를 흉내내지만, “무엇이 예측에 실제로 기여하는가"를 최적화하지 못한다는 것이 이 논문이 정의한 연구 공백이다.
새로운 접근법: SAS (Simple Attention Sparsification)
SAS의 핵심은 “선택 = 문맥 랭킹"이라는 재구성이다 (근거: §4.1). Top-K 선택은 결국 선택기 점수의 **순서(ordering)**에 의해 결정된다. 좋은 선택기는 예측에 더 유용한 블록에 더 높은 랭크를 부여해야 하므로, 학습 중 선택기가 블록에 대한 연속적 순서를 배우게 만들면 그것이 곧 희소 블록 선택의 기반이 된다.
이를 위해 SAS는 다음 4가지 설계 선택을 채택한다 (근거: §4.3):
- 내부 소프트맥스 게이트 주입(inner softmax gate): 게이트를 소프트맥스 바깥이 아니라 안쪽 로짓에 더한다.
- 정규화된 게이트 활성화(softmax): 역사 블록 점수를 소프트맥스로 정규화해 항상 유지되는 현재 블록과 캘리브레이션한다.
- 연속 게이트 유지(soft gate): 이진 Top-K 마스크로 무너뜨리지 않고 상대적 우선순위를 보존한다.
- 희소 스코프 학습(sparse scope): 전체 블록이 아니라 선택된 블록만 업데이트해 비용을 낮춘다.
선택기는 역사 블록 $\mathcal{H} = \{B_1, \dots, B_C\}$에 대해서만 점수 $s$를 내고, 이를 양수 게이트로 변환한다. 현재 블록 $B_0$는 항상 유지되며 게이트 1을 갖는다 (근거: §4.1, Eq. 4):
$$g = \phi(s) \in \mathbb{R}^{C}_{+}, \qquad g_0 = 1$$학습 시의 어텐션 계산은 다음과 같다 (근거: §4.3, Eq. 9):
$$o_{SAS} = \text{softmax}\big(qK_{\mathcal{S}}^\top + \log g_{\mathcal{S}}\big)\,V_{\mathcal{S}}$$선택된 역사 블록에는 정규화된 로그 게이트 편향이 더해지고, 현재 블록은 게이트 1(즉 $\log 1 = 0$)로 편향 없이 남는다. 추론 시에는 학습된 랭킹을 다시 이산 Top-K 인덱스로 변환해 사용한다 (근거: Alg. 1, 2).
4가지 설계 선택이 왜 중요한가
제어 실험(Qwen3-4B, GPQA-Diamond, 예산 2048 토큰, avg@16)에서 각 설계 요소를 교체했을 때의 성능은 다음과 같다 (근거: Tab. 1):
| 설계 요소 | 선택 | 최종 정확도(%) |
|---|---|---|
| (기준) 게이트 없음 | – | 56.1 |
| 게이트 위치 | 내부 소프트맥스 vs 외부 소프트맥스 | 54.4 vs 41.6 |
| 게이트 활성화 | softmax vs sigmoid vs raw logit | 54.4 vs 17.0 vs 18.8 |
| 랭킹 보존 | 연속(soft) vs 하드 STE | 54.4 vs 46.0 |
| 학습 스코프 | 전체 vs 희소 | 54.4 vs 54.8 |
각 요소의 메커니즘은 다음과 같다:
- 게이트 위치: 내부 게이트는 어텐션 질량의 재할당을 직접 제어한다. 내부 게이트의 기울기는 $dg^{inner}_m = \sum_{i \in B_m} \frac{\tilde{p}_i}{g_m}\,do^\top(v_i - o)$로, 블록 간 상대적 중요도를 학습하게 한다. 반면 외부 게이트의 기울기는 $dg^{outer}_m = \sum_{i \in B_m} p_i\,do^\top v_i$로, 이미 고정된 어텐션 확률 $p_i$에 곱해질 뿐이라 V 행렬의 가치 기여만 재조정한다 (근거: §4.2.2, Eq. 5).
- 게이트 활성화: softmax 정규화는 $\log g_m = s_m - \text{LSE}(s)$로, 현재 블록과의 캘리브레이션을 제공한다. 실험에서 sigmoid 게이트는 1로 포화되고, raw logit 주입은 0으로 붕괴해 결국 게이트 없는 어텐션에 수렴한다 (근거: §4.2.2, Fig. 3). softmax의 경쟁적 성격이 이런 자명한 해를 막는다.
- 랭킹 보존: 하드 STE 게이트는 소프트맥스의 분모가 선택 집합 $\mathcal{S}$만 합산해, 탈락한 블록의 가중치 $\tilde{p}^{hard}_i = \exp(z_i - \text{LSE}_{\mathcal{S}})$가 상한 없이 지수적으로 커져 기울기 폭주를 일으킨다 (근거: §4.2.2, Eq. 7, Appx. D.2). 연속 게이트는 모든 토큰을 하나의 분모로 정규화해 가중치를 유계로 유지한다.
- 학습 스코프: 희소 스코프는 비선택 블록이 자기 자신의 기울기를 못 받고 선택 블록을 통해서만 간접 업데이트되어 초기 수렴이 느리지만, 최종 성능은 전체 스코프와 수렴한다 (근거: §4.2.2, Tab. 9, Appx. C). 더 저렴하므로 이후 실험은 희소 스코프를 쓴다.
작동 원리: 구체적인 예시로 살펴보기
작은 예시로 전체 흐름을 따라가 보자. 문맥 길이 $n = 256$을 블록 크기 $b = 64$로 나누면 $C = 4$개의 블록이 생기고, 예산(attended 블록 수)을 $K = 2$로 두자.
1단계 — 선택기 점수 계산. 쿼리 $q$와 각 블록의 요약(key summary)을 받은 선택기가 4개 역사 블록에 점수를 낸다. 예를 들어 $s = [0.8, 1.5, 0.3, 0.6]$이라고 하자 (근거: Alg. 1, line 1).
2단계 — 게이트 변환. $g = \text{softmax}(s)$로 정규화한다. $e^{0.8} \approx 2.23$, $e^{1.5} \approx 4.48$, $e^{0.3} \approx 1.35$, $e^{0.6} \approx 1.82$, 합계 약 $9.88$이므로:
$$g \approx [0.23,\ 0.45,\ 0.14,\ 0.18]$$현재 블록 $B_0$에는 $g_0 = 1$을 부여한다. 여기서 $g$는 “상대적 우선순위"를 인코딩한다 — 블록 2가 가장 중요하다는 신호 (근거: §4.1, Eq. 4).
3단계 — Top-K 선택. $g$ 기준 상위 2개 블록 $\{B_2, B_1\}$을 골라 참여 집합 $\mathcal{S} = B_0 \cup B_2 \cup B_1$을 만든다 (근거: Alg. 1, line 3).
4단계 — 게이트 주입. 선택된 블록의 로그 게이트를 어텐션 로짓에 더한다. $\log g \approx [-1.47, -0.80, -1.97, -1.71]$이므로, $B_2$에는 약 $-0.80$, $B_1$에는 약 $-1.47$의 편향이 더해진다:
$$o = \text{softmax}\big(qK_{\mathcal{S}}^\top + \log g_{\mathcal{S}}\big)\,V_{\mathcal{S}}$$게이트가 소프트맥스 안쪽에 있기 때문에, $B_2$는 다른 블록보다 더 큰 어텐션 질량을 할당받고, 이 기울기가 다시 $\log g$를 거쳐 선택기로 흘러간다 (근거: §4.3, Fig. 1b).
5단계 — 기울기 역전파. 언어모델링 손실 $L_{LM}$이 $o \to g \to s \to R_\theta$ 경로로 기울기를 전파해 선택기가 “실제로 예측에 도움이 되는 블록"을 높게 매기도록 업데이트된다 (근거: §4.3, Eq. 9). 이산 Top-K는 학습 시 게이트 주입과 별도로만 사용되므로 기울기를 막지 않는다.
6단계 — 추론. 학습이 끝나면 게이트 없이 단순히 $I = \text{Top-K}(s, K)$로 블록을 고르고 dense 희소 어텐션을 수행한다 (근거: Alg. 2). 이산 선택만 남으므로 원래 모델과 동일한 추론 비용 구조를 가진다.
커널 구현. 단순 구현은 게이트를 더하기 전에 전체 어텐션 행렬을 구체화해 장문 학습에서 메모리가 폭주한다. SAS는 Triton 커널로 게이트 주입을 FlashAttention 스타일의 타일 단위 $qK^\top$ 계산에 융합했다. KV 타일을 스트리밍하며 로그 게이트를 로짓에 더하고, 비선택 블록은 $- \infty$로 마스킹하며, 현재 블록은 편향 없이 두고 온라인 소프트맥스를 수행한다. 역전파는 선택 블록 내 토큰들의 점수 기울기를 합산해 블록 단위 로그 게이트 기울기로 압축한다 (근거: §4.3, Alg. 3, 4, Appx. E).
성능 검증: 주요 결과
평가 설정은 세 축이다. 추론(MATH500, GPQA-Diamond, AIME24, AIME25), 장문 이해(LongBench), 에이전트(BFCL Multi-Turn, VitaBench). 백본은 Qwen3-4B/8B/14B이며, 선택기는 AttnGate 구조로 SeerAttention-R과 동일하고 훈련 신호만 다르다. 선택기는 OpenR1-Math-220k(약 93.7K 예시) 1 에포크, 시퀀스 길이 32,768, 블록 크기 64, AdamW lr 1e-3으로 학습했다 (근거: §5.1).
추론 벤치마크
타이트한 예산(1024 토큰)에서 SAS의 우위가 가장 크다 (근거: Tab. 2):
| 지표 | SeerAttention-R | SAS | Full Attn |
|---|---|---|---|
| MATH500 (4B) | 84.67 | 90.65 | 93.93 |
| GPQA-Diamond (4B) | 39.84 | 50.41 | 56.19 |
| GPQA-Diamond (14B) | 45.64 | 61.14 | 65.25 |
즉 SeerAttention-R 대비 MATH500에서 +6.0~7.7점, GPQA-Diamond에서 +10.6~15.5점 개선이다 (근거: §1). 둘은 선택기 아키텍처가 같고 훈련 신호만 다르므로, 이 격차는 언어모델링 손실이 증류보다 우수한 지도 신호임을 직접 증명한다 (근거: §5.2).
학습 불필요 희소화 베이스라인은 타이트한 예산에서 급격히 무너진다. Sliding Window와 StreamingLLM은 고정 로컬 패턴이라 추론에 중요한 문맥을 버리고, Quest는 AIME24/25에서 예산 2048 기준 0점으로 붕괴한다 (근거: §5.2, Tab. 2).
예산 4096에서는 SAS가 dense 어텐션을 따라잡거나 역전한다. 예를 들어 AIME24(Qwen3-4B)에서 SAS 71.72 vs full attention 71.25로, KV 블록의 극히 일부만 읽고도 dense 추론 성능을 회복한다 (근거: §5.2, Tab. 2).
장문 이해
LongBench에서 SAS는 거의 모든 예산·백본에서 SeerAttention-R을 앞선다. 예산 4096에서는 Qwen3-14B 평균 56.2 vs full attention 56.6으로 dense에 근접한다 (근거: Tab. 3). 주목할 점은 선택기가 수학 데이터로만 학습됐는데도 장문 이해로 잘 전이된다는 것이다 — 이는 랭킹 학습이 특정 태스크에 과적합된 것이 아니라 일반적인 “예측에 유용한 문맥"을 배웠음을 시사한다 (근거: §5.2).
에이전트 태스크
BFCL Multi-Turn에서 SAS가 모든 백본·예산에서 앞서며, 예산 2048 Qwen3-4B에서 +3.5(32.50 vs 29.00), 예산 4096 Qwen3-14B에서 44.00 vs full attention 44.50으로 격차를 거의 닫는다 (근거: Tab. 4). VitaBench에서도 예산 4096에서 Delivery/Instore/OTA 대부분 지표에서 우위를 보이며 현실적 장기 도구 사용 환경에서도 종단 간 선택이 안정적으로 유지됨을 보인다 (근거: §5.2, Tab. 5).
지속 사전학습으로의 확장
동일한 종단 간 공식을 OLMo3-7B의 지속 사전학습(약 50B 토큰, 시퀀스 8,192, 13,000 스텝)에 적용했다 (근거: §5.3). 하류 태스크 평균에서 SAS 43.28로 슬라이딩 윈도우(43.24)와 대등하고 HiLS-Attn-RoPE(41.68)를 앞서며 dense 베이스(43.88)에 근접한다 (근거: Tab. 6). LongBench 평균에서는 30.0으로 공동 1위를 기록해, dense 베이스(29.0)와 슬라이딩 윈도우(28.0)를 넘어선다 (근거: Tab. 7). 개선은 >8K 장문 입력에 집중되어, 정확한 블록 선택이 중요한 곳에서 이득이 생김을 보여준다.
분석: 왜 종단 간 학습이 더 나은 선택기를 만드는가
레이어별 질량 커버리지는 오히려 낮다. SAS는 증류 대비 각 레이어에서 더 적은 어텐션 질량을 커버한다 (근거: Fig. 5a). 이는 증류가 “전체 어텐션 질량 커버"를 명시적 목표로 삼는 반면, SAS는 그 목표로 학습된 적이 없기 때문이다.
하지만 교차 레이어 합집합의 오라클 재현율은 더 높다. 선택은 레이어에 걸쳐 분산되므로, 각 방법의 블록 선택을 모든 레이어에 걸쳐 합집합으로 합친 뒤 full attention 오라클 집합과의 겹침 재현율(overlap recall)을 측정했다 (근거: §6.1, Eq. 11):
$$\text{Recall}(I_{all}, I_{all}^{\star}) = \frac{|I_{all} \cap I_{all}^{\star}|}{|I_{all}^{\star}|}$$SAS는 모든 문맥 길이·예산에서 일관되게 더 높은 재현율을 기록한다 (근거: Fig. 5b). 즉 증류는 레이어별 로컬 목표에 맞추는 반면, SAS는 종단 간으로 학습되어 레이어 간 상보적으로 블록을 고른다는 해석이다.
더 짧은 추론 흔적, 더 적은 절단. 예산 4096 Qwen3-4B에서 SAS는 증류 대비 평균 생성 길이가 짧고, 최대 길이 32,768에서의 절단률(truncation rate)도 낮다. 격차는 장문 추론이 필요한 AIME에서 가장 크다 (근거: §6.2, Fig. 6). 중요한 문맥이 탈락하면 모델이 더 길고 산만한 추론을 하고 상한에 걸리기 쉬운데, SAS는 더 효과적인 선택 덕에 더 적은 토큰으로 답에 도달한다.
디코딩 효율
SGLang 상에서 Qwen3-4B를 단일 GPU(tp=1), CUDA graph, steady-state 디코드로 측정했다 (근거: §6.3). dense 어텐션은 매 스텝 전체 KV 캐시를 읽어 문맥에 선형으로 느려지지만, SAS는 고정 블록 예산만 읽어 거의 평평하다. 배치 1에서 8K는 거의 동률, 64K/256K/512K에서 각각 2.4× / 4.6× / 5.6× 빨라진다. 배치 8에서는 64K에서 **약 13×**까지 올라간다 (근거: Fig. 7a, 7b).
흥미로운 발견은 병목의 이동이다. 디코드 스텝을 선택기 스코어링, Top-K 선택, 어텐션 계산으로 분해하면, 어텐션 계산은 예산으로 상한이 있어 문맥과 무관하게 일정하다. 반면 선택기 스코어링은 모든 블록 요약을 스캔해 문맥에 따라 커지고, Top-K 선택은 모든 후보 블록을 정렬해야 하므로 더 빨리 커져 8K에서 21% → 512K에서 **90%**까지 차지한다 (근거: Fig. 7c). 즉 초장문에서는 어텐션 자체가 아니라 선택 단계가 진짜 병목이며, 향후 커널 최적화의 주 타깃이 된다.
우리의 관점: 강점, 한계, 그리고 이 연구가 중요한 이유
강점
- 개념적 단순함. 기존 증류 파이프라인(교사 어텐션 저장, 레이어별 증류 손실)을 통째로 제거하고 “게이트를 로짓에 더하기” 하나로 대체했다. 언어모델링 손실 하나로 선택기가 학습된다 (근거: §4.3). 실무 이식성이 높다.
- 통제된 비교의 신뢰성. SeerAttention-R과 선택기 아키텍처, 추론 절차까지 동일하고 훈련 신호만 바꿔, 관측된 성능 격차를 “증류 vs 언어모델링 손실"로 깨끗하게 귀속시킨다 (근거: §5.1).
- 엔지니어링 완결성. Triton 훈련 커널(어텐션 행렬 미구체화)과 SGLang 추론 백엔드(paged KV cache, FlashInfer, GQA, CUDA graph)를 모두 제공해 “단순한 아이디어"가 장문 규모에서 실제로 돌아감을 입증했다 (근거: §4.3, §5.1).
한계
- 장문 극한에서의 성능 저하. RULER에서 SAS는 SeerAttention-R보다는 나으나, 문맥이 길어질수록 급격히 하락한다. Qwen3-4B 128K에서 full attention 63.81 대비 예산 4096 SAS는 21.87에 그친다 (근거: Appx. B, Tab. 8). 저자들은 원인을 풀링 기반 블록 요약으로 진단한다 — 바늘 같은 국소 신호가 블록 압축에서 소실된다는 것.
- 선택 단계가 새 병목. 어텐션 비용을 줄였지만, 초장문에서는 선택기 스코어링과 Top-K 정렬이 디코드 스텝의 90%를 차지해 스피드업을 잠식한다 (근거: Fig. 7c). 장점의 상당 부분이 문맥 8K~64K 구간에 집중된다.
- 평가 공백. 정량화(quantization), 다양한 선택기 아키텍처와의 결합, 그리고 레이어별 이질적 예산 할당 등 실배치에서 중요한 변수들에 대한 검증이 아직 없다.
이 연구가 중요한 이유
이 논문의 진짜 기여는 성능 수치가 아니라 “희소 선택을 어떻게 학습시켜야 하는가"에 대한 원리적 답을 제공했다는 점이다. 증류라는 대리 감독(surrogate supervision)이 왜 부족한지(순위 정렬 오류), 그리고 4가지 설계 선택(게이트 위치·활성화·연속성·학습 스코프) 각각이 기울기 신호에 어떤 영향을 주는지를 기울기 도출까지 포함해 규명했다 (근거: §4.2.2, Appx. D). 이는 이후의 어떤 학습형 스파시피케이션 방법에도 재사용 가능한 설계 원칙이다.
다음 단계는?: 앞으로의 길
저자들이 명시한 방향은 더 표현력 있으면서도 효율적인 선택기다 — 블록 압축 하에서도 바늘 같은 미세 신호를 포착할 수 있어야 RULER류 장문 과제의 격차를 줄일 수 있다 (근거: Appx. B). 이에 더해 합리적인 다음 단계를 제안하면:
- 선택 단계의 커널 최적화. Fig. 7c가 지목한 진짜 병목(선택기 스코어링 + Top-K 정렬)을 계층적 인덱스나 근사 Top-K로 완화하는 작업이 초장문 스피드업을 지속시키는 관건이다.
- 계층적/다중 해상도 요약. 블록 요약을 단일 풀링 벡터로 한정하지 않고, 저비용 계층 요약(예: HiLS 계열)과 결합해 국소 신호 보존 문제를 공략할 수 있다.
- 더 넓은 분포로의 전이 검증. 현재는 수학 데이터로만 선택기를 학습하고 다른 태스크로 전이를 보였다. 코드·검색·대화 등 이질적 분포에서의 전이와, 정량화 백본에서의 안정성을 확인하면 실배치 신뢰도가 올라간다.
- 레이어별 이질적 예산. SAS 분석은 레이어 간 상보성을 보여줬다. 모든 레이어에 같은 Top-K를 주기보다, 레이어별 중요도에 따라 예산을 재분배하면 동일 연산량으로 더 높은 성능을 기대할 수 있다.
요약하면, SAS는 “단순함"을 무기로 사후 학습 스파시피케이션의 지도 신호 문제를 근본에서 해결했고, 그 설계 원칙과 엔지니어링은 후속 연구가 세울 수 있는 견고한 토대다.
참고 정보 — 논문: SAS: Simple Attention Sparsification via End-to-End Optimization of Context Ranking (arXiv:2609.13141v1, 2026). 코드: https://github.com/Tencent-Hunyuan/Simple-Attention-Sparsification.
논문 원문의 표
arXiv e-print 의 LaTeX 원본에서 기계적으로 옮긴 표입니다. 숫자는 논문의 값이며 모델을 거치지 않았습니다.
표 1. Evaluation results on the RULER benchmark.
| Budget | Method | Qwen3-4B 4K | Qwen3-4B 8K | Qwen3-4B 16K | Qwen3-4B 32K | Qwen3-4B 64K | Qwen3-4B 128K | Qwen3-8B 4K | Qwen3-8B 8K | Qwen3-8B 16K | Qwen3-8B 32K | Qwen3-8B 64K | Qwen3-8B 128K | Qwen3-14B 4K | Qwen3-14B 8K | Qwen3-14B 16K | Qwen3-14B 32K | Qwen3-14B 64K | Qwen3-14B 128K |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Full | Full Attn | 92.95 | 91.27 | 86.61 | 79.25 | 73.17 | 63.81 | 93.10 | 90.13 | 89.59 | 87.04 | 77.25 | 73.87 | 95.28 | 92.71 | 92.91 | 92.15 | 92.19 | 82.23 |
| 2048 | SeerAttn-R | 92.08 | 79.28 | 56.01 | 30.29 | 18.12 | 13.09 | 92.15 | 80.16 | 63.76 | 42.16 | 24.49 | 13.99 | 94.40 | 84.50 | 62.80 | 44.73 | 30.73 | 14.95 |
| SAS\xspace | 92.82 | 78.22 | 63.94 | 39.54 | 25.65 | 17.92 | 92.45 | 81.39 | 69.34 | 46.94 | 30.31 | 19.38 | 94.43 | 85.10 | 69.01 | 54.76 | 34.12 | 23.80 | |
| 4096 | SeerAttn-R | 93.49 | 87.90 | 72.93 | 47.41 | 27.96 | 16.29 | 92.96 | 90.13 | 77.39 | 57.92 | 37.43 | 18.75 | 95.28 | 91.62 | 76.77 | 64.96 | 42.34 | 22.36 |
| SAS\xspace | 93.49 | 89.09 | 75.72 | 51.90 | 35.53 | 21.87 | 92.96 | 87.96 | 79.88 | 63.50 | 39.18 | 23.46 | 95.28 | 91.52 | 83.35 | 66.82 | 45.92 | 29.95 |
표 2. Final accuracy (%) of full training scope versus sparse training scope across model scales and token budgets. Standard deviations are shown in parentheses.
| Budget | Train scope | MATH500 4B | MATH500 8B | MATH500 14B | GPQA-Diamond 4B | GPQA-Diamond 8B | GPQA-Diamond 14B | AIME24 4B | AIME24 8B | AIME24 14B | AIME25 4B | AIME25 8B | AIME25 14B |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1024 | full | 91.331.1 | 91.711.1 | 93.081.0 | 51.422.9 | 55.622.8 | 61.772.9 | - | - | - | - | - | - |
| sparse | 90.651.1 | 91.271.1 | 92.931.0 | 50.412.8 | 53.172.9 | 61.142.9 | - | - | - | - | - | - | |
| 2048 | full | 93.001.0 | 93.091.1 | 93.561.0 | 54.402.9 | 58.432.9 | 64.142.8 | 68.136.7 | 70.736.6 | 76.676.7 | 55.397.3 | 59.277.3 | 64.047.2 |
| sparse | 93.471.0 | 93.171.0 | 93.541.0 | 54.862.8 | 58.742.8 | 65.092.8 | 68.856.6 | 70.736.7 | 77.766.6 | 56.387.3 | 58.417.2 | 64.197.1 | |
| 4096 | full | 93.101.0 | 93.401.0 | 94.121.0 | 54.802.8 | 60.322.8 | 64.392.9 | 71.176.6 | 73.526.7 | 78.496.6 | 61.307.3 | 64.247.1 | 67.587.0 |
| sparse | 93.671.0 | 94.231.0 | 95.230.8 | 55.112.9 | 60.422.8 | 65.032.8 | 71.726.8 | 73.496.7 | 78.286.4 | 59.977.3 | 63.417.2 | 67.296.9 |
표 3. Ablation of four gating design choices on GPQA-Diamond using Qwen3-4B with a 2048-token budget. We report avg@16 accuracy (%), with avgaverage generation length; standard deviations (2.0–2.8) are omitted. $\mathbf{g}_{\sigma}$ denotes sigmoid-activated gates, and full$^{*}$ simulates full-scope training by adding noise before Top-$K$. Formulations show only historical-context terms; the current block always uses a unit gate.
| Setting | Gate Pos. | Gate Act. | Rank Pres. | Train Sco. | 10 step | 100 step | 1000 step | 1 epoch |
|---|---|---|---|---|---|---|---|---|
| Baseline | ||||||||
| (1) $\operatorname{softmax}(\mathbf q\mathbf K^\top)\mathbf V$ | – | – | – | – | – | – | – | 56.18547 |
| I. Gate Position (inner $\operatorname{softmax}$ vs. outer $\operatorname{softmax}$) | ||||||||
| (2) $\operatorname{softmax}(\mathbf q\mathbf K^\top+\log\mathbf g)\mathbf V$ | inner | $\operatorname{softmax}$ | ✓ | full | 30.825277 | 52.286961 | 53.769771 | 54.471091 |
| (3) $\operatorname{softmax}(\mathbf q\mathbf K^\top)(\mathbf g\odot\mathbf V)$ | outer | $\operatorname{softmax}$ | ✓ | full | 28.325594 | 38.916969 | 43.212801 | 41.613807 |
| II. Gate Activation ($\operatorname{softmax}$, $\operatorname{sigmoid}$, or none) | ||||||||
| (4) $\operatorname{softmax}(\mathbf q\mathbf K^\top+\log\mathbf g)\mathbf V$ | inner | $\operatorname{softmax}$ | ✓ | full | 30.825277 | 52.286961 | 53.769771 | 54.471091 |
| (5) $\operatorname{softmax}(\mathbf q\mathbf K^\top+\log\mathbf g_{\sigma})\mathbf V$ | inner | $\operatorname{sigmoid}$ | ✓ | full | 19.627717 | 20.427997 | 17.627989 | 17.028444 |
| (6) $\operatorname{softmax}(\mathbf q\mathbf K^\top+\mathbf s)\mathbf V$ | inner | – | ✓ | full | 23.427540 | 19.927418 | 18.926703 | 18.826401 |
| III. Ranking Preservation (continuous vs. discrete) | ||||||||
| (7) $\operatorname{softmax}(\mathbf q\mathbf K^\top+\log\mathbf g)\mathbf V$ | inner | $\operatorname{softmax}$ | ✓ | full | 30.825277 | 52.286961 | 53.769771 | 54.471091 |
| (8) $\operatorname{softmax}(\mathbf q\mathbf K^\top+\log\hat{\mathbf{g}})\mathbf V$ | inner | $\operatorname{softmax}$ | ✗ | full | 46.598211 | 42.484381 | 49.671351 | 46.072891 |
| IV. Training Scope (full scope vs. sparse scope) | ||||||||
| (9)1 $\operatorname{softmax}(\mathbf q\mathbf K^\top+\log\mathbf g)\mathbf V$ | inner | $\operatorname{softmax}$ | ✓ | full | 30.825277 | 52.286961 | 53.769771 | 54.471091 |
| (10) $\operatorname{softmax}(\mathbf q\mathbf K_{\mathcal S}^\top+\log\mathbf g_{\mathcal{S}})\mathbf V_{\mathcal S}$ | inner | $\operatorname{softmax}$ | ✓ | sparse | 24.827504 | 51.080871 | 53.674011 | 54.874101 |
| (11) $\operatorname{softmax}(\mathbf q\mathbf K_{\tilde{\mathcal S}}^\top+\log\mathbf g_{\tilde{\mathcal{S}}})\mathbf V_{\tilde{\mathcal S}}$ | inner | $\operatorname{softmax}$ | ✓ | $^{*}$full$^{*}$ | 26.327350 | 51.277321 | 52.674241 | 52.275521 |
표 4. Evaluation results on reasoning benchmarks. Quest$^\ast$ denotes results extracted from Figure 5 of SeerAttention-R using the WebPlotDigitizer tool, while SeerAttn-R$^\#$ denotes our reproduced results. Standard deviations are shown in parentheses.
| Budget | Method | MATH500 4B | MATH500 8B | MATH500 14B | GPQA-Diamond 4B | GPQA-Diamond 8B | GPQA-Diamond 14B | AIME24 4B | AIME24 8B | AIME24 14B | AIME25 4B | AIME25 8B | AIME25 14B |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Full | Full Attn | 93.93 | 94.43 | 95.22 | 56.19 | 60.54 | 65.25 | 71.25 | 74.48 | 78.91 | 66.41 | 67.86 | 70.21 |
| 1024 | Sliding Window | 20.181.3 | - | - | 1.5210.5 | - | - | - | - | - | - | - | - |
| Quest$^*$ | 10.38 | 31.65 | 54.45 | 4.05 | 8.76 | 18.15 | - | - | - | - | - | - | |
| StreamingLLM | 72.721.8 | 72.171.8 | 73.471.8 | 13.861.7 | 13.041.8 | 19.072.2 | - | - | - | - | - | - | |
| SeerAttn-R | 84.67 | 83.57 | 86.12 | 39.84 | 39.43 | 45.64 | - | - | - | - | - | - | |
| SAS\xspace | 90.651.1 | 91.271.1 | 92.931.0 | 50.412.8 | 53.172.9 | 61.142.9 | - | - | - | - | - | - | |
| 2048 | Sliding Window | 50.721.8 | - | - | 8.9311.6 | - | - | 5.4712.4 | - | - | 2.1911.1 | - | - |
| Quest | 40.74 | 68.66 | 81.52 | 12.17 | 24.83 | 41.01 | 0 | 12.98 | 25.12 | 0 | 12.66 | 27.22 | |
| StreamingLLM | 83.651.5 | 83.401.5 | 84.971.4 | 27.182.4 | 27.462.4 | 34.062.7 | 29.697.2 | 25.897.1 | 28.857.4 | 15.946.1 | 15.946.3 | 15.686.2 | |
| SeerAttn-R | 91.85 | 91.67 | 93.02 | 49.94 | 54.41 | 61.68 | 55.83 | 58.23 | 63.65 | 45.16 | 43.30 | 48.70 | |
| SAS\xspace | 93.471.0 | 93.171.0 | 93.541.0 | 54.862.8 | 58.742.8 | 65.092.8 | 68.856.6 | 70.736.7 | 77.766.6 | 56.387.3 | 58.417.2 | 64.197.1 | |
| 4096 | Sliding Window | 75.331.6 | - | - | 23.742.6 | - | - | 19.745.7 | - | - | 16.355.7 | - | - |
| Quest | 71.59 | 86.68 | 90.76 | 23.21 | 43.18 | 58.02 | 12.41 | 43.99 | 46.67 | 12.41 | 32.14 | 42.13 | |
| StreamingLLM | 91.031.1 | 91.121.1 | 92.071.1 | 40.402.8 | 42.272.8 | 47.352.9 | 45.947.9 | 46.358.0 | 49.328.1 | 31.567.3 | 31.157.4 | 32.607.5 | |
| SeerAttn-R | 94.10 | 94.00 | 95.12 | 55.40 | 60.48 | 63.83 | 69.32 | 71.35 | 75.73 | 58.59 | 57.81 | 64.79 | |
| SeerAttn-R$^{\#}$ | 93.001.1 | 94.250.9 | 94.830.8 | 54.862.8 | 59.032.9 | 63.672.8 | 69.166.9 | 69.436.9 | 75.106.8 | 56.597.6 | 57.667.4 | 64.697.0 | |
| SAS\xspace | 93.671.0 | 94.231.0 | 95.230.8 | 55.112.9 | 60.422.8 | 65.032.8 | 71.726.8 | 73.496.7 | 78.286.4 | 59.977.3 | 63.417.2 | 67.296.9 |
표 5. Evaluation results on LongBench, grouped by input length (0-4K, 4-8K, and 8K+ tokens).
| Budget | Method | Qwen3-4B 0-4K | Qwen3-4B 4-8K | Qwen3-4B 8K+ | Qwen3-4B Avg. | Qwen3-8B 0-4K | Qwen3-8B 4-8K | Qwen3-8B 8K+ | Qwen3-8B Avg. | Qwen3-14B 0-4K | Qwen3-14B 4-8K | Qwen3-14B 8K+ | Qwen3-14B Avg. |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Full | Full Attn | 53.9 | 52.4 | 50.5 | 52.2 | 57.4 | 54.1 | 51.7 | 54.4 | 59.2 | 55.6 | 55.0 | 56.6 |
| 2048 | SeerAttn-R | 53.5 | 51.6 | 48.4 | 51.2 | 57.0 | 53.1 | 47.6 | 52.6 | 58.9 | 54.3 | 51.5 | 54.9 |
| SAS\xspace | 53.6 | 52.1 | 48.8 | 51.5 | 57.0 | 53.9 | 49.3 | 53.4 | 59.2 | 54.4 | 53.9 | 55.8 | |
| 4096 | SeerAttn-R | 54.0 | 52.1 | 49.7 | 51.9 | 57.4 | 53.9 | 50.0 | 53.8 | 59.0 | 54.8 | 53.5 | 55.7 |
| SAS\xspace | 53.8 | 52.4 | 49.8 | 52.0 | 57.4 | 54.1 | 50.4 | 53.9 | 58.9 | 54.8 | 54.8 | 56.2 |
표 6. Evaluation results on BFCL (Multi-Turn).
| Budget | Method | Qwen3-4B | Qwen3-8B | Qwen3-14B |
|---|---|---|---|---|
| Full | Full Attn | 35.75 | 42.75 | 44.50 |
| 2048 | SeerAttn-R | 29.00 | 34.38 | 38.88 |
| SAS\xspace | 32.50 | 36.75 | 39.50 | |
| 4096 | SeerAttn-R | 33.38 | 39.25 | 43.88 |
| SAS\xspace | 34.38 | 41.25 | 44.00 |
표 7. Evaluation results on VitaBench with Qwen3-14B.
| Budget | Method | Delivery Avg@4 | Delivery Pass@4 | Delivery Pass4 | Instore Avg@4 | Instore Pass@4 | Instore Pass4 | OTA Avg@4 | OTA Pass@4 | OTA Pass4 |
|---|---|---|---|---|---|---|---|---|---|---|
| Full | Full Attn | 29.03.3 | 62.04.8 | 8.02.7 | 27.22.9 | 64.04.8 | 5.02.2 | 12.52.1 | 37.04.8 | 1.01.0 |
| 2048 | SeerAttn-R | 32.23.0 | 67.04.7 | 4.02.0 | 19.02.5 | 48.45.1 | 2.11.5 | 4.21.4 | 14.94.3 | 0.00.0 |
| SAS\xspace | 30.03.3 | 61.04.9 | 9.02.9 | 19.22.5 | 51.05.0 | 3.01.7 | 10.21.8 | 28.04.5 | 0.00.0 | |
| 4096 | SeerAttn-R | 32.53.1 | 63.04.8 | 4.02.0 | 26.72.8 | 56.04.9 | 1.01.0 | 11.72.2 | 29.04.5 | 1.01.0 |
| SAS\xspace | 34.23.0 | 68.04.6 | 4.02.0 | 28.73.0 | 61.04.9 | 5.02.2 | 12.32.3 | 27.04.4 | 2.01.4 |
표 8. Evaluation results on general downstream tasks for OLMo3-7B continued pretraining.
| Task | Olmo3-Base | Olmo3-512SWA | HiLS-Attn RoPE | SAS\xspace-RoPE |
|---|---|---|---|---|
| General Knowledge | ||||
| MMLU (5-shot) | 59.90 | 59.12 | 56.69 | 58.58 |
| GPQA (5-shot) | 29.29 | 31.31 | 24.75 | 26.77 |
| Hellaswag (10-shot) | 44.17 | 42.96 | 33.17 | 50.63 |
| ARC-c (25-shot) | 53.56 | 55.59 | 54.92 | 52.54 |
| BoolQ (5-shot) | 61.01 | 64.22 | 63.43 | 62.87 |
| Race (3-shot) | 73.89 | 72.97 | 69.50 | 74.05 |
| Mathematics | ||||
| CMath | 41.53 | 39.98 | 42.44 | 42.17 |
| GSM8K | 37.00 | 33.43 | 35.71 | 34.42 |
| Code | ||||
| CRUX | 24.62 | 24.50 | 25.62 | 19.25 |
| HumanEval+ | 20.10 | 19.50 | 18.90 | 20.10 |
| MBPP+ | 37.60 | 32.30 | 33.30 | 34.60 |
| Average | 43.88 | 43.24 | 41.68 | 43.28 |
댓글