PIVOT 详解——十分钟内从纸面概念到可运行代码

发布日期:2026-07-31 10:02:50  浏览量 :0
发布日期:2026-07-31 10:02:50  
0

您启用了稀疏注意力机制。您的模型在 128K 词元长度下仍然性能瓶颈严重。问题在于索引器——而 PIVOT 无需改动您的模型权重即可解决此问题。

内容摘要

  • 稀疏注意力机制的索引器会对每个查询的所有 L 个词元进行评分 → 复杂度仍为 O(L²)
  • PIVOT 将邻近的查询分组(这些查询选择的顶部 k 个词元重叠率约 90%),每组仅执行一次代理扫描 → 复杂度降为 O(L²/g)
  • 结果:在 DeepSeek-V3.2 和 GLM-5.1 模型上,索引器速度提升 4 倍端到端延迟降低 1.6 倍
  • 无需训练:在推理阶段直接插入现有的动态稀疏注意力模型中即可使用
  • 两种模式:PIVOT-复用(速度最快)和 PIVOT-精炼(精度匹配稠密索引器)

问题所在

动态稀疏注意力机制本应加速长上下文推理。其流程为:对所有词元评分 → 选取顶部 k 个 → 仅关注这 k 个词元。复杂度从 O(L²) 降至 O(L·k)。

然而,对所有词元评分本身也是 O(L²) 复杂度。“索引器”需要对每个查询位置进行完整的 O(L) 扫描。若有 L 个查询,复杂度又回到了 O(L²)。在 100K 词元长度下,索引器主导了延迟。稀疏注意力机制沦为空谈。

工作原理

观察 1:相邻查询的顶部 k 个词元选择共享约 90% —— 它们处理的上下文几乎相同。

观察 2:索引器评分呈长尾分布——代理查询能产生可靠的候选集。

PIVOT 算法:

 = [q_i, q_{i+1}, ..., q_{i+g-1}]
代理_q = 均值()

# 仅一次扫描,而非 g 次扫描
评分 = 代理_q · K[:i]        # O(L)
C = 顶部-K(评分)               # 候选集,K = 2 × top_k


# 逐查询精炼(PIVOT-精炼)
for q in :
    精炼评分 = q · K[C]    # O(K),而非 O(L)
    最终索引[q] = 顶部-k(精炼评分)

索引器成本:O(L²) → O(L²/g)。当 g=8 时,完整扫描次数减少 8 倍。

代码展示

免责声明:本文内容来自互联网,该文观点不代表本站观点。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请到页面底部单击反馈,一经查实,本站将立刻删除。

分享到:

长按或扫码识别 分享给好友

长按或扫码识别 分享给好友
关于我们
热门推荐
合作伙伴
免责声明:本站部分资讯来源于网络,如有侵权请及时联系客服,我们将尽快处理
Copyright © 2025-2027 ToB产业网址导航 公安备案 浙公网安备33010602013138号 浙ICP备16025413号-9
支持 反馈 关注 数据