先週、Basetenの推論エンジニアで@waterloo_internを名乗る人物が、「22,580: From GPT-2 to Kimi K3, Explained.」というタイトルの技術ブログ記事を公開しました。この記事は数日間で240万ビューを記録しました。

彼はプレスリリースを書いたわけではありません。実行可能なPyTorchコードを書いたのです — GPT-2のattentionブロックから始めて、すべてのアーキテクチャ変更を段階的にたどり、イテレーションごとに1つの問題と1つのコストを説明しています。これまで見た中で最高のtransformer系統の解説です。

私は彼の記事を読み込み、その後主要な主張を5つの原論文と照合しました。以下が全容です。

22,580倍という数字

2019年2月、OpenAIはGPT-2 — 1億2400万パラメータをリリースしました。7年後、Moonshot AIはKimi K3 — 2.8兆パラメータをオープンソース化しました。1つのKimi K3の中に22,580個のGPT-2を収められることになります。

しかし、これは「より多くの計算を投じる」という話ではありません。メモリをどのように保存し、更新し、取得するかという話です。

出発点:GPT-2

class Block(nn.Module):
    def forward(self, x):
        x = x + self.attn(self.ln_1(x))
        x = x + self.mlp(self.ln_2(x))
        return x

Enter fullscreen mode Exit fullscreen mode

モデルが新しいトークンを生成するたびに、すべての過去のトークンに対してQ、K、V射影を再計算し、その後O(N²)のsoftmax attentionを実行します。トークン1からN-1までのKとVはどうなるでしょうか? 破棄されます。トークンN+1が到着すると? すべてを再計算します。

それがKV Cacheが発明された理由です。

KV Cache:再計算ではなく保存

単純なアイデア:すでに計算済みのキーおよびバリューのキャッシュを作成する。次のトークンでは、新しいQがキャッシュされたKに対して1回のドット積を計算するだけで済みます。

問題は解決しましたが、新たな問題が生じました。KV cacheはシーケンス長に比例して線形に増加します。100万トークン×d_model×layersでは、数十GBのVRAMになります。デコードの各ステップで、すべてをHBMから読み込みます。

ボトルネックは計算ではなく、メモリ帯域幅です。 これが以降のすべての改善を理解する鍵となります。

Linear Attention:固定サイズのメモリ

O(N²D)をO(ND²)に圧縮することはできるでしょうか?

アイデア:softmaxを特徴マップで置き換える。

# Standard softmax (must materialize N×N first)
attention = softmax(QKᵀ / √d) × V

