论文阅读笔记:TurboQuant_谷歌整的新活正在攻击你的内存板块美股,还有造假和抄袭嫌疑

0 阅读6分钟

诸神缄默不语-个人技术博文与视频目录
诸神缄默不语的论文阅读笔记和分类

(算法详情那部分没看完,赶今天的速读反正先发了。所以本文没有技术细节,只有迅速略读。
其实也不太算正在了,已经炒一周多了我才发。也许在计算机界还不算太晚,但是在金融界已是一轮春秋!)

1. 论文简介

论文全名:TurboQuant: Online Vector Quantization with Near-optimal Distortion Rate

谷歌研究官方下载地址:research.google/blog/turboq…
ICLR网址:openreview.net/forum?id=tO…
ArXiv网址:arxiv.org/abs/2504.19…

谷歌刚出的论文(2026年3月24日发布于谷歌研究首页并在X开始推广。于2026年1月被 ICLR 2026 会议接收,2025年4月时已经在arxiv公开发表),核心思想就是提出了一种新的高维向量压缩算法,通过向量量化,减少数字位数,从而减少向量占用的储存空间,谷歌号称这能大幅减少LLM K-V缓存占用的内存(节省5/6)。比绝大多数研究人员反应更快的是股市,存储股随后立刻暴跌,闪迪:
闪迪

美光:
美光

但众所周知美股也是城里人玩的游戏,花活很多,感觉是机构炒作的不理智暴跌(去年干啥去了),概念是“以后需要的储存体更少了”。但是根据杰文斯悖论(Jevons Paradox, 一种经济学现象,指当技术进步提高资源的使用效率(即单位消耗减少)时,该资源的总消耗量反而不降反升,因为成本下降导致使用的人更多),如果新算法真的能强力压缩LLM的储存成本,那么LLM的训推成本会进一步降低,更多玩家会入场,LLM也会继续进化,包括扩大上下文、更多agent协作,反而会导致储存器的需求上升。
就像DeepSeek能够低算力、低成本部署,结果导致对GPU的需求反而增长了,因为更多组织和个人都开始寻求自己部署本地化的DeepSeek大模型了。

但是正当大家激烈讨论金融市场时,新的技术声音出现了,高健扬(向量优化算法 RaBitQ 系列研究一作)在知乎发文(对于Google的 ICLR 2026 TurboQuant 论文,我们必须公开澄清 - 知乎)(也有在X、medium等平台发布)开喷,质疑造假和抄袭:

  1. TurboQuant和RaBitQ的核心思想都包含了在量化前对输入向量施加随机旋转(random rotation / Johnson-Lindenstrauss 变换),但是TurboQuant没有充分讨论RaBitQ,描述内容丢附录去了,还无理由称RaBitQ效果不好,运行对比实验时故意劣化RaBitQ实验条件(RaBitQ用Python实现版+单线程CPU,TurboQuant用A100)
  2. RaBitQ项目组与TurboQuant项目组进行过多轮邮箱对话,但是TurboQuant项目组持续装傻

那TurboQuant的这个真实水平就很值得质疑了啊!

2. LLM的K-V缓存机制

大致来说就是LLM用的Transformer模型在自回归(auto-regressive)推理的时候,是一个token一个token生成内容的,每一个token计算自注意力时都需要用到之前所有token的表征来计算QKV。

KV不缓存

但是推理时,每个token向量对应的算出来的K和V其实是固定的(因为矩阵乘法就是,右边的矩阵不变时,左边矩阵一行对应过去的值是固定的嘛,看上图GIF也可以看得出来),所以其实可以把之前计算的所有K和V都给缓存下来,这样就可以加速后面的推理过程,用空间换时间:

KV缓存

那现在我们就需要储存一堆缓存向量了。

而TurboQuant的思路就是压缩这个缓存向量,这样就能节省LLM推理时需要的显存空间。

3. 向量检索

TurboQuant的story还有一部分是加速向量检索。

向量检索就是说,我们将对象以向量形式表示,比如将文本表示为向量,我们有一堆文本,就会得到一堆向量,然后我们现在有一条新的文本,想找到跟这条文本最像的文本,那有两种方式,一是在文本本身上最像(比如有一样的关键词,或者最短编辑距离最小),二是文本表示向量最相近,那就需要通过向量检索算法来找到最近的向量。
最直白的找“最近向量”的想法当然就是一个一个算向量相似度(如余弦相似度),但这样太慢了,所以就有很多算法来加速计算。
但这不是本文的重点,本文的重点是:通过压缩这个表示向量,能够加速向量检索算法的速度(因为计算所需的位数变少了)。

但是高健扬那篇知乎檄文下面就有回复说在向量检索任务上实测效果不如RaBitQ XD:
实测向量检索效果不如RaBitQ

4. TurboQuant方法

(还没看懂,所以只有这点,有空我看懂了再细补)
在介绍TurboQuant之前当然得先介绍一下RaBitQ方法了:

1. RaBitQ

(2024 SIGMOD) RaBitQ: Quantizing High-Dimensional Vectors with a Theoretical Error Bound for Approximate Nearest Neighbor Search

(扩展版)(2025 SIGMOD) Practical and Asymptotically Optimal Quantization of High-Dimensional Vectors in Euclidean Space for Approximate Nearest Neighbor Search

从标题其实就可以看出来RaBitQ主要做的就是针对向量检索(最近邻搜索)的高维向量压缩(量化),最初版做的是将一个D维向量压缩为D bits 二进制编码。后续扩展版做了标量量化。

具体算法有空再详谈吧,今天只发跟TurboQuant有关的部分。总之RaBitQ分为两个阶段:

step 1:构建索引

  1. 向量单位归一化到单位超球体平面上
  2. 选择单位超立方体顶点作为码本(codebook)
  3. 为了避免偏置,引入随机旋转矩阵,对码本进行旋转,得到新的码本

后面的还没看懂,略。总之注意这个旋转,然后我们再转回头来看TurboQuant:

2. TurboQuant算法流程

两阶段量化结构:

Stage 1: MSE optimal quantization
对输入向量做随机正交变换。这一步和 Johnson-Lindenstrauss随机投影思想非常接近。

Stage 2: residual 1-bit QJL quantization

后面的没仔细看了。总之就是说高健扬的抄袭嫌疑指控其实有理可据。
至于实验造假嫌疑那就更明显了,RaBitQ本身只有CPU版,但是TurboQuant是用A100跑的,然后RaBitQ是在单核单进程Python复现版代码上运行的,这谁看了不生气:
TurboQuant实验设置不公平
图源高健扬知乎。

只能说谷歌做事不地道啊!

其它参考资料

  1. Google Research 發表 TurboQuant 的語言模型殺死了記憶體?:杰文斯悖论的思路来自本篇
  2. KV Caching Explained: Optimizing Transformer Inference Efficiency:介绍了LLM的KV缓存机制,那两个炫酷的GIF就来自本文
  3. RabitQ SIGMOD 2024 - 知乎
  4. 另外还参考了ChatGPT对RaBitQ算法的解读。

image.png