尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

从向量分解理解乘积量化 (PQ):核心数学原理

从向量分解理解乘积量化 (PQ):核心数学原理 在向量检索、向量数据库、RAG 检索场景中高维向量的存储成本与检索时延是核心痛点。原始浮点型高维向量占用存储空间大、距离计算耗时无法支撑海量向量的高效检索。乘积量化Product Quantization, PQ是解决该问题的经典高效量化算法其核心思想并非复杂的工程技巧而是简单纯粹的向量分解数学。本文从向量分解的底层视角从零拆解 PQ 的核心原理、数学推导与量化逻辑厘清 PQ 高效压缩与检索的本质。一、前置基础向量量化的核心诉求在机器学习与向量检索中模型输出的特征向量通常为 Rᴰ 空间下的高维连续向量向量元素为浮点型数值。假设存在一组原始向量 x ∈ Rᴰ其具备两个核心特点数值连续、维度固定。连续浮点向量的缺陷极其明显存储成本高、相似度计算欧式距离、余弦距离运算量大。量化的本质就是将无限连续的向量空间映射为有限离散的码本空间用离散的索引值替代原始浮点向量实现向量压缩大幅降低存储与计算开销。普通标量量化对整个高维向量整体量化会存在量化误差极大、码本数量爆炸的问题。而乘积量化的突破就是通过向量分块分解将高维复杂量化问题拆解为多个低维简单量化问题这也是 PQ 算法的核心精髓。二、PQ 核心思想高维向量的分块分解乘积量化的数学根基是向量直积分解。对于任意 维高维向量 我们可以将其维度均匀划分为 个子段实现向量的分块拆解。设定维度均分规则将总维度 D 划分为 M 个子向量每个子向量的维度为 D′D/M工程上通常保证 D 可被 M 整除。由此原始高维向量可分解为 个低维子向量的拼接x [x₁⊤, x₂⊤, …, x_M⊤]⊤其中 xᵢ ∈ Rᴰ′ 为第 i 个低维子向量。从空间维度理解原始向量空间 可等价拆解为 个低维子空间的笛卡尔直积Rᴰ Rᴰ′ × Rᴰ′ × … × Rᴰ′这就是 PQ 乘积量化最核心的向量分解定理。基于该分解原本需要在超高维空间完成的全局量化被拆解为 个独立的低维子空间量化完美解决了全局量化的维度灾难问题。三、子向量量化码本构建与向量编码完成向量分块分解后PQ 对每一个独立的子向量空间单独训练码本、执行量化全程各子空间互不干扰、独立运算。1.子空间码本训练针对第 i 个子空间取出所有训练向量对应的子向量 {xᵢ₁, xᵢ₂, …}通过 K-Means 聚类算法训练得到该子空间的专属码本。设每个子码本包含 个聚类中心码字则第 个子码本可定义为Cᵢ {cᵢ₁, cᵢ₂, …, cᵢₖ}, cᵢₖ ∈ Rᴰ′最终PQ 算法会得到 个独立的子码本构成完整的量化码本体系。2.向量量化编码过程对于任意一个待量化的原始向量 先完成分块分解得到 个子向量再对每个子向量逐一量化在对应子码本中寻找距离该子向量最近的码字用码字索引替代原始子向量。对第 个子向量 其量化目标为求解最优码字索引 kᵢ arg minₖ∈[1,K] ‖xᵢ − cᵢₖ‖₂²遍历所有 个子向量后原始高维浮点向量最终被编码为一组离散的整数索引序列PQ(x) [k₁, k₂, …, k_M]四、乘积重构量化向量的还原数学量化编码后的索引序列可通过码本反向重构出近似原始向量这一过程完整体现了“乘积量化”的命名由来全局量化结果由各子空间量化结果的直积构成。根据各子向量的量化索引取出对应子码本的码字拼接后得到重构向量 x̂ [c₁ₖ₁⊤, c₂ₖ₂⊤, …, c_Mₖ_M⊤]⊤重构向量 x̂ 是原始向量 x 的近似拟合二者的误差即为量化误差‖x − x̂‖₂²。相较于全局量化PQ 分块量化的优势在于低维子空间聚类精度更高量化误差更小同时码本规模被极大压缩。全局量化需要的码本数量为 Kᴰ而 PQ 仅需 M × K从指数级复杂度降至线性级。五、PQ 快速检索距离计算的分解优化向量检索的核心是计算查询向量与库向量的距离PQ 不仅实现了向量压缩更通过向量分解特性实现了预计算子距离、加速全局距离求解这是 PQ 检索高效性的关键。设查询向量为 q同样分解为 M 个子向量 q₁, q₂, …, q_M。根据欧式距离的可分解性全局欧式距离可拆解为各子空间距离之和‖q − x̂‖₂² ∑ᵢ1ᴹ ‖qᵢ − cᵢₖᵢ‖₂²在检索前可预先计算查询向量每个子向量与对应子码本所有码字的距离生成距离表。检索时无需重复计算浮点距离仅需查表累加子距离即可快速得到全局距离检索速度提升数个数量级。六、核心特性与数学本质总结从向量分解的底层视角可清晰总结 PQ 乘积量化的核心本质与优势1.降维解耦通过维度分块分解将高维耦合的向量空间拆解为多个低维解耦的子空间规避维度灾难2.复杂度降解将指数级的全局量化复杂度转化为线性级的子空间量化复杂度大幅降低码本存储成本3.可并行计算各子向量的量化、距离计算相互独立天然支持并行运算适配工程落地4.精度可控可通过调整分块数 、码字数量 灵活平衡量化压缩率与检索精度。七、结言乘积量化PQ并非晦涩的黑盒算法其一切特性都源于向量分块分解的基础数学逻辑。通过将高维向量拆解为低维子向量的直积形式以局部量化替代全局量化在极小的量化误差代价下实现了向量存储的极致压缩和检索的极致加速。理解向量分解就掌握了 PQ 算法的核心内核也能更好地适配向量数据库、相似性检索、海量特征存储等工程场景的优化与调优。
返回列表