qjlDim 含义 TurboQuant QJL Quantized Johnson-Lindenstrauss,量化JL随机投影

qjlDim=384 含义(TurboQuant QJL + mse2 算子)

mse2:就是 MSE最优标量量化(Lloyd‑Max)阶段 ,TurboQuant 的 Stage1;然后 Stage2 对残差做 QJL(Quantized Johnson-Lindenstrauss,量化JL随机投影) 1bit残差校正。

qjlDim = QJL sketch维度(投影后的草图向量长度 m),这里等于384。

术语拆解

  1. QJL :Quantized Johnson-Lindenstrauss,量化JL随机投影。
    用一个高斯随机矩阵把原始残差向量投影到 m 维,再取符号变成1bit的±1向量,用来无偏估计原始向量内积,专门补MSE量化带来的内积偏差,KV Cache低比特量化(2/3bit)里用的核心技术。
  2. qjlDim(m) :QJL投影之后的草图维度(sketch dimension)
    • 原始KV向量维度是 d(比如768)
    • 随机矩阵 S ∈ R qjlDim × d
    • 输出草图:sign(S @ residual),输出向量长度 = qjlDim
    • 这里 qjlDim=384:残差向量被投影到 384维,每个维度只存1bit符号(+1/-1)

mse2 + qjlDim 整体流程(TurboQuant)

  1. mse2:对KV向量做随机旋转 + Lloyd‑Max MSE最优标量量化(这一步就是mse2算子),得到粗量化向量;
  2. 计算残差 r = 原始向量 − mse2复原向量;
  3. QJL模块:残差r乘以随机JL矩阵,投影到 qjlDim=384,取sign,保存384个1bit符号,用来推理时修正attention内积的bias。

取值意义

  • qjlDim越大:草图携带信息越多,内积估计方差越小、精度越高;但存储和计算开销线性上涨(这里384是工程常用折中值);
  • qjlDim越小:内存开销低,但量化误差变大,PPL上升。

补充:不要和原始embedding dim混淆。原始向量维度(例如hidden_dim=768)≠ qjlDim(投影草图维度384)。

如果你需要,我可以把这个算子的输入输出shape、昇腾CANN上tile切分策略一起整理出来。

相关推荐
Coder_Shenshen2 小时前
罗克韦尔ACD工程归档离线变量树解析
算法·c#
复杂网络与机器学习2 小时前
全双工 160 毫秒一格:李沐让模型不再「一问一答」
人工智能
武子康2 小时前
Qwen-Drive 的 91.4 分,究竟选中了什么?
大数据·人工智能·agent
誰在花里胡哨2 小时前
Qoder + Blender MCP:对话建模到网页渲染
ai编程·three.js·mcp
AI入职记2 小时前
Spring AI 实测:不挂工具,模型真的会瞎编吗?
后端·ai编程
王中阳Go3 小时前
你把重试加到 2 次那天,200 条里成功还是 181 条,你回看过吗?
人工智能·后端·架构
fish8273 小时前
知识库明明有答案,为什么搜不到?我换掉 RRF 修好了混合检索
ai编程
北杨3 小时前
三键之内的意图:用 AIUI 在 Rokid 眼镜上做一个能玩的 21 点
人工智能
火山引擎开发者社区3 小时前
给企业配一双 AI 的手:火山引擎 OS Agent 替你操作手机和电脑
前端·人工智能
神鹰手哥_起飞版3 小时前
我是怎么管理 Coding Agent 的:把任务交出去,也把结果验回来
人工智能·架构·产品经理