3月25日、GoogleのリサーチチームがTurboQuantと名付けた圧縮アルゴリズムを発表した。精度を一切損なわずにモデルサイズを大幅に削減できる手法で、KV(キーバリュー)キャッシュの圧縮とベクトル検索の両方に対応するという。
そもそも何を圧縮しているのか
ベクトル量子化は、高次元ベクトルのサイズを小さくする古典的なデータ圧縮技術だ。AI検索エンジンが高速で類似ベクトルを探すのを助け、KVキャッシュのボトルネックを解消することで推論時のメモリコストを下げる。
量子化の歴史は意外と長い。1990年代から通信・画像処理の分野で使われてきた技術で、要するに「細かすぎる数字を大まかにする」という発想だ。この記事の画像もWebp形式で広い意味での量子化技術が使われているものだ。量子化はありとあらゆるところで使われている技術だ。
32ビットの浮動小数点数を8ビット整数に丸めれば、サイズは4分の1になる。精度は少し落ちるが、多くの用途では誤差の範囲に収まる。というイメージだ。
ニューラルネットワークへの応用が本格化したのは2010年代後半だ。モデルが巨大化するにつれ、研究者たちは重みだけでなく推論中の中間データも圧縮しようとした。ところがここで壁にぶつかる。ブロックごとに量子化定数を持たなければならず、圧縮したはずのデータの隣に「圧縮のための情報」が常についてまわる。冷蔵庫を小さくしたのに、その説明書が冷蔵庫より大きい。まさに本末転倒。そういう状態が往々にして起こりうる。TurboQuantが解決しようとするのは、その矛盾だった。
問題は、従来の量子化がそれ自体でメモリを食うことだった。ほとんどの手法では、小さなデータブロックごとに量子化定数を計算・保存する必要があり、この「メモリオーバーヘッド」が1〜2ビット余分に乗ってくる。圧縮の目的を自ら一部打ち消す形になっていた。
TurboQuantはそこを解決しようとするアプローチだ。2つのステップで動く。まずPolarQuantがデータベクトルをランダムに回転させることで幾何学的構造を単純化し、高品質な量子化器を適用しやすくする。次にQJLがJohnson–Lindenstrauss変換を使って高次元データを縮小しつつ、データ間の距離・関係性を保つ。各数値は符号ビット(+1か-1)1つに圧縮され、メモリオーバーヘッドはゼロになる。
何がすごいのか、何がすごくないのか
RAMの使用量を最大6倍削減できるとリリースでは報告されている。論文はICLR 2026(来月)で発表予定だ。
これは推論時のメモリに特化した話であることを理解しておく必要がある。TurboQuantはあくまで推論時のメモリを対象としており、依然として膨大なリソースを必要とするトレーニングには適用できない。AIが引き起こしているRAM不足全体の解決策ではない。
また、現時点ではラボの研究成果であり、Googleの本番環境に広くデプロイされているわけではない。
株式市場が先に反応した
技術の詳細より早く動いたのが金融市場だった。発表を受けてメモリチップ株が2日間続落し、AI投資のトレードに新たな分断が生まれている。Micronをはじめとするメモリメーカーの時価総額から数千億ドル規模が吹き飛んだとも言われる。
アルゴリズム一本でメモリ需要が消えるかというと、そうはならないだろう。ただ、AIが効率化を続ける中で「とにかくハードウェアを積めばいい」という前提が揺れているのは確かだ。
Googleが取り組んでいる本質
TurboQuantは、Google ResearchのPraneeth Kacham、Google DeepMindのMajid Hadian、KAISTのInsu Han助教授、NYUのMajid Daliri、GoogleのLars GottesbürenとRajesh Jayaramらの共同研究として生まれた。
大規模なベクトルインデックスをわずかな前処理時間・最小限のメモリで構築・検索することが可能になり、Googleの規模でのセマンティック検索をより速く効率的にする。
それが研究者たちが目指していたものだ。LLMから検索まで、AIが製品に組み込まれるほど、こうした基盤レベルの最適化は重要になる。
次にGoogleの検索が0.1秒速く、業績が少し良くなっているとしたら、その裏には今回のような技術研究がある。
