青稞AI公众号文章

字节最新论文意外“背刺”DeepSeek-V4?一文讲透 HISA 如何终结 CSA 的相位敏感性

HISA 是一种加速 indexer 同时,缓解压缩损失的方法。原始版本的特点是 block indexer 的开销,token attention 的效果。这种做法不存在 CSA 压缩 kv cache 带来的相位敏感性问题。

青稞AI

公众号 · 58 篇文章

图片

主页:http://qingkeai.online/




 

作者:孟繁续
原文:https://zhuanlan.zhihu.com/p/2094012600119981083

青稞社区为科研人员提供成果宣传支持,如有优秀研究成果分享推广,欢迎投稿联系:aiFreeCode

 

 

碎碎念

DeepSeek-V4 发布 CSA 的时候,我对比了一下 HISA 和 CSA 的异同,跟身边的同学说,CSA 相比 HISA 确确实实的能减少 KV Cache,但是效果会比 HISA 差一些。但是当时也没有想到如何很好的把这种优势通过实验给展示出来。

看到字节 Seed 团队最新发布的论文《Periodic Weak Spots》之后,我意识到这就是一个很好的反例,用来区分 HISA 和 CSA 的能力差异。

加上 LongCat-2.0 直接用了我们的 HISA,以及 DeepSeek-V4.1-flash 引用了我们并提出一个 Hierarchical Sparse Indexer,因此决定写这样一篇文章,来介绍一下 HISA。

HISA 是什么

图1. DSA与HISA的对比
图1. DSA与HISA的对比

HISA 是 Hierarchical Indexing Sparse Attention 的缩写,Hierarchical 是一种计算机领域一种经典的分层执行任务的思想,我们将其引入 DSA 用于解决 Indexer 的速度瓶颈问题。

DSA 需要一个 indexer 以比较小的开销从全部上下文中召回 top-k 个 token,交给 core-attention 计算。如何高效的设计 indexer 是一个关键问题。

HISA 指出,可以先用比较小的开销快速筛传出 c 个候选 token,然后再在这 c 个候选 token 中精确的选择 top-k 个 token。

这个种先粗粒度挑选候选 token,再精排得到 topk 的思想就是 HISA 的第一个核心思想。

那么如何快速的得到候选 token 呢?HISA 给出一个解决方案,将所有的 token 切 block,选择 top-m 个 block 内所有的 token 作为候选 token。

当时选 block 的好处在于同时能够减少计算量和访存量,DSA 出现时 NSA 和 MoBA 还有一定热度,那时 block sparse 好还是 token sparse 好还存在争论。

因此我希望通过 HISA 提供一种折中的思路:用 block 选 token,用 token 算 attention,达到一种效果和效率的平衡。

HISA 和 CSA 的异同

对于 DSA 来说,indexer 选一个 token 很贵,选中的 token 信息量又比较少。HISA 和 CSA 都存在两次压缩:

1、 对 Indexer 的压缩,二者都将 indexer 的多个 token 压缩成一个从而减少选择 token 的开销;

2、 对取出的 token 的压缩,CSA 直接将 indexer block 和 main-kv block 对齐,选中的 block 已经压缩成一个 token 了。而 HISA 对于 indexer 选中的 block,将其中的 token 展开,全局排序选择最大的 top-k token。

二者第一阶段一样,第二阶段的区别可以简单理解为局部低秩和全局稀疏的区别。因此当初 V4 出来的时候,我说 HISA 的效果是更好的。

当然,HISA 还需需要保存全局 cache,而 CSA 直接把 kvcache 压缩几倍,效率上还是 CSA 更高。未来 HISA 需要结合 kv reuse 和 reindex 等想法,把 kvcache 也降下来才能全面取得相比 CSA 的优势。

HISA 不存在相位敏感性问题

前面铺垫了这么多,终于开始介绍正题。

为了定位 seed 所说的相位敏感性问题的元凶,我复现了文章中的从头训练一个小模型的实验,对比 DSA、CSA、HISA,发现 DSA 确实在每个相位准确率几乎一致,CSA 则差距巨大,而用了 block indexer,token attention 的 HISA 则和 DSA 一样不存在相位敏感性问题。

因此得出,block core-attention 是导致相位敏感性的原因,只用 block indexer 不会导致相位敏感性。

