[概要と導入] 3行要約 + 問題設定
3行要約
- 長い文脈を扱う LLM では過去トークンの Key と Value を保存し続けるため、KV キャッシュが VRAM の真のボトルネックになりやすいです。
- 従来のやり方: 数値をとても短くしても、塊ごとに「元のレンジに戻すための補助数字」 が別途必要です。それはたいてい 高精度(例: FP16) で別に保存されるので、VRAM の節約は思ったほど大きく感じられません。
- PolarQuant はランダム前処理のあと極座標へ変換し、角度をコンパクトに保存します。その 重い付け足し にあまり縛られず、4.2 倍以上 の圧縮と高い長文脈品質を示します。
比喩
従来法は箱を小さくしても箱ごとに重いラベルを貼って保管する倉庫のようなものです。PolarQuant は一度よく混ぜてから半径 1 個と方向情報を保存するので、補助ラベルのコストが小さくなります。
やさしい言い方でいうと
- ジレンマ: 数値を小さくしただけでは足りず、ブロックごとに 説明書(メタデータ) を FP16 クラスで付け続けるので、中身より梱包材が重い状態になりやすいです。
- PolarQuant の方針: 軸上の数値の代わりに 距離(半径 )ひとつ と 角度たち に分けて保存します。残りは「どちら向きか」だけを書くイメージです。
- ミキサー()と : 極座標に入る 前に ランダムに混ぜると、大きな塊を半分にしたとき 前後のエネルギー が揃いやすく、比を角度にすると ()付近 に集まりやすいです。狭い帯に値がよく出ると分かれば、少ないビットで角度量子化しやすくなります。
- 論文で報告された点: KV キャッシュ 4.2 倍以上 の圧縮、104K 近い極長文脈でも needle タスクで強い結果、オフラインコードブック で Prefill を大きく短縮(オンライン約 11.6 秒 vs オフライン約 3.4 秒など)。
一行: よく混ぜると角度が 予測しやすく集中する 構造を使い、復元用の付け足し負担を大きく減らす 方法です。