# Linear attention (fold K and V first)
Q' = ELU(Q) + 1
K' = ELU(K) + 1
output = (Q'(K')ᵀ × V') / (Q'(K')ᵀ × ones)

Enter fullscreen mode Exit fullscreen mode

これでまずK'^T × V'を計算できます — 固定サイズのD×D行列 — その後Q'と乗算します。過去のKV情報は定数サイズの状態行列に「折り込まれ」ます。キャッシュはNとともに増加しなくなります。

代償は? ELU+1はsoftmaxカーネルの近似です。表現力が低下します。しかし長文脈タスクでは、このトレードオフはしばしば価値があります。

補足:FlashAttentionはこれを行っていない

よくある混乱点です。Aliの投稿には「2020年にはFlashAttentionは存在しなかった」とありますが、FlashAttentionとlinear attentionは根本的に異なる問題を解決します。

FlashAttention(Tri Dao、NeurIPS 2022)はattentionアルゴリズムを変更しませんでした。GPUのIOパターンを最適化しました — N×N行列をタイル化し、HBMに完全に配置されないようにしたのです。これによりsoftmaxが高速化されますが、依然としてO(N²)です。

Linear attentionはアルゴリズム自体を再定義しました — softmaxを特徴マップで置き換え、O(N²D)からO(ND²)へ移行したのです。

一方はIOを最適化します。もう一方はアルゴリズムを変更します。直交しています。

DeltaNet:メモリを編集できるようになった

Linear attentionには致命的な欠陥があります:追加しかできず、更新できないのです。

新しいトークンが状態に積み重なります:S = S + K'^T × V'。情報は増える一方です。書き込みしかできないノートのようなものです — 消去や修正はできません。

DeltaNet(Songlin Yang et al., NeurIPS 2024)はこれを修正しました。

この核心的なアイデアは、1990年代のSchmidhuberの「Fast Weight Programmers」に遡り、その後Schlag et al.(ICML 2021)がlinear attentionをfast weightsに結びつけて形式化しました。DeltaNetのアプローチ:書き込み前に、このキー位置に現在何が保存されているかを読み取ります。

v_old = k @ S_old           # read current value at key
delta = v_new - v_old       # compute the delta
S_new = S_old + k^T @ delta # write only the difference

Enter fullscreen mode Exit fullscreen mode

v_new == v_oldであれば、deltaはゼロ — 何も変わりません。完全に異なる場合は、deltaはv_newに等しく — 上書きに相当します。その間のすべては滑らかな補間です。

これがdelta ruleです:鈍い蓄積ではなく、精密なメモリ更新。

並列化のトリック(Ali曰く、これを理解するのに7時間かかった)

DeltaNetの状態更新は厳密に逐次的です — 各ステップは前のSに依存します。並列化は不可能に見えます。しかし可能です。

方法:シーケンスをサイズCのチャンクに分割します。各チャンク内では通常のマスク付きattentionを使用(GPU並列)。チャンク間では状態行列+1回のmatmul(Q @ S)を使用します。Householder変換によりdelta更新を再パラメータ化し、チャンク内のすべてのdeltaを一度に計算できるようにします。

計算量:固定コスト2LD²(状態維持)+可変コスト2LCD(チャンク内attention)。Cが大きいほど可変コストは増えますが、GPU効率は向上します。実際にはC=64または128が最適 — FLOPsだけが指標ではなく、tensor core利用率も重要です。

Gated DeltaNet:忘却も可能に

DeltaNetは個々のキー・バリューペアを精密に編集できます。しかし大規模な忘却はどうでしょうか?

100万トークンの文脈でTopic Aに関するすべてのドキュメントを読み、その後Topic Bに切り替えると想像してください。モデルは理想的にはTopic Aを「忘却」してBのための容量を解放すべきです。

DeltaNetは特定のエントリを上書きできますが、グローバルメモリを一括で減衰させることはできません。Mamba-2(Dao & Gu, ICML 2024)は可能です:

cache = α × S_old + S_new

Enter fullscreen mode Exit fullscreen mode

αは0から1の間のゲーティング値で、古いメモリを一様に減衰させます。これがMamba-2の「State Space Duality」理論の核心です — softmax attentionとSSMは数学的に同じものを異なる形で表現したものです。Mamba-2はゲーティングを通じてそれらを統合しました。

Gated DeltaNet(Songlin Yang et al., ICLR 2025, NVIDIA)はDeltaNetのdelta更新とMamba-2のゲーティングを統合します:

S_new = α × S_old + k^T @ delta   # decay first, then precise write

Enter fullscreen mode Exit fullscreen mode

α=1は純粋なDeltaNet。α=0はメモリ消去。その間のすべてが忘却と更新の両方を行います。

重要なメカニズム:タイムステップxで書き込まれ、x+tで読み取られたトークンは、t回の累積α減衰(αₓ × αₓ₊₁ × … × αₓ₊ₜ)を経ています。異なる時間に書き込まれた情報は異なる速度で忘却されます — 最近の項目はほとんど減衰せず、遠いものは完全に消失する可能性があります。

KDA:Kimiの秘伝のタレ

Kimi Linear(Moonshot AI, arXiv 2510.26692, 2025年10月) — K3の前身 — はこのアイデアをさらに洗練しました:スカラーゲーティングから次元ごとのゲーティングへ

Gated DeltaNetはαを単一のスカラーとして使用します。すべてのメモリ次元の忘却速度を制御する1つの数値です。KDAはαをベクトル(または行列)に変換します。各次元が独自の忘却率を独立して制御します。どの概念を保持し、どの次元を減衰させるか — モデルが学習します。

論文からの主要データ:

指標 Full MLA Kimi Linear
KV Cache 100% -75%
1M文脈のデコードスループット ベースライン 6倍
短文脈性能 ベースライン 上回る
RLスケーリング ベースライン 上回る

これはlinear attentionが、すべてのシナリオでfairな比較の下、full attentionを初めて上回ったのです。長文脈だけでなく、短文脈でも。そして「-75% KV cache」は直接推論コストの削減につながります。

私はこの主張を論文のアブストラクトと直接照合しました:「for the first time, outperforms full attention under fair comparisons across various scenarios.」 マーケティングではなく、核心的な結論です。

K3の最終的なハイブリッドアーキテクチャ

K3のテクニカルレポート(arXiv 2607.24653, 2026年7月)は以下を確認しています:

  • 3/4のレイヤーがKDA(linear)、1/4がgated MLA(full softmax)
  • MoEルーティング: 896 experts、トークンあたり16 active(約1.8%)、負荷分散のためのQuantile Balancing
  • Attention Residuals: レイヤーは特定の前段レイヤーの表現を「振り返る」ことができる
  • MXFP4重み + MXFP8活性化、量子化対応訓練

K3は純粋なlinear-attentionモデルではありません。ハイブリッドシステムです:KDAが大量処理(安価、高速、固定状態)を担い、定期的なsoftmaxレイヤーが精密検索を行い — linear圧縮で失われる可能性のある詳細を回復します。Aliが分析したトレードオフそのものです:linear attention+定期的なsoftmax検索。

それでは22,580倍は何を意味するのか?

Aliの結論は、私が書けるどんな言葉よりも鋭いです:

GPT-2からKimi K3まで、各世代の核心的な改善は「より多くのパラメータ」ではありませんでした — メモリへのアクセスの仕方を再設計することでした:どのように保存し、どのように忘却し、どのように取得するか。

進化を1つの表にまとめます:

段階 代表例 メモリメカニズム 解決した問題
1 GPT-2 + KV Cache Full cache, O(N) growth 再計算の排除
2 Linear Attention Fixed state, O(D²) CacheがNとともに増加しない
3 DeltaNet Delta updates, editable 更新できない → 更新できる
4 Gated DeltaNet Gating + delta, forgettable 忘却できない → 忘却できる
5 KDA / Kimi K3 Per-dim gating + hybrid Linearがfull attentionを上回る

パラメータは22,580倍に増加しました。しかし、それだけを見ていては、物語全体を見逃してしまいます。

あなたにとっての意味

長文脈の作業(コードレビュー、ドキュメント分析、マルチターンエージェント)を行っている場合、attentionアーキテクチャは直接コストと出力品質に影響します。

  1. コストは固定ではありません。 同じ100万トークンの文脈:KDAのKV cacheはfull attentionのわずか25%です。メモリ帯域幅の圧力が低く、レイテンシとスループットが大幅に向上します。

  2. 長い=高価、ではありません。 K3の100万トークン文脈ウィンドウは「力任せ」ではありません。75%の作業がlinearパスを通ります。

  3. ハイブリッドがトレンドです。 Linearはsoftmaxを置き換えるものではありません — 互いに補完します。softmaxによる精密検索、linearによる大量処理。このパラダイムは広がっていくでしょう。

主要なポイント

  1. 22,580倍のパラメータ増加は表面的なものです。本当の物語はメモリ管理です:full cache → fixed state → precise writes → adaptive forgetting。
  2. 系統は明確です:DeltaNet(NeurIPS 2024)→ GatedDeltaNet(ICLR 2025)→ Kimi Linear(2025年10月)→ Kimi K3(2026年7月)。
  3. KDAはfairな比較で初めてfull attentionを上回りました — 短文脈、長文脈、RLスケーリングのすべてのシナリオで。「安価な代替品」ではありません。
  4. K3の75% linear / 25% softmaxハイブリッドは、エンジニアリング上の最適解であり、論文だけの構成ではありません。
  5. 次にモデルを評価するときは、パラメータ数ではなくattentionアーキテクチャを尋ねてください。それの方が重要です。

参考文献