指标
DSA(top-2048 token)
CSA(top-2048 block)
HISA(top-2048 token)
平均准确率
37.30%
45.41%
50.05%
相位 0
36.91%
1.95%
50.20%
相位 1
36.91%
39.45%
50.00%
相位 2
37.50%
64.45%
50.59%
相位 3
37.89%
75.78%
49.41%
准确率峰谷差
0.98%
73.83%
1.17%

正常 CSA 应该取 top-512,乘以 4 个 token/block 才和其他两项对齐 setting,这里实验的时候没注意这个细节,回头会更新一下结果。

HISA 的变体

HISA 可以有一系列的变体,只要是能够更快的得到候选 token 的方法,都可以和 HISA 结合,用来做第一阶段的方法。

indexer 计算无非层、头、block、维度、精度这几个可以压缩的方向,每一种方法直接压缩,都可能会导致效果损失比较大,但是结合 Hierarchical 的想法,先用这些方法粗筛,再精排,就能够显著提升效果。

层压缩:例如 HISA 结合 IndexCache 就得到了 DeepSeek-V4.1-flash 的 Hierarchical Sparse Indexer,IndexCache 直接 reuse top-k 会损失效果,但是 V4.1-flash 先选择一个更大的候选集,然后再精排,就能获得很好的效果,他们把这种方式起名叫做 reindex。

我们的 IndexCache[1] 也是层压缩的方法,利用了 MLA 的 latent kv 的思想来压缩 indexer key,相比 IndexCache 有更好的效果。

头压缩:再例如我们做的 MISA[2],利用 moe 的思想动态的选择 indexer 头,但是直接这样选效果也会有比较大的损失,因此结合 HISA,显著提升了 training free 的效果。

这里提一句,Qwen3.8-Flash-Next 直接把 indexer 的头压缩成了 4 个,效果其实会有一定的损失的,不如 MISA+HISA 这种动态路由+两阶段效果好。

我们做的 DoSA[3] 其实也可以理解为一种头压缩版本的 HISA,但是由于其第一阶段是无损的加速的,因此是 next-level 的一个故事了。

block 压缩:HISA 是在 key block 压缩作为第一阶段,后面还有混元发的 PIVOT 压缩 query block,压缩 query block 其实挺好的,只是需要配合 MTP 才能做 decoding。

维度压缩和精度压缩:目前还没看到有研究降低维度或者数值精度,用来找候选 token,大家有看过的可以补充到评论区,如果真的没有,感兴趣的同学可以占个坑。

总结

HISA 是一种加速 indexer 同时,缓解压缩损失的方法。原始版本的特点是 block indexer 的开销,token attention 的效果。这种做法不存在 CSA 压缩 kv cache 带来的相位敏感性问题。

HISA 和其他方法结合就可以得到很多变种,是大家在做 indexer 压缩时,用于提升效果的一个好的 trick。

原版 HISA 的 block size 取得过大了(128),导致表现不如意,但是将来我们会修改这一点,以及结合一些其他的设计,希望能让 HISA 重新成为很有竞争力的方法。

引用链接

[1] IndexCache: https://arxiv.org/pdf/2610.04635
[2] MISA: https://arxiv.org/pdf/2605.07363
[3] DoSA: https://huggingface.co/papers/2610.13990

 




往期推荐

图片

直播预告!代替 MLA,无需从头训练,H100/H20 自适应的高效注意力机制

图片

TransMLA|GQA/MHA转MLA获得10倍推理加速

图片

从GQA到MLA,Qwen架构爆改为DeepSeek,复现R1

图片

PiSSA作者新作:跨层正交化微调方法CLOVer,让大模型少忘记原有的能力




 

加入青稞AI技术交流群

 

加入青稞AI技术交流群,不仅能与来自MIT、港中文、CMU、UCLA、斯坦福、清华、阿里、腾讯等名校名企AI研究员/开发者一起进行技术交流,同时还有一线青年AI研究员/开发者的Talk分享、青稞Tea、论文精读、招聘内推、国内外硕/博申请、大模型技术报告解读等。备注:姓名+学校/公司+方向,暗号"AI"优先审核通过!


图片




都看到这了,点个关注再走吧🧐~


前往微信阅读全文

内容来自公众号,可前往微信查看原文。

查看作者的更多文章 →订阅更新、RSS 与阅读指南 →