残差ストリームこそすべて: トランスフォーマー推論における KV キャッシュの冗長性について

arXiv cs.LG / 2026/3/23

💬 オピニオンDeveloper Stack & InfrastructureIdeas & Deep AnalysisModels & Research

要点

  • トランスフォーマー推論における KV キャッシュは冗長です。各層のキーと値は残差ストリームの決定論的な射影であり、トークンごとに1つの残差ベクトルからビット単位で同一の再現を可能にします。
  • 4つのアーキテクチャ系に属する6つのモデルを横断する評価では、タスク間の残差を用いたパッチ適用により、パッチ後と元の出力分布の間で D_KL = 0 となり、残差ストリームがマルコフ性を満たし、情報を運ぶ唯一の状態であることが確認されました。
  • キャッシュを完全に削除してゼロから再計算した場合、テスト対象のすべてのモデルで貪欲デコード下のトークン同一出力が得られました。
  • KV-Direct は、完全な KV ペア(約136 KB)を保存する代わりに、Gemma 3-4B ではトークンあたり約5 KB の残差ベクトルをチェックポイントとして保存する境界付きメモリ推論方式で、より小さなメモリフットプリントを実現します。
  • 20 回の会話ターンの実験では、KV-Direct のピークメモリは 42 MB に留まる一方、標準キャッシュは 103 MB を超えて増大します。5つの追い出しベースラインに対して 100% のトークン一致を維持し、中程度のバッチサイズでは再計算がキャッシュ済みテンソルを読むよりも速くなることがあります。コードは提供された GitHub リンクから入手できます。

要旨: キー・バリュー (KV) キャッシュは、トランスフォーマー推論における重要な状態として広く扱われており、そのエントリを圧縮・追放・近似するポリシーを設計する多くの研究があります。私たちは、この状態が完全に冗長であることを証明します。各層の鍵と値は残差ストリームの決定論的な射影であり、トークンごとに1つの残差ベクトルからそれらを再計算しても、再構成誤差は正確にゼロであり、近似的ではなくビット単位で同一です。これを、4つのアーキテクチャファミリーに属する6つのモデル(135Mから4Bパラメータ)を横断して検証します。各層でのタスク間の残差パッチングは、パッチ後の出力分布と元の出力分布との間に D_KL = 0 を生み出し、残差ストリームがマルコフ性を満たし、それが情報を運ぶ唯一の状態であることを確認します。キャッシュを完全に取り除き、ゼロから再計算しても、検証対象のすべてのモデルで貪欲デコード時にトークン同一の出力を得ます。我々はこの結果を基に、KV-Direct という制約付きメモリの推論方式を提案します。これは完全な KV ペア(136 KB)ではなく、残差ベクトルをチェックポイントします(Gemma 3-4B ではトークンあたり 5 KB)、必要に応じて鍵と値を再計算します。20 回の会話ターンにわたり、KV-Direct はピークメモリを 42 MB に抑える一方、標準キャッシュは 103 MB を超えて増大します。5つの追放ベースライン(H2O、StreamingLLM、SnapKV、TOVA、window-only)に対して、KV-Direct はすべてのキャッシュ予算で 100% のトークン一致を維持します。すべてのベースラインは 5–28% へと劣化します。演算ごとの待機遅延分析では、中程度のバッチサイズで再計算がキャッシュ済みテンソルを読むのと比べて最大で 5 倍速いことが示されています。コードは https://github.com/Kaleemullahqasim/KV-Direct で入手可能です。