SparseDecoding:让大模型剪枝真正面向生成阶段
导语
大语言模型推理的瓶颈并不总在算力。进入解码阶段后,模型往往一次只生成一个 token,却需要反复读取大量权重,因此推理延迟容易受到显存访问和带宽限制。剪枝可以减少需要从内存中读取的非零参数,但剪枝是否有效,不仅取决于稀疏率,也取决于它是否针对真实的解码工作负载进行设计。
来自 Westlake ENCODE Lab 的论文提出 SparseDecoding,将剪枝校准过程和生成阶段的实际行为对齐,并进一步为解码中的稀疏矩阵向量乘法提供系统级支持。论文在 Llama-3.1-8B、Llama-3.3-70B、Qwen3-14B 和 Qwen3-32B 等模型上进行实验,报告了最高 1.48 倍的 A100 端到端解码加速。
核心问题:校准数据与生成数据不一致
现有不少训练无关的剪枝方法会使用预先收集的自然文本计算 Hessian 或相关校准信息,再据此判断不同权重对模型输出的重要程度。这种做法便于实施,但它隐含了一个可能不成立的假设:自然文本中的激活分布能够代表模型在生成时遇到的激活分布。
实际上,解码时输入的是模型自己逐步生成的 token,而不是一段完全由人类提供的固定序列。随着生成推进,模型状态和激活分布可能逐渐偏离自然文本校准数据。论文观察到,这种分布差异会使剪枝目标与实际生成行为错位,进而影响剪枝模型的效果。
SparseDecoding的算法设计因此避开 prefill 阶段,直接从稠密模型的自回归生成过程中收集各层激活,并据此构建校准矩阵。换言之,剪枝不是只回答“哪些参数对一段文本重要”,而是更关注“哪些参数对模型持续生成 token 的过程重要”。
核心要点
- 面向解码校准:使用稠密模型在生成阶段产生的层级激活,而非仅依赖固定自然文本。
- 关注真实算子:解码主要涉及稀疏矩阵向量乘法(SpMV),而许多既有方案更擅长加速稀疏矩阵矩阵乘法(SpMM)。
- 系统与算法协同:论文实现了面向 N:M 稀疏模式的 SpMV 内核,使用位掩码索引和固定步长遍历,减少稀疏访问带来的额外开销。
- 覆盖多种模型:实验涉及 Llama 与 Qwen 系列的不同规模模型,并在长文本生成基准上比较了标准固定文本校准方案。
意义与影响
这项工作的重要性在于,它把“剪掉多少参数”和“推理时如何执行稀疏计算”放在同一个问题中考虑。只有剪枝比例并不能自动转化为墙钟时间收益:如果硬件内核无法高效处理不规则的向量级稀疏操作,理论上的非零参数减少可能难以反映到实际延迟上。SparseDecoding从解码数据分布和底层 SpMV 内核两端同时改进,说明面向服务部署的模型压缩需要算法、运行时与硬件执行模式共同配合。
当然,论文给出的加速结果基于特定模型、N:M稀疏形式和A100 GPU,实际收益仍会受到硬件、批大小、序列长度及推理框架实现的影响。更值得关注的是其方法论:当模型主要用于逐 token 生成时,剪枝校准数据也应尽可能来自这一过程。对于追求低延迟生成的部署系统,这种“解码感知”思路或许比单纯提高稀疏率更具实际价值。
评论
正在确认登录状态……
正在加载评论……