ここ数日で、TurboQuant(arXiv:2504.19874)をゼロから実装しようと試みました。
論文にある数値と一致しないので、こちらの皆さんに何か確認してみようと思いました。
観測結果:
MSEバージョンは良好に動作します(圧縮&歪みが期待通り)
PRODバージョン:
論文での主張は99%以上の相関
私の値は4ビットで約95.8%です
ただ、より興味深いのは:
この約95%の相関レベルでも、注意(attention)の品質が大きく劣化します
(単純なシミュレーションでトップ1精度が約67%のみ)
私の仮説:
相関はランキングの保持と一致しない
attentionは順序のわずかな誤りに非常に敏感です
他に遭遇したこと:
分散スケーリング(unit vs 1/d)が最初はMSEバリアントを完全に壊してしまいました
QJLの分散スケーリングは再導出が必要でした
圧縮を成立させるにはビットパッキングが必要です
よく分からないのは:
PRODのスケーリングで単に何かを見落としているだけなのか
d=256のときには、これが期待される振る舞いなのか
それとも論文の結果は、より大きな次元/セットアップに依存しているのか
興味があればコードはここにあります:
https://github.com/Ashx098/Turboquant-Implementation
KVキャッシュの量子化/同様の手法を扱ったことがある方からのフィードバックが本当にありがたいです。
[link] [comments]




