#AI
对训练向量聚类(比如k-means),k个中心点就构成1个码本,中心点在这儿叫码字。
把向量用码本编码,就是用向量最接近的码字的索引代替向量,向量->数字。
乘积量化
Product Quantization, PQ 维度切分
- 做法:把一个 128 维的向量切成 4 段,每段 32 维。
- 训练:给这 4 个“子空间”分别训练一个包含 256 个码字的码本。
- 效果:虽然每个码本只有 256 个词,但它们的组合总数达到了
(约 42 亿种变化),而你只需要存储 个中心点。
残差量化
Residual Quantization, RQ 逐级细化
- 做法:
- 第一层码本对原始向量做聚类,得到一个粗糙的近似值。
- 计算“原始向量 - 近似值”的残差。
- 第二层码本专门对这个残差再进行聚类。
- 效果:层数越多,描述越精细。