27BハイブリッドLLMを4ビットで動かす——Gated DeltaNetはなぜ量子化に耐えるのか(NVFP4 W4A4の実測と機構解明)
はじめに:ハイブリッドLLMと「再帰は量子化に弱い」という通説
従来の大規模言語モデル(LLM)は、文中の全トークン同士を比較するソフトマックス注意に依存してきた。これに対し「ハイブリッドLLM」とは、そのソフトマックス注意(フルアテンション)と、リカレント(再帰)な状態を持つ線形注意層を併用したアーキテクチャのことだ。代表例であるQwen3.8-27Bは、64層中48層がGated DeltaNet(GDN)、残る16層だけがフルアテンションという構成を持つ。
GDNは、固定サイズの行列状態にコンテキスト全体を圧縮する線形注意層である。書き込み時に「状態が既に予測している分」を差し引いてから上書きするデルタ則と、Mamba2流のゲーティング(忘却・書き込み強度を制御するゲート)を組み合わせたものだ。KVキャッシュを持たないため、コンテキストが長くなるほどフルアテンションに対してメモリ面で有利になる。
flowchart TB
subgraph H["ハイブリッドLLM(Qwen3.8-27B・全64層)"]
direction LR
G["GDN層 ×48<br/>線形注意(デルタ則+ゲーティング)<br/>行列状態に文脈を圧縮・KVキャッシュなし"]
A["Attention層 ×16<br/>ソフトマックス注意<br/>KVキャッシュを保持"]
end
In["入力トークン列"] --> H --> Out["出力"]
こうしたモデルの推論コストを下げるのが4ビット量子化(W4A4)だ。W4A4は重み(W)と活性値(A)の両方を4ビットに丸めて計算する技術で、NVFP4はNVIDIAの4ビット浮動小数点形式。Blackwell世代(SM120)のGPUでネイティブ実行できる。ところがコミュニティでは「再帰層は誤差が累積するから4ビットは危ない」という直感が長く支配的で、公開されているQwen3.8-27Bの4ビット版はどれも、GDNブロック(特にゲート射影)だけを8/16ビットに保護する戦略を採っていた。
はたしてこの直感は正しいのか。Minima AIの研究(arXiv:2609.04098)は、全496線形層をNVFP4 W4A4に量子化したチェックポイント「Minima」を構築し、この問いを実測で検証した。重みは50.13 GiBから17.53 GiB(2.9倍減)に縮みながら、5タスク平均はBF16とわずか−0.52ポイント差(85.62 vs 85.10)、AIME'25に至っては完全一致という結果を出している。この結論を読み解く前提として、従来の「保護」戦略と「全部4ビット」戦略の違いを押さえておこう。
| 戦略 | GDNのゲート射影 | その他すべての線形層 | 結果(実測) |
|---|---|---|---|
| 従来の保護戦略 | FP8/BF16で保護 | 4ビット | 精度は守られる分、メモリ削減は小さい |
| Minima(本論文) | NVFP4(4ビット) | NVFP4 W4A4(全496層) | 重み2.9倍減、タスク精度はほぼ不変 |
Gated DeltaNetの仕組み:何が「危ない」と言われてきたのか
Gated DeltaNet(GDN)は、コンテキスト全体を固定サイズの行列状態 S に圧縮する線形注意層である。Qwen3.8-27Bは64層中48層がGDN、残る16層がソフトマックス注意というハイブリッド構成で、長文の要約を担う「再帰的な半分」がこの層だ。その再帰更新は次の式で表される。
S_t = α_t・S_{t-1} + β_t・k_t(v_t − S_{t-1}ᵀk_t)ᵀ
ここで α_t は忘却ゲート、β_t は書き込み強度で、状態の振る舞いを決める2つのパラメータである。括弧内が「デルタ則」の中心で、現在の状態がキー k_t の方向に既に予測している値 S_{t-1}ᵀk_t を引き算し、「新しく得られた情報」だけを上書きする。更新の流れは次の通りだ。
flowchart LR
S[状態 St-1] -->|忘却ゲート α| F[α ・ St-1]
S -->|予測 St-1^T kt| D[差分 vt − 予測]
V[値 vt] --> D
D -->|書き込み β ・ kt| W[更新項]
F --> S2[新状態 St]
W --> S2
「再帰は量子化に弱い」と言われてきた根拠は、この α_t にあった。α が1に近いとき、過去の誤差が残り続ける目安である「減衰の地平線」は 1/(1−α) で表され、Qwen3.8-27Bでは層によって44K〜62Kトークンという数万トークンに達する。ゲートに載った量子化誤差はこの地平線を大きく変え、誤差を半永久的に残すように見えたのだ。
そこへ「トークンごとの微小誤差が32Kトークンで累積する」という暗黙の前提が加わった。毎ステップ同じ状態を更新し続ける再帰層では、1トークンあたりの誤差が極小でも、長いコンテキストを処理するうちに積み上がる、という直感である。このため、公開されているQwen3.8-27Bの4ビット版はどれも、GDNブロック——特にゲート射影——だけを8ビットや16ビットに「保護」する戦略を採っていた。この保護は果たして本当に必要だったのか。
「全部4ビット」で作ったMinima:検証実験の設計
実験の主役はMinima、Qwen3.8-27Bが持つ全496本の線形射影を、例外なくNVFP4のW4A4(重み・活性値とも4ビット)に量子化したチェックポイントである。内訳はGated DeltaNet(GDN)の射影240本、アテンション64本、MLP 192本。量子化はキャリブレーション(較正)のみのPTQ(Post-Training Quantization、学習後量子化)で、学習も蒸留も行わず、128サンプル×32Kトークンの凍結セットでスケールを決める。BF16のまま残すのは埋め込み・LMヘッド・正規化層など非線形成分だけだ。
比較対象は3つ。非量子化のBF16と、コミュニティ製NVFP4版であるUnsloth・RadixArkの2種だ。後者は「再帰層の誤差は長文で蓄積する」という通説に従って、GDNとアテンションをFP8、ゲート射影だけをBF16で保護するレシピを採る。
| 比較対象 | GDN・アテンション | ゲート射影 |
|---|---|---|
| BF16 | 非量子化 | 非量子化 |
| Unsloth / RadixArk | FP8 | BF16で保護 |
| Minima | NVFP4 W4A4 | NVFP4 W4A4(保護なし) |
つまり本実験は、「守るべき射影」という常識に従ったレシピと保護ゼロのMinimaを、同じ土俵で突き合わせる設計である。
評価条件は全モデルで統一した。vLLM 0.27.1、テンソル並列1(TP=1)、RTX PRO 6000(96GB、SM120、NVFP4ネイティブ対応)1枚、FP8 KVキャッシュ、生成上限32Kトークン。サーブ経路とベンチマークハーネスを揃えないと、数値がモデル差分ではなく測定条件の差分に汚染されてしまうためだ。
測るのは、4K/32Kのperplexityと、MMLU-Pro、GSM8K、AIME'25、GPQA-Diamond、LiveCodeBench v6の5タスク、そしてRULER(32K/64K検索タスク)である。AIME'25とGPQA-Diamondは4シードのpass@1で評価し、シードばらつきを数値比較の基準にしている。
結果:BF16と「シードノイズ以内」で一致、しかも最小・最速
「全496線形層をNVFP4 W4A4」にしたMinimaの評価結果は、精度はBF16とシードノイズ以内で一致し、サイズは最小、プリフィルは最速という3点に要約できる。比較はvLLM 0.27.1・TP=1・RTX PRO 6000(96GB, SM120)1枚・FP8 KVキャッシュ・32K生成上限という同一環境で、BF16(非量子化)とコミュニティ製NVFP4版のUnsloth・RadixArk(いずれもGDNとアテンションはFP8、ゲート射影のみBF16保護)を並べて行った。
| 指標 | BF16 | Minima | Unsloth | RadixArk |
|---|---|---|---|---|
| 5タスク平均(%) | 85.62 | 85.10 | 85.34 | 84.80 |
| AIME'25(pass@1×4) | 86.7 | 86.7 | 87.5 | 84.2 |
| MMLU-Pro | 80.4 | 79.7 | 78.9 | 79.1 |
| GSM8K | 95.5 | 95.5 | 95.4 | 95.7 |
| GPQA-Diamond | 86.5 | 85.1 | 85.0 | 85.4 |
| LiveCodeBench v6 | 79.0 | 78.5 | 79.9 | 79.6 |
| 重みVRAM(GiB) | 50.13 | 17.53 | 20.23 | 18.83 |
| TTFT@32K(秒) | 6.90 | 4.03 | 4.49 | 4.39 |
| デコード(tok/s, c32) | 621 | 1,154 | 1,132 | 1,174 |
5タスク平均(MMLU-Pro・GSM8K・AIME'25・GPQA-Diamond・LiveCodeBench v6)はBF16が85.62、Minimaが85.10で差は−0.52ポイント。AIME'25は4シードすべて26/30(86.7%)でBF16と完全一致である。これは評価シードを変えればBF16自身が振れるノイズ幅(シードノイズ)の範囲内であり、量子化のコストとして検出できない。量子化3レシピの間の平均差も0.54ポイントにとどまり、AIME1問分(3.3ポイント)より小さい。
サイズと速度の利得は明確だ。重みVRAMは50.13GiB→17.53GiB(2.9倍減)で4モデル中最小、32Kトークンのプリフィル処理時間(TTFT)は6.90秒→4.03秒と最速で、プリフィルスループット換算+14〜19%に相当する。デコードはconcurrency 32で1,154tok/sとBF16(621tok/s)の約1.9倍で、他の量子化レシピ(1,132〜1,174tok/s)とも同等だ。生成挙動も不変で、AIME'25の平均生成トークン数は14,531(BF16)と14,532(Minima)とほぼ同一。「4ビット化で考えすぎが誘発される」といった副作用も見られない。
唯一の系統的残差はperplexityだ。PPL@4Kで+0.72、PPL@32Kで+0.49と、Unsloth(7.16/9.91)やRadixArk(7.35/9.95)より悪化する。ただしこれは「ゲートを保護せずに全部を4ビットへ落とした分の代償」が短いコンテキスト側に表れたもので、長文で増幅される誤差の蓄積を示すものではない。この点を次章で機構的に論証する。
なぜ4ビットでも壊れないのか:4つの機構の連鎖
「再帰層は誤差が累積するから4ビットは危ない」という直感が、なぜ実測で覆されたのか。MinimaがBF16と肩を並べられたのは、次の4つの機構が連鎖するためだ。
機構① ブロックスケーリングが「外れ値」を局所化する
GDNの入力分布は穏やかではない。ある層ではmax/RMS≈63.5、尖度≈1,560に達し、ホットチャネルはメディアンの100倍の値を持つ。ここで効くのがNVFP4のブロックスケーリングだ。NVFP4はE2M1の4ビット値と16要素ごとのE4M3スケールを持ち、ブロック内の最大値がスケールを決めるため、「外れ値は自分のブロックの15隣人にしか害を及ぼさない」。結果としてA4量子化誤差は全レイヤーで7.5〜9.2%と均一で、重み誤差(10.5〜11.9%)より小さい。
機構② 守られてきたゲート射影が、実は最も頑健だった
1射影だけをW4A4(重み・活性値とも4ビット)にする感度リプレイ(96回・8Kトークン)では、ゲートa・bの出力誤差は2.1%・2.6%と5射影中最小だった。素のGEMM誤差が11.0%・8.5%あっても、ゲートが g_t = −exp(A_log)・softplus(a_t + dt_bias) と σ(b_t) で構成されるため、softplus→指数→シグモイドの非線形圧縮が約11%を約2%の出力誤差に潰す。誤差が本当に載るのはout 12.7%・qkv 10.4%・z 9.9%で、「守るべきはゲート」という通説の精度マップは逆だった。
機構③ デルタ則リカレンスがノイズを「平坦プラトー」に抑え、能動的に消す
FP32ロックステップ実験(クリーン軌道と摂動軌道に同一入力を32Kトークン流す)では、状態誤差はt=256で12.96%、t=32,768で12.31%——注入と忘却が釣り合うプラトー(約12.6%)に即座に到達し、蓄積しない。1%の状態インパルスも1/eまで80〜1,382ステップで消え、減衰ゲート由来の地平線(44K〜62Kトークン)より桁違いに速い。理由はデルタ則の書き込みが「現在のキー方向に沿って状態を上書き」し、古い誤差をキー単位で削除するためだ。なおαへ0.1%のノイズをかけると状態誤差は22%に跳ねる——対数空間パラメータ化があるからこそ、この罠は避けられている。
xychart-beta
title "状態誤差の推移:t=256でプラトーに到達"
x-axis "トークン位置" [0, 256, 32768]
y-axis "状態誤差 (%)" 0 --> 15
line [0, 12.96, 12.31]
機構④ エンドツーエンドでは「文脈が誤差を洗い流す」
32K窓内の位置別NLL分解では、量子化ギャップ(Minima−BF16)は前半+0.081 nats→後半+0.011→最終2Kで−0.053と、コンテキストが進むほど縮小し、最後はBF16を上回る。つまり4ビットのコストは「短いコンテキストでのトークン単位効果」であり、状態が満たされると吸収される——誤差蓄積モデルが予言する振る舞いと正反対だ。
xychart-beta
title "位置別量子化ギャップ ΔNLL(Minima − BF16)"
x-axis "32K窓内の位置" ["前半", "後半", "最終2K"]
y-axis "ΔNLL (nats)" -0.1 --> 0.1
bar [0.081, 0.011, -0.053]
まとめると、①ブロックスケーリングによる外れ値の局所化→②ゲート非線形による残りの圧縮→③デルタ則によるプラトー維持と能動消去→④文脈の充填によるギャップ縮小。この4段階の連鎖こそが「再帰は4ビットに弱い」という通説を覆す現実を作り出している。
正しく測るための罠:この論文が踏み抜いた4つの落とし穴
4ビット量子化の良し悪しを論じるには、「測り方」自体が正しいことが前提になる。本論文は評価環境の構築中に4つの測定上の罠を踏み抜いており、それぞれの原因を特定して修復した後に本測定へ臨んでいる。以降、その4つを順に紹介する。
罠① モジュール別キャリブレーションと融合GEMMのスケール不整合
量子化ツールは線形モジュールごとにグローバルスケールを決めるのに対し、推論サーバー側はGDNの射影を融合(in_proj_qkv+z、in_proj_b+a)して1つのGEMMとして実行する。この2つのスケール比がqkv/zで1.82倍、b/aで2.75倍も乖離すると、忘却・書き込みゲートが狂ったスケールで計算されてしまう。厄介なのは「偽りの良さ」だ。破損モデルはAIME'25が80.8に落ちる一方、32K PPLは6.86とBF16(10.35)より「良い」値を示す——壊れた忘却ゲートが全情報を保持し、WikiTextの次トークン予測に偶然有利に働くためである。修復は融合グループを共通グローバルスケールに書き換え、比をブロックスケールへ折り込む方法(94スケールセット、再丸め誤差≤6.2%)で行われ、カーネル検証の誤差は0.35/0.57から0.002まで低下した。
罠② マルチモーダル複合体のサーブ経路
公開チェックポイントはVLM複合体である。テキストだけを入力してもマルチモーダル位置エンコード経路を通るため、BF16のままでもPPL@32Kが10.04と10.22で食い違う。長文スコアを安定させるには、テキスト専用に抽出したモデルでサーブすべきだ。
罠③ 思考モデルのハーネス問題
raw-completion方式の評価ハーネスはチャットテンプレートなしで入力を送るため、「thinking無効」の指示がモデルに届かない。MMLU-Proでは25〜48/50問が思考を開き、±40〜60ポイントもの無効スコアの振れが生じる。有効値(80.4/79.7)が無効値(66.3/58.6)として記録されるケースもある。
罠④ ベースモデルのコンテキスト反転
BF16のままでも、32Kリクエスト内のPPLは6.95から10.35へ悪化する。これは決定論的で、vLLMと参照実装が3桁一致するモデル固有の特性であり、量子化とは無関係だ。比較は必ず同一サーブ経路・同一ウィンドウプロトコルで行わなければならない。
| 罠 | 代表症状 | 対処 |
|---|---|---|
| ① スケール不整合 | 破損モデルがPPL「改善」 | 融合グループを共通スケールへ |
| ② 複合体サーブ経路 | 長文PPLが変動 | テキスト専用抽出でサーブ |
| ③ ハーネス問題 | ±40〜60ポイントの振れ | テンプレート付きで評価 |
| ④ コンテキスト反転 | BF16でもPPL悪化 | 同一経路・同一窓で比較 |
KVキャッシュはFP8で十分?:「ship KV scales」のレシピ
先に前提を確認しておく。KVキャッシュとは、アテンション層が過去のキー(K)とバリュー(V)の行列を保持して注目計算を効率化する作業メモリのことだ。Qwen3.8-27Bは64層のうちフルアテンションが16層だけで、残る48層のGated DeltaNet(GDN)は固定サイズの行列状態に情報を圧縮するためKVキャッシュを持たない。この構造だけでキャッシュ消費層は設計的に4分の1に縮まっており、以降の議論は16層に限定される。
FP8(8ビット浮動小数点)へのキャッシュ丸めの費用対効果は明確だ。同じVRAMで扱えるキャッシュ容量は約1.8〜1.9倍に増え、MMLU-ProやAIME'25などのタスクスコアはすべてシードばらつきの範囲内に収まる。唯一の系統的コストは32Kウィンドウのperplexity(PPL)で、BF16モデルでは+0.13、Minimaでは+0.41と約3倍のペナルティになる。これはK/V射影自体がすでに4ビット(W4A4)で、キャッシュ再丸めに使えるマージンが少ないためと解釈される。
この+0.41を解消するのが「ship KV scales(KVスケールを同梱せよ)」のレシピだ。16アテンション層ぶんの静的FP8スケール(32テンソル)をキャリブレーションで求め、チェックポイントに同梱して配布する。するとPPL@32Kは10.84→10.50まで改善し、ペナルティの83%が回復する。残る+0.07はBF16モデルの非キャリブレーション時コスト(+0.13)より小さく、スループットへの影響は0.4%以内と測定されている。
| 設定 | PPL@32Kの追加コスト | 備考 |
|---|---|---|
| BF16+FP8 KV(スケールなし) | +0.13 | 素のキャッシュ丸めコスト |
| Minima+FP8 KV(スケールなし) | +0.41 | W4A4との相互作用で約3倍 |
| Minima+FP8 KV(スケール同梱) | +0.07 | ペナルティの83%回復 |
まとめると、この論文の運用指針は「quantize everything, ship KV scales」の3語に集約される。全線形層をNVFP4 W4A4に量子化し、FP8 KVキャッシュでサーブし、キャリブレーション済みスケールをモデルに同梱する。従来のKV圧縮研究(KVQuantやKIVIなど)が密なアテンションモデルの削減を目指したのに対し、ハイブリッドLLMでは消費層ごと削られているため、量子化の相互作用をスケール同梱で始末する本手法のコストははるかに小さい。
自宅サーバーで27Bを動かす現実
ここまでの議論を現実の運用に落とすと、「16GBや24GBのゲーミングGPUで動くか」より先に、そもそもW4A4を享受できるハードウェアが前提になる。ネイティブNVFP4対応のBlackwell世代GPU(SM120)が必要で、ソフトウェア側はvLLM 0.27以上だ。SM120とはBlackwellアーキテクチャのストリーミングマルチプロセッサの世代名で、4ビット浮動小数点のテンソルコア演算をハードウェアで実行できる。論文の計測はRTX PRO 6000(96GB)1枚・TP=1という構成で行われた。TP=1はテンソル並列なしの単一GPU実行を意味し、モデルを分割せず1枚に載せたまま推論する。
起動は公開チェックポイントを使えば1コマンドで済む。以下の例で、キャリブレーション済みのFP8 KVスケールが自動的に読み込まれる。
vllm serve minima-ai/mnma_qwen3.8_27b_nvfp4 --kv-cache-dtype fp8
これで得られるのは、重み17.5GiB(+KVキャッシュ)の27Bクラス推論だ。32Kプリフィル(入力準備)のTTFTは4.03秒、デコードは1,154 tok/s(concurrency 32)、RULERの64K検索タスクでも100%を維持する。BF16でサーブした場合のデコード621 tok/sと比べるとほぼ倍速で、VRAM 50.13GiB→17.53GiBの削減効果と合わせて、1枚のGPUで「長文を扱える27B」が現実的な選択肢に入る。
| 方式 | 重み | 活性値 | 必要なハードウェア | 参考速度(デコード) |
|---|---|---|---|---|
| llama.cpp系 INT4(W4A16) | 4ビット | 16ビット | CPU・旧世代GPUでも可能 | 中程度 |
| NVFP4 W4A4(Minima方式) | 4ビット | 4ビット | SM120の4ビットテンソルコア必須 | 1,154 tok/s |
注意したいのは、llama.cpp系のINT4(W4A16)は「重みのみ4ビット」で活性値は16ビットのままという点だ。W4A4は活性値まで4ビットにするため、GPU側の4ビットテンソルコアが必須になり、速度を出すにはNVFP4ネイティブのSM120世代が有利になる。旧世代GPUでも動作はするが、論文が示した高速化(プリフィル+14〜19%、デコード2倍)は再現しないと考えるべきだ。
このラインはさらに先へ進んでいる。著者グループの進行中研究では、埋め込み・LMヘッド・MTPヘッドまでNVFP4化し、MLPを3ビットコードブック化した亜種が重み12.3GiB・1,200+ tok/sを達成している(精度評価プロトコルは本論文と別のため、あくまで「進行形のおまけ」だ)。「再帰は易しい半分」という本論文の知見がその土台にある。24GB VRAMのGPUで「とりあえず重みだけ載せる」ことと、「W4A4の速度と精度の両立を1枚で得る」ことは別問題であり、後者を狙うならSM120世代の導入が現実的な判断になる。
flowchart TD
A["手持ちGPUはSM120(Blackwell)?"] -->|No| B["W4A4の速度メリットは限定的\nINT4(W4A16)での運用を検討"]
A -->|Yes| C["vLLM 0.27以上を導入"]
C --> D["FP8 KVキャッシュを有効化\n(--kv-cache-dtype fp8)"]
D --> E["同梱スケール入りチェックポイントを確認"]
E --> F["重み17.5GiB・TTFT 4秒台\nデコード1,150 tok/s超で運用開始"]
よくある質問
GDNを4ビットにすると、長文では誤差は溜まらないのか?
溜まらない。状態誤差はt=256で12.96%に達した後、t=32,768でも12.31%と、約12.6%の平坦なプラトーで推移する。位置別のNLL(負の対数尤度)を分解しても、量子化ギャップはコンテキスト後半でゼロ以下になる。理由はデルタ則の書き込みが「現在のキー方向に沿って状態を上書き」し、古い誤差を能動的に消去するためだ。
NVFP4って結局何か?INT4やFP8とどう違う?
NVFP4はNVIDIAが定めた4ビット浮動小数点形式(E2M1)で、16要素ごとにE4M3のスケールを保つ。整数型のINT4と違い値の範囲が広く、外れ値は自分のブロック内に閉じ込められる。FP8は8ビット版で、Minimaの構成では重み・活性値をNVFP4、KVキャッシュのみFP8にしている。W4A4とは「重み(W)と活性値(A)の両方を4ビット化する」ことを指す。
17.5GiBなら24GB VRAMのGPUでも動くのか?
重みだけなら理論上は収まるが、論文の検証はネイティブNVFP4対応のBlackwell世代(SM120)とvLLM 0.27以上が前提だ。W4A4は活性値も4ビットにするため、GPU側の4ビット・テンソル・コアが必要で、旧世代GPUでは速度面のメリットが得られない。KVキャッシュやアテンション層の分もVRAMに必要だ。
BF16と本当に違いがないのか?どこで差が出るのか?
論文の条件(vLLM 0.27.1、FP8 KV、RTX PRO 6000、同一ハーネス)では、すべての精度スイートがシード・ノイズの範囲内だ。AIME'25は4シードすべて26/30で完全一致、5タスク平均も85.62→85.10と差は−0.52だけである。唯一の系統的差はperplexityで、PPL@4Kが+0.72、PPL@32Kが+0.49と短いコンテキスト側に偏る——タスクスコアには届かない。
自分でQwen3.8-27Bを量子化するにはどうすればいいのか?
論文の方法は、llm-compressorのNVFP4スキームとkv_cache_scheme(fp8/テンソル/静的)を組み合わせ、128サンプル×32Kトークンの凍結セットでキャリブレーションするものだ。公開済みのMinimaチェックポイント(Apache-2.0)を使えば量子化作業は不要で、vLLMでそのままサーブできる。
「ship KV scales」ってどういう意味か?
推論サーバーがKVキャッシュをFP8で量子化する際に使う、キャリブレーション済みの層別スケールをチェックポイントに同梱して配布する、という意味だ。スケールなしではMinimaの32K PPLに+0.41のペナルティが出るが、同梱により83%回復し、スループットへの影響は0.4%以内である。
まとめ:ハイブリッドLLMの「易しい半分」という逆説
「再帰層は誤差が累積するから4ビットは危ない」。この通説は、Qwen3.8-27Bの全496線形層(GDN 240+アテンション64+MLP 192)をNVFP4 W4A4に量子化したMinimaの実測の前で崩れた。5タスク平均はBF16の85.62に対し85.10(差−0.52)、AIME'25は4シードすべて26/30で完全一致。誤差そのものは確かに存在する(PPL@4K +0.72)が、それは文脈とともに縮小し、32K窓の最終2KではBF16より良好な−0.053 natsにまで洗い流される。
なぜ再帰は「易しい半分」なのか。理由はアーキテクチャ自身の設計にある。ゲートは対数空間パラメータ化されており、softplus→指数→シグモイドの非線形圧縮が素のGEMM誤差(約11%)を出力誤差(約2%)に潰す。さらにデルタ則は「現在のキー方向に沿って状態を上書き」するため、注入された誤差を数百ステップで能動的に消去し、減衰ゲートの地平線(44K〜62Kトークン)より桁違いに速く忘れる。つまり「守るべきはゲート」というコミュニティの精度マップは逆で、ゲート射影こそ最も頑健だった。保護のための8/16ビット化は、ヘッドルームの無駄遣いだったことになる。
| 通説 | 実測 |
|---|---|
| 再帰に誤差が蓄積する | 状態誤差は約12.6%のプラトーに収束し、位置別NLLは後半でBF16以下 |
| ゲート射影を8/16ビットで守るべき | ゲートが最も頑健(出力誤差2.1〜2.6%) |
| 4ビット化は精度を犠牲にする | 5タスク平均Δ−0.52、AIME'25は完全一致 |
この知見が価値を持つのは、メカニズムが特定モデルの訓練事情ではなくGDN演算子クラスの構造に由来する点だ。他のハイブリッドLLMにも移植可能と期待される。制約も正直に共有しておこう——検証はQwen3.8-27B・NVFP4・最大64K検索に限定され、128K以上は外挿である。線形パラメータ化の減衰を持つ再帰層では、ゲート遮蔽の議論が効かない可能性がある。
実用上の含意は大きい。BF16の50.13 GiBが17.53 GiB(2.9倍減)になり、32KプリフィルTTFTは6.90秒→4.03秒、デコードは1,154 tok/sを達成する。進行中の研究ではMLPを3ビットコードブック化した変種が重み12.3 GiB・1,200+ tok/sに達しており、この知見を土台に「どのGPUまで下げられるか」「3ビット化でどこまで行くか」という問いの答えは、まさに今更新されつつある。27Bクラスのハイブリッドモデルを自宅サーバーで回す時代は、もう始まっている。
参考資料
- 対象論文 "Why Gated DeltaNet Survives 4-Bit Quantization: NVFP4 W4A4 for the Recurrent Half of a Hybrid 27B LLM"(arXiv:2609.04098): https://arxiv.org/abs/2609.04098 / https://arxiv.org/html/2609.04098v1
- Minimaチェックポイント(Hugging Face, Apache-2.0): https://huggingface.co/minima-ai/mnma_qwen3.8_27b_nvfp4
- Gated Delta Networks: Improving Mamba2 with Delta Rule(Yang et al., ICLR 2025, arXiv:2412.06464): https://arxiv.org/abs/2412.06464
- QUASAR: Lowering the Loss Floor of Quantization-Aware Training with Loss-Aware Reconstruction(arXiv:2608.13966): https://arxiv.org/abs/2608.13966
- Pretraining Large Language Models with NVFP4(NVIDIA, arXiv:2509.25149): https://arxiv.org/abs/2509.25149
- Qwen3.8-27Bモデルカード(Hugging Face): https://huggingface.co/Qwen/Qwen3.8-27B
- 論文内引用(背景資料): DeltaNet(arXiv:2406.06484), Mamba(arXiv:2312.00752), Mamba2・SSD(arXiv:2405.21060), GPTQ(arXiv:2210.17323), AWQ(arXiv:2306.00978), SmoothQuant(arXiv:2211.10438), LLM.int8()(arXiv:2208.07339), Microscaling Data Formats(arXiv:2310.10537), KVQuant(arXiv:2401.18079), KIVI(arXiv:2402.02750), RULER(arXiv:2404.06654), vLLM PagedAttention(SOSP 2023)