← 返回题目列表

大模型剪枝和稀疏化有什么区别?为什么结构化稀疏更容易加速?

高频 困难 第 9 / 25 题 更新于 2026/07/28
模型压缩剪枝稀疏化结构化稀疏推理加速

简化版

剪枝是删除不重要的参数、通道、头或层;稀疏化是让大量参数变为零或形成稀疏结构。非结构化稀疏能减少参数量,但硬件不一定加速;结构化稀疏删除完整通道、矩阵块或注意力头,更容易映射到高效算子。

详细版

  • 非结构化剪枝按单个权重置零,压缩率高但访存和索引开销大。
  • 结构化剪枝按 channel、head、layer 或 block 删除,硬件友好。
  • 剪枝后通常需要少量恢复训练或蒸馏来修复精度。
  • LLM 对不同层和模块的冗余程度不同,不能均匀删除。
  • 实际部署要看端到端延迟,不只看参数减少比例。

完整版教学

这道题考察候选人是否能区分“模型变稀疏”和“推理真的变快”。

一、这题真正考什么

这道题考察候选人是否能区分“模型变稀疏”和“推理真的变快”。

面试官通常不是想听一个孤立定义,而是想看你能不能把概念、工程约束、质量风险和排查方法串起来。回答时先给边界,再讲机制,最后落到评估指标。

二、核心机制怎么工作

剪枝的核心是估计重要性并移除低贡献部分。若只是把权重置零,通用 GPU 仍可能按稠密矩阵计算,速度收益有限;若删除完整维度或使用硬件支持的稀疏模式,矩阵形状变小或 kernel 能跳过计算,才更容易获得实际加速。

需要特别注意的是,这类问题通常有“模型侧”和“系统侧”两层含义。模型侧解释原理,系统侧解释为什么上线后会遇到成本、延迟、质量或安全问题。

三、带数字的拆解

一个 FFN 中间维度是 11008,如果结构化剪掉 20% 通道,中间矩阵乘法维度可降到约 8806。相比散落置零 20% 权重,结构化删除更可能减少真实 FLOPs 和显存带宽。

这个数字例子在面试里很有用,因为它能把抽象概念变成可估算的工程量。候选人如果能主动算出量级,通常比只背定义更有说服力。

参数减少率 = 被移除参数量 / 原始参数量
理论 FLOPs 减少 ≠ 实际延迟减少
实际收益 = kernel 支持 * 稀疏模式规则性 * 精度恢复效果

四、流程图和工程落点

可以把它拆成下面这条链路来讲:

选择剪枝粒度
   |
估计权重/通道/头重要性
   |
删除或置零低贡献部分
   |
恢复训练或蒸馏
   |
导出匹配运行时
   |
端到端延迟评测

工程落点通常包括三件事:第一是输入输出边界,第二是运行时成本,第三是质量验收。只要这三件事没有闭环,原理讲得再漂亮也很难变成可靠系统。

五、和相近方案怎么区分

方法压缩对象加速难度
非结构化稀疏单个权重需要专门稀疏 kernel
结构化剪枝通道、头、层更容易用常规算子加速
N:M 稀疏固定块模式依赖硬件支持
层裁剪整层删除风险高但收益明确

面试时不要只说“看场景”。更好的回答是先给出区分维度,再说明每个方案为什么适合或不适合某类约束。

六、上线或训练时最容易踩的坑

  • 剪枝指标在一个数据集上有效,不代表所有领域都安全。
  • 剪掉注意力头后要验证长上下文和工具调用等复杂能力。
  • 只在 demo 样本上验证会低估真实风险,尤其是长文本、多轮、结构化输出和安全边界。
  • 指标要和业务目标绑定,否则可能出现离线分数提升、线上体验下降的情况。

七、常见误区与追问

  • 误区:参数少 30% 延迟就一定少 30%。 面试中要主动补上边界条件和工程后果,避免把概念讲成绝对结论。
  • 误区:非结构化稀疏天然适合所有 GPU。 面试中要主动补上边界条件和工程后果,避免把概念讲成绝对结论。
  • 误区:剪枝后不用恢复训练。 面试中要主动补上边界条件和工程后果,避免把概念讲成绝对结论。
  • 追问:为什么结构化剪枝更容易部署? 可以从数据、算法、系统和评测四个角度展开,先说判断标准,再说取舍。
  • 追问:N:M 稀疏和普通稀疏有什么区别? 可以从数据、算法、系统和评测四个角度展开,先说判断标准,再说取舍。
  • 追问:剪枝和量化可以组合吗? 可以从数据、算法、系统和评测四个角度展开,先说判断标准,再说取舍。

八、加强记忆

记住“零很多不等于跑得快,形状变简单才容易快”。剪枝面试要从重要性、粒度、恢复和硬件支持四点回答。

复习时建议按“定义、机制、数字、流程、对比、风险”六步默写一遍。能把这六步讲顺,就能覆盖大多数追问。