순환 절반은 양자화하기 쉬운 절반이다: Gated DeltaNet이 4비트에서 살아남는 이유
TL;DR — 하이브리드 27B LLM(Qwen3.8-27B)의 순환 레이어인 Gated DeltaNet(GDN) 48개 층은 그동안 “오차가 문맥을 타고 누적된다"는 직관 때문에 816비트로 보호되어 왔다. 이 논문은 그 직관이 거꾸로임을 보인다. GDN 게이트를 포함한 496개 전 레이어를 NVFP4 W4A4로 양자화한 19%)을 기록했다. 그리고 4단계 메커니즘 연구로 왜 그런지 — 블록 스케일링이 이상치를 국소화하고, 게이트 비선형성이 노이즈를 압축하며, 델타 룰이 상태 오차를 능동적으로 지운다는 — 아키텍처 차원의 설명까지 제시한다.Minima 는 6개 벤치마크에서 BF16과 시드 노이즈 내 차이(5-task 평균 −0.52)로 일치하면서도, 가장 작고(17.5 GiB) 가장 빠른 프리필(+14
핵심 아이디어
이 논문의 핵심 주장은 한 문장으로 정리된다.
커뮤니티가 “깨지기 쉽다"고 생각해 정밀하게 보호해 온 GDN 게이트 투영(
a,b)은, 사실 아키텍처가 이미 스스로 보호하고 있는 가장 안전한 투영이다. 따라서 순환 레이어는 보호가 아니라 전부 4비트로 양자화해야 할 대상이다.
저자들은 “일단 해보니 됐다"에서 그치지 않고, 왜 되는지를 캡처된 활성화 통계 → 투영별 민감도 재생 → FP32 lockstep 재귀 → 위치별 PPL 분해라는 4단계 체인으로 설명한다(근거: §5). 그 결과물은 단순한 양자화 레시피가 아니라, 선형 어텐션(linear attention) 연산자 클래스의 양자화 가능성에 대한 메커니즘적 설명이다(근거: §8).
배경: 그들이 해결한 문제
두 가지 트렌드의 충돌 지점
서빙 비용 때문에 W4A4(가중치·활성화 모두 4비트) 추론이 실용적 목표가 되었다. NVFP4는 E2M1 4비트 값 + 16-element 블록당 E4M3 스케일 + 텐서당 FP32 스케일로 구성되어, 현재 가속기에서 네이티브로 동작한다(근거: §1). 동시에 프론티어 오픈 모델은 점점 하이브리드화되고 있다. Qwen3.8-27B는 64개 레이어 중 48개가 GDN, 16개만 full attention이다(근거: §1, §2).
그런데 이 두 트렌드는 아직 만나지 못하고 있었다. 저자들이 조사한 모든 공개 4비트 빌드와 Qwen 팀의 자체 FP8 릴리즈는 MLP는 공격적으로 양자화하면서도 GDN 블록은 보호했다. 특히 감쇠(decay)를 제어하는 게이트 a와 쓰기 강도(write strength)를 제어하는 b 투영은 8~16비트로 남겨두었다(근거: §1).
그 보호의 직관적 근거 — 그리고 그 반박
보호의 암묵적 논리는 자연스럽다. GDN의 상태는 재귀적으로 갱신되므로,
$$ S_t = \alpha_t S_{t-1} + \beta_t, k_t, (v_t - S_{t-1}^\top k_t)^\top, \qquad o_t = S_t^\top,(q_t/\sqrt{K}) $$
상태 $S_t$는 수만 토큰을 관통한다. 따라서 단계당 양자화 오차는 복리로 누적될 것이고, 그 중에서도 게이트의 오차가 가장 빨리 누적될 것이라는 예상이다(근거: §1).
이 논문의 실험 결과는 이 직관이 이 아키텍처에서는 반대임을 보여준다. 게이트 오차는 오히려 가장 작은 출력 오차를 만들고, 32K 문맥에서 상태 오차는 누적되지 않고 평탄한 고원(plateau) 을 유지한다(근거: §5.3).
새로운 접근법: Minima
Minima는 Qwen3.8-27B의 496개 선형 레이어 전부(GDN 240개 + attention 64개 + MLP 192개)를 llm-compressor의 NVFP4 W4A4로 양자화한다. 제외 대상은 lm_head, 임베딩, 컨볼루션, 노름뿐이다. 캘리브레이션은 고정된 128-sample × 32K-token 세트로 수행하고, §6의 global-scale 정합화(harmonization)를 거쳐 서빙한다(근거: §3).
비교 대상은 두 개의 공개 NVFP4 체크포인트다.
- Unsloth(Dynamic v3), RadixArk(ModelOpt): GDN과 attention을 FP8 W8A8로,
a/b는 BF16으로 두고 MLP만 NVFP4로 양자화. - Minima + scales: Minima에 캘리브레이션된 FP8 KV-cache 스케일(§7)을 더한 것. 실제 공개 체크포인트.
핵심 차이는 하나다. Minima만이 GDN 블록(5.5B 파라미터, decode 가중치 바이트의 약 23%)을 4비트로 내렸다(근거: §4).
작동 원리: 구체적인 예시로 살펴보기
저자들이 제시한 4단계 메커니즘 체인을 따라가 보자. 모든 실험은 BF16 모델이 8개의 32K-token 문서를 읽을 때 48개 GDN 레이어의 실제 입력을 캡처하고, GDN 한 레이어를 단독 재구현(참조 구현과 6×10⁻³ 상대 차이로 검증)한 뒤, 가짜 양자화(fake quantization) — 양자화→역양자화→고정밀 지속 — 로 정확히 4비트 반올림 오차만 주입하는 방식이다(근거: §5).
flowchart LR
A[블록 스케일링이<br/>이상치 국소화] --> B[게이트 비선형성이<br/>노이즈 압축]
B --> C[델타 룰 재귀가<br/>오차 평탄화·소거]
C --> D[종단 간 비용이<br/>문맥과 함께 소멸]
1단계 — 입력이 문제가 아니다 (이상치는 블록 스케일이 국소화한다)
가장 단순한 가설은 “GDN이 attention보다 쉬운 입력 분포를 받는다"다. 아니다. GDN의 투영은 attention과 같은 residual stream을 읽는다(근거: §5.1, Table 2). 중간 레이어 기준 max/RMS = 63.5, kurtosis ≈ 1,560, 핫 채널은 중앙값의 100배에 달하며, 16-element 블록의 10~32%가 단일 값에 지배당한다(out_proj는 32.1%).
그런데 실제 토큰당 A4 양자화 오차는 모든 레이어 역할에서 7.5~9.2%로 균일하다. 이유는 NVFP4의 16-element 블록 스케일링이다. 블록의 최댓값이 그 블록의 스케일을 정하므로, 이상치는 자기 블록의 15개 이웃만 열화시킨다. 게다가 블록 내 max/RMS ≤ √16 = 4라는 구조적 한계가 블록이 지나치게 “one-hot"이 되는 것을 막는다(근거: §2). 오차는 32K 창 전체에서 위치와 무관하게 평탄하다. 즉 강건성은 깨끗한 데이터에서 오는 것이 아니라, 레이어가 오차로 무엇을 하는가에서 온다(근거: §5.1).
2단계 — 보호받던 투영이 가장 안전하다 (게이트 비선형성이 방패다)
각 캡처 레이어를 한 번에 한 투영만 양자화해 재생(96회 재생 × 8K 토큰)하고 레이어 출력 $y$의 변화를 측정했다(근거: §5.2, Table 3). 결과는 커뮤니티의 정밀도 지도를 뒤집는다.
| variant | GEMM 오차 | 1−α 오차 | β 오차 | state 오차 | 출력 y 오차 |
|---|---|---|---|---|---|
a : W4A4 | 11.0% | 7.5% | — | 3.6% | 2.1% |
b : W4A4 | 8.5% | — | 5.2% | 3.2% | 2.6% |
qkv : W4A4 | 10.6% | — | — | 12.1% | 10.4% |
out : W4A4 | 12.7% | — | — | 0% | 12.7% |
all : W4A4 | — | 7.5% | 5.2% | 12.6% | 19.2% |
(근거: Table 3)
게이트 투영 a와 b는 GEMM 오차가 11.0%, 8.5%로 가장 크면서도, 출력 $y$를 움직이는 정도는 2.1%, 2.6%로 가장 작다. 방패는 게이트의 파라미터화다(근거: §2, Eq.1):
$$ g_t = -\exp(A_{\log}),\mathrm{softplus}(a_t + dt_bias), \quad \alpha_t = e^{g_t} \in (0,1), \quad \beta_t = \sigma(b_t) \in (0,1) $$
구체적인 수치로 보자. a의 pre-activation에 ~11%의 오차가 실려도, softplus와 exponential이 이를 압축해 $1-\alpha$에서는 7.5%, $\beta$에서는 5.2% 오차로 줄어든다. 그리고 재귀(§5.3)가 둘 다 견뎌낸다. 실제로 Minima가 지고 가는 오차는 게이트가 아니라 평범한 세 GEMM — out(12.7%), qkv(10.4%), z(9.9%) — 에서 온다.
한 가지 더: 다섯 투영의 오차는 통계적으로 독립이어서, 단일 투영 오차의 제곱합 근사(19.4%)가 전부 동시에 양자화한 실제 측정값(19.2%)과 일치한다. 그리고 모든 투영에서 가중치 오차가 활성화 오차보다 크다(근거: §5.2).
3단계 — 재귀는 노이즈를 유계로 가두고 지운다
Table 3의 12.6% 상태 오차가 긴 문맥에서 커질까? 깨끗한 궤적 하나와 동일 입력에 대한 11개의 섭동 궤적을 lockstep FP32로 32K 토큰 돌렸다(근거: §5.3, Fig. 1a). 결과는 놀랍다.
- 상태 오차
relS는 token 256에서 12.96%, token 32,768에서 12.31% — 사실상 평탄. 고원값 12.6%, 최대 14.9%. - 재귀는 “망각과 주입이 균형을 이루는” 평형에 즉시 도달해 전 창에 걸쳐 유지된다.
더 흥미로운 것은 망각 속도다. $t=1{,}024$에서 1% 상태 임펄스를 한 번 주입하면, $1/e$로 떨어지는 데 80~1,382 스텝, $1/10$까지는 2,2002,900 스텝이면 충분하다. 반면 같은 레이어들의 감쇠가 암시하는 지평선 $1/(1-\alpha)$은 44K~62K 토큰에 달한다(근거: §5.3, Fig. 1b). 즉 재귀는 감쇠 게이트만으로는 설명할 수 없을 만큼 빠르게 오차를 지운다.
그 비밀은 델타 룰 자체에 있다. Eq.(2)의 쓰기는 $v_t$를 무작정 누적하는 것이 아니라, 현재 키 방향 $k_t$를 따라 상태가 예측하던 것을 $v_t$로 덮어쓴다. 그래서 새 토큰이 도착할 때마다 과거 오차가 키 단위로 삭제된다. 단순한 감쇠가 아니라 능동적 소거다(근거: §5.3).
저자들은 합성 노이즈 실험으로 진짜 취약점도 짚는다. 상태는 $\alpha$에 직접 가해지는 상대 노이즈에 매우 민감하다. $\alpha \approx 1$이므로, $1/(1-\alpha)$의 관점에서 작은 $\delta\alpha$는 지평선의 엄청난 상대 변화가 된다 — 0.1% 곱셈 노이즈가 22% 상태 오차를 만든다(근거: §5.3, Table 6). 하지만 a를 양자화하면 11% GEMM 오차가 상태 오차 3.6%에 그치는 이유는, 노이즈가 Eq.(1)의 pre-activation에 실려 softplus와 exp가 지평선에 닿기 전에 압축하기 때문이다. 즉 학습 안정성을 위해 선택된 log-space 게이트 파라미터화가, 서빙 시점에 게이트를 양자화-면역(quantization-proof)으로 만든다. $\beta$ 노이즈는 아예 무해하다(1% 노이즈 → 0.4% 상태 오차). 쓰기가 자기-수정적이기 때문이다(근거: §5.3).
4단계 — 종단 간, 문맥이 오차를 씻어낸다
메커니즘이 맞다면, 서빙된 모델의 양자화 갭은 위치에 따라 커지지 말아야 한다. 32K PPL의 토큰별 NLL을 위치로 분해한 결과(근거: §5.4, Fig. 2, Table 4):
- 가중치 양자화 갭(Minima − BF16)은 전반부 +0.081 nats, 후반부 +0.011 nats, 마지막 2K 토큰에서는 −0.053 nats(Minima가 BF16보다 더 좋음).
- 4비트 비용은 짧은 문맥에서의 토큰당 효과이며, 채워진 상태가 이를 흡수한다.
반면 FP8-KV 비용은 정반대 패턴 — 작고, 위치와 함께 상승하며, Minima에서 ~3배 크다. 이것은 가중치 효과가 아니라 attention 경로 효과의 시그니처다. §7이 캘리브레이션 스케일로 이를 제거한다.
성능 검증: 주요 결과
모든 숫자는 단일 서빙 체제(FP8 KV, vLLM 0.27.1, TP=1, RTX PRO 6000 1장, GPU utilization 0.85)에서 측정되었다(근거: §3).
| 지표 | BF16 | Minima | Unsloth | RadixArk |
|---|---|---|---|---|
| PPL @4K / @32K ↓ | 6.95 / 10.35 | 7.67 / 10.84 | 7.16 / 9.91 | 7.35 / 9.95 |
| MMLU-Pro (%) | 80.4 | 79.7 | 78.9 | 79.1 |
| GSM8K (%) | 95.5 | 95.5 | 95.4 | 95.7 |
| AIME'25 (%) | 86.7 | 86.7 | 87.5 | 84.2 |
| GPQA-Diamond (%) | 86.5 | 85.1 | 85.0 | 85.4 |
| LiveCodeBench v6 (%) | 79.0 | 78.5 | 79.9 | 79.6 |
| 5-task 평균 / Δ | 85.62 | 85.10 / −0.52 | 85.34 / −0.28 | 84.80 / −0.82 |
| 가중치 VRAM (GiB) | 50.13 | 17.53 | 20.23 | 18.83 |
| Decode tok/s @32 | 621 | 1,154 | 1,132 | 1,174 |
| TTFT @32K (s) | 6.90 | 4.03 | 4.49 | 4.39 |
(근거: Table 1, Table 5)
세 가지 관찰.
정확도는 시드 노이즈 내에서 일치. 세 양자화 레시피의 5-task 평균은 0.54점 범위 — AIME 한 문제(3.3점)보다 작다. 가장 큰 단일 과제 격차(RadixArk의 AIME −2.5)조차 BF16 자신의 시드 분산(83.3~93.3) 안이다. Minima는 GDN 전체를 4비트로 내리고도 BF16의 AIME'25 점수(4개 시드 모두 26/30)를 정확히 맞췄다. 생성 행동도 변하지 않는다 — 평균 AIME 생성 토큰 14,531 vs 14,532로 “더 오래 생각"하지 않고, 32K 상한 도달 빈도도 오히려 약간 낮다(근거: §4).
GDN 4비트화는 측정 가능한 효율 이득. Minima는 BF16 대비 VRAM/디스크에서 2.9배 작고, 커뮤니티 빌드보다 7
13% 작다. 단일 카드에서 가장 큰 KV 예산(캐시 가능 토큰 1.81M), 가장 빠른 프리필(TTFT 6.90s→4.03s @32K; 8K 프롬프트 처리량 +1419%)을 기록한다. decode는 가중치 대역폭 지배라 세 양자화 모델 모두 4% 내(근거: §4).PPL은 정직한 잔차. PPL만이 레시피를 서열화한다: Unsloth < RadixArk < Minima. 이는 커뮤니티 레시피가 “덜 양자화하고 1.3~2.7 GiB의 가중치로 그 여유를 지불"했기 때문이다. Minima의 BF16 대비 PPL 갭은 4K에서 +0.72, 32K에서 +0.49로 오히려 줄며, 이는 어떤 과제 점수에도 도달하지 않는다(근거: §4).
Key Numbers (요약)
- Params: 27B (Qwen3.8-27B) | Context: 64K 검증 | Hidden: 5120
- Architecture: Hybrid — 48 GDN + 16 attention (64 layers), GDN state $K{=}V{=}128$
- Quantization: NVFP4 W4A4 (E2M1 값 + 16-element 블록당 E4M3 스케일 + 텐서당 FP32 스케일)
- 양자화 대상: 496개 선형 레이어 (GDN 240 = 5×48, attention 64 = 4×16, MLP 192 = 3×64)
- Serving: TTFT @32K 4.03 s (BF16 6.90 s) | TPOT @32 ≈ 26.9 ms/token (BF16 49.5) | Decode @32 = 1,154 tok/s (BF16 621)
- VRAM: 가중치 17.53 GiB (BF16 50.13 GiB) | KV 캐시 1.81M cacheable tokens/카드
- HW: 1× RTX PRO 6000 (96GB, SM120), TP=1, vLLM 0.27.1
- Cost: $/1M tokens, 에너지 kWh는 논문에 미보고
$$ \text{KV-Cache(GB)} \approx \frac{2 \cdot L \cdot H \cdot d_\text{head} \cdot \text{seq} \cdot \text{batch} \cdot \text{bytes/elt}}{10^9} $$
용어: TPOT = Time Per Output Token (필요 시 “TBT = TPOT"로 병기).
우리의 관점: 강점, 한계, 그리고 이 연구가 중요한 이유
강점 — “된다"를 넘어 “왜 되는지"까지
이 논문의 진짜 가치는 양자화 레시피 자체보다, 그 뒤의 메커니즘 설명의 정밀함이다. 합성(synthesis)은 이렇게 요약된다(근거: §5.4):
블록 스케일링이 residual stream의 이상치를 국소화하고(§5.1), 게이트 비선형성이 제어 신호에 닿는 것을 압축하며(§5.2), 델타-룰 재귀가 남은 노이즈를 고원에 가두고 능동적으로 지우며(§5.3), 그래서 종단 간 비용이 문맥과 함께 줄어든다(§5.4).
여기에는 운이나 파인튜닝이 개입하지 않는다. 아키텍처 자체의 게이팅·보정 구조가 답이다. “커뮤니티가 보호하는 투영은 정확히 아키텍처가 이미 보호하는 투영"이라는 반전은 명료하고 설득력 있다.
두 번째 강점은 측정 파이프라인을 고치는 정직함이다(근거: §6). 그들이 발견·수리한 global-scale 불일치(모듈별 캘리브레이션 vs fused 서빙 GEMM)는 게이트를 조용히 오염시키고, 심지어 가짜로 더 좋은 32K PPL을 만들어냈다(오염된 모델은 AIME 80.8로 열화하면서도 PPL@32K는 6.86으로 “개선”). 이는 GDN을 양자화하는 모든 하이브리드 NVFP4 배포에 해당하는 함정이다. 캘리브레이션된 FP8 KV 스케일(§7)이 PPL 페널티의 83%를 서빙 비용 없이 회복한다는 것도 실용적 수확이다.
한계 — 정직한 범위
저자들이 명시적으로 인정한 한계(근거: §9):
- 증거의 범위. 단일 모델 패밀리·크기(Qwen3.8-27B), 단일 양자화 포맷(NVFP4), 32K PPL/64K 검색까지. 128K+는 외삽이다. 유계 오차 메커니즘이 더 긴 문맥을 예측하지만 검증되진 않았다.
- 게이트-방패 논거의 조건. §5.3의 결론은 log-space softplus/exponential 파라미터화에 의존한다. 감쇠가 선형 파라미터화된 재귀 믹서는 같은 혜택을 못 받을 수 있다(0.1% 직접 노이즈가 상태를 해친다).
- decode 오버헤드. Minima는 가중치 바이트가 더 적은데도 RadixArk보다 decode가 2~4% 느리다 — small-batch NVFP4 활성화 양자화 오버헤드라는 커널 수준 문제로, 레시피 자체의 속성은 아니다.
- 동시 연구. QUASAR[1]의 QAT 체크포인트는 릴리즈 시점이 늦어 벤치마크되지 않았다. 저자들은 자신들의 결과가 “학습이 필요 없다 — 캘리브레이션만의 PTQ로 BF16 수준 과제 정확도에 도달한다"는 것을 보여준다고 주장한다(근거: §8).
잠재적 한계로 덧붙이자면, 실험이 단일 GPU(TP=1)에서만 수행되어 멀티-GPU/tensor-parallel 서빙에서의 fused-GEMM 스케일 이슈가 어떻게 나타나는지, 그리고 $/1M token이나 에너지 같은 총소유비용 관점의 지표가 부재하다는 점이 남는다.
이 연구가 중요한 이유
- 실용적으로: “quantize everything, ship KV scales"라는 한 줄 레시피를 준다. 하이브리드 모델의 순환 절반은 지키지 말고 양자화하라는, 기존 관행을 뒤집는 지침이다.
- 개념적으로: 선형 어텐션 연산자 클래스의 양자화 가능성을 메커니즘으로 설명한, 아마도 최초의 연구다. “오차가 복리로 누적된다"는 직관을 “델타 룰이 능동적으로 소거한다"로 대체한 것은 후속 연구의 기준점이 될 만하다.
- 엔지니어링 경고로: fused-GEMM global-scale 불일치, composite 서빙 경로, thinking 모델의 raw-completion 하네스 무효화는 재현·평가를 망치는 조용한 함정들로, 그 자체로 가치 있는 기여다(근거: §6).
다음 단계는?: 앞으로의 길
- 범위 확장. 128K+ 장문맥 스트레스 테스트, 다른 크기/패밀리의 하이브리드 모델, 그리고 NVFP4 외 포맷(FP6, MXFP)으로의 일반화가 즉각적인 후속 과제다(근거: §9).
- 파라미터화 일반성 검증. 선형 파라미터화된 감쇠를 쓰는 다른 재귀 믹서(Mamba 계열 등)가 게이트-방패 혜택을 받는지 확인하는 것이 핵심 질문이다. 못 받는다면, 그쪽은 여전히 보호가 필요할 수 있다(근거: §9).
- 저비트 확장. 저자들 그룹의 동시 작업이 이미 full model(임베딩·LM head·multi-token-prediction head 포함)을 NVFP4로, MLP를 3-bit codebook + distillation-healed low-rank residual로 내리며 — GDN/attention은 이 논문의 4비트 결과를 기반으로 삼았다. 12.3 GiB 로딩(50.1 GiB의 4.1배 축소), 128-way concurrency에서 1,200+ tok/s를 언급한다(근거: §8).
- TCO 관점 보강. $/1M token, 에너지/카본 지표를 더해 “가장 작고 가장 빠른 프리필"이라는 주장을 비용으로 뒷받침하면, 실제 배포 의사결정에 더 직접적으로 기여할 수 있다.
한 줄 결론: 하이브리드 LLM의 순환 절반은 오차를 누적시키는 쪽이 아니라 지우는 쪽이기 때문에, 4비트 양자화에서도 살아남는다. 실무자에게 주는 지침은 짧다 — 순환 절반은 쉬운 절반이다. 양자화하라.(근거: §10)
참고: 재현 체크리스트
- 코드/체크포인트: https://huggingface.co/minima-ai/mnma_qwen3.8_27b_nvfp4 | vLLM 0.27.1, llm-compressor
- 캘리브레이션: 고정 128-sample × 32K-token, fused-GEMM global-scale 정합화 적용(§6)
- 서빙: text-only 추출, FP8 KV, TP=1, GPU util 0.85, 32K generation cap
- 평가: chat-template 하네스(thinking disabled), per-sample validity gates, AIME/GPQA는 4시드 pass@1
- PPL@32K는 단일 서빙 경로·창 프로토콜 고정 후 비교(context inversion 주의, §6)
댓글