SliMOO: Interpretable Multi-Objective Evolutionary Search for LLM Depth Pruning¶
会议: NeurIPS 2026
arXiv: 2610.27812
代码: https://github.com/AMD-AGI/SliMOO
领域: 模型压缩 / Model Compression
关键词: 大语言模型深度剪枝, 多目标进化算法, 任务层重要性分析, 帕累托优化, 结构化剪枝
一句话总结¶
SliMOO 针对大模型不同层在各能力域上重要性差异巨大的异质性问题,构建了单层剔除的“任务-层重要性图谱”作为搜索先验,并基于 NSGA-II 展开多目标进化搜索,在给定剪枝预算下实现了跨语言、数学、代码与常识推理的强 Pareto 权衡。
研究背景与动机¶
大语言模型参数规模的急剧扩张带来了高昂的显存与推理延迟开销。为了在无需专用稀疏算子和硬件加速器支持的通用硬件上直接释放推理效率,结构化的深度剪枝(Depth Pruning,即直接剔除完整的 Transformer 层或 Attention/MLP 子层)成为工业界极具吸引力的方案。然而,现有的层剪枝方法(如基于余弦相似度排名的 ShortGPT、层合并方案 LaCo 以及基于标量损失或单目标优化的 EvoPress、BlockPruner 等)几乎都默认模型各层存在全局统一的重要性排序,依赖单一的全局标量打分来决定剪枝顺序。
这种单一全局排序的假设与大模型的实际层级功能严重相悖:不同 Transformer 层在不同任务域上的贡献表现出极强的异质性。例如论文实测发现,在 Llama-3.1-70B 上执行 25% 层剪枝时,单目标排序的 ShortGPT 虽然能使 MMLU 常识推理准确率几乎不掉(77.79% 对比 Dense 的 78.51%),但却导致数学推理 GSM8K 从 80.82% 断崖式跌落至 12.74%,代码生成 HumanEval 从 51.83% 崩塌至 18.29%。若只看单一知识指标,模型看似剪枝成功,实则在多步逻辑与编程能力上发生严重退化。这表明大模型深度剪枝本质上是一个多目标优化问题,不能退化为单指标打分。
针对多任务能力在层深度依赖上的权衡矛盾,本文的核心切入点是将多任务在同一样本上的输出分布偏离程度分别建模为独立的目标函数,并先借助低成本的单层剥离探针建立先验,进而开展带约束的多目标进化搜索。核心 idea:通过单层移除探针构建可解释的“任务-层重要性图谱”(TLIP)作为先验,利用非支配排序与拥挤度距离(NSGA-II)驱动多目标进化搜索与自适应变异,在严格稀疏预算下直接搜寻保留全域综合能力的 Pareto 最优剪枝掩码。
方法详解¶
整体框架¶
SliMOO 的整体流程主要由两个阶段构成:第一阶段为任务-层重要性分析(Task-Layer Importance Profiling, TLIP),通过单层/子层移除探针,测量模型在各任务域上的性能损失,生成显式的任务-层重要性矩阵 \(\mathbf{I}\);第二阶段为 Pareto 感知的多目标进化搜索,以任务掩码为染色体,在 TLIP 构建的保守上界与任务特异行先验指导下,通过保持稀疏预算的交叉与自适应温度变异算子生成候选解,并借助基于掩码熵归一化 KL 散度的多任务目标向量与 NSGA-II 环境选择,保留多样且非支配的解集,最终通过超体积(Hypervolume)贡献度选出最优部署掩码。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
A["输入:预训练Dense模型 + 多领域校准集"] --> B["任务-层重要性分析 TLIP<br/>单层剔除探针计算每层对各任务的边际扰动"]
B --> C["构建先验矩阵 I 与保守风险上界 Î<br/>解构任务共享层与任务专精层"]
C --> D["先验引导的多目标进化初始化<br/>混合低风险采样与随机可行掩码"]
D --> E["帕累托感知多目标进化搜索<br/>基数保持交叉 + 自适应温度交换变异"]
E --> F["任务级多目标评估与 NSGA-II 环境选择<br/>各任务熵归一化KL散度 + 非支配排序与拥挤度"]
F -->|多轮迭代收敛| G["超体积贡献最大化决策 HV-Best<br/>输出最终深度剪枝模型与部署掩码"]
关键设计¶
1. 任务-层重要性图谱(TLIP):单层探针解构层级任务专精性
传统方法用单一标量评估层冗余度,无法捕捉不同层对数学、代码、常识等不同任务的差异化敏感性。为了在搜索前以低开销刻画这种依赖关系,TLIP 对候选单元集 \(\mathcal{F}\)(默认排除极度敏感的前两层与后两层)中的每个可移除单元 \(i\)(层或 Attention/MLP 子层)执行单单元剥离探针。对任务 \(t\),单单元移除损失定义为:
$\(I_{t,i} = f_t(\mathbf{e}_i) - f_t(\mathbf{0})\)$
其中 \(\mathbf{0}\) 表示全量 Dense 模型,\(\mathbf{e}_i\) 表示仅剔除第 \(i\) 个单元的掩码向量。遍历所有 \(T\) 个任务和 \(D\) 个单元,得到重要性矩阵 \(\mathbf{I} \in \mathbb{R}^{T \times D}\)。为了在后续搜索中防止任何单一核心能力的崩塌,TLIP 聚合计算各单元在所有任务中的最大损失,构建保守的平衡先验 \(\hat{I}_i = \max_t I_{t,i}\)。该先验能严格护航对任意单一任务至关重要(但在其他任务表现冗余)的专精层,同时单任务行 \(I_{t,:}\) 则用于在搜索中探索特定能力的帕累托前沿。
2. 任务自适应多目标优化:掩码熵归一化 KL 散度
为了摆脱下游测试集标签依赖并真实反映各任务分布形变,SliMOO 在校准阶段将每个任务建模为一个最小化目标。给定第 \(t\) 个任务的校准样本,以 Dense 模型的预测分布 \(p_0\) 与剪枝模型预测分布 \(p_{\mathbf{x}}\) 之间的前向 KL 散度作为基础距离。同时,考虑到不同任务在生成时的有效区域不同(如数学和代码任务需要忽略 Prompt 前缀,仅对模型解答部分计算损失),引入响应掩码 \(m_{n,j}^{(t)}\);再引入密集模型在活跃位置的平均熵 \(H^{(t)}\) 作为缩放因子,消除高熵与低熵任务之间的尺度不均衡:
$\(f_t(\mathbf{x}) = \frac{1}{H^{(t)} + \epsilon} \cdot \frac{1}{Z_t} \sum_{n,j} m_{n,j}^{(t)} \, \mathrm{KL}\Big(p_0(\cdot \mid c_{n,<j}^{(t)}) \;\big\|\; p_{\mathbf{x}}(\cdot \mid c_{n,<j}^{(t)})\Big)\)$
其中 \(Z_t = \sum_{n,j} m_{n,j}^{(t)}\) 为活跃 token 总数。优化目标转化为求解在固定剪枝预算 \(\|\mathbf{x}\|_1 = K\) 约束下的多目标最小化问题 \(\min_{\mathbf{x} \in \mathcal{X}_K} \mathbf{f}(\mathbf{x}) = (f_1(\mathbf{x}), \ldots, f_T(\mathbf{x}))\)。
3. 帕累托进化搜索:保持稀疏基数的算子与自适应温度变异
深度剪枝要求严格满足剪枝数量 \(K\),任意破坏基数的变异都会导致无效候选解。SliMOO 提出了严格保持基数的变异与交叉机制:
- 基数保持交叉:从父代集合中选取两个父代掩码 \(S_1\) 与 \(S_2\)(已剪枝单元集合,且 \(|S_1|=|S_2|=K\)),子代直接继承二者重合剪枝的单元 \(S_1 \cap S_2\),并在两者的非重合集合 \((S_1 \cup S_2) \setminus (S_1 \cap S_2)\) 中采样补齐剩余名额,天然保证了子代严格落在预算空间 \(\mathcal{X}_K\) 内。
- TLIP 引导的自适应温度交换变异:局部变异通过从保留集合 \(\mathcal{F} \setminus S\) 中挑选一个单元 \(a\) 执行剪枝、从已剪枝集合 \(S\) 中挑选一个单元 \(r\) 执行恢复来实现(汉明距离为 2,基数恒定)。采样概率由重要性先验 \(\tilde{I}\)(在全局保守先验 \(\hat{I}\) 与均匀采样的单任务行 \(I_{t,:}\) 之间轮替)和温度参数 \(\tau\) 驱动:
$\(P_{\mathrm{prune}}(a) \propto \exp(-\tilde{I}_a / \tau), \qquad P_{\mathrm{restore}}(r) \propto \exp(\tilde{I}_r / \tau)\)$
温度 \(\tau\) 根据群体超体积(Hypervolume)进展动态调整:若超体积增加则乘以 0.9 退火以加大开发强度;若停滞 3 代则乘以 1.5 升温以增强探索,范围截断在 \([0.1, 5.0]\)。
4. NSGA-II 环境选择与超体积最优决断(HV-Best)
由于层与层之间存在非线性的组合交互效应,单纯依靠单层先验求和无法代替系统评估。SliMOO 将新生成的交叉与变异个体并入候选池,利用 NSGA-II 对候选解按支配关系分层分级(非支配排序),并在边界截断层中按各目标上的归一化拥挤度距离(Crowding Distance)进行多样性保留:
$\(\mathrm{CD}(\mathbf{x}) = \sum_{t=1}^T \frac{f_t(\mathbf{x}_t^+) - f_t(\mathbf{x}_t^-)}{f_t^{\max} - f_t^{\min}}\)$
以此防止种群坍缩至单任务过拟合的局部极值。在搜索结束产生非支配 Pareto 解集 \(\mathcal{P}_G\) 后,实际部署需要确定唯一的剪枝模型。SliMOO 以最坏点上浮 10% 作为参考点 \(\mathbf{r}\),计算每个候选掩码对解集总超体积的边际贡献 \(\Delta_{\mathrm{HV}}(\mathbf{x}; \mathcal{P}) = \mathrm{HV}(\mathcal{P}; \mathbf{r}) - \mathrm{HV}(\mathcal{P} \setminus \{\mathbf{x}\}; \mathbf{r})\),自动挑选边际超体积贡献最大的解作为最终输出 \(\mathbf{x}^\star\)。
损失函数 / 训练策略¶
SliMOO 本身属于免微调(Post-Training Pruning)的一次性离线搜索框架。在搜索过程中,为大幅节省显存与算力,目标评估采用了多阶段逐级保真度策略(Multi-stage evaluation):候选个体先后在 2,048、4,096、16,384 tokens 的校准规模下经 NSGA-II 筛选,幸存个体数相应从 16 逐级收缩到 8 和 4。搜索默认设定为 30 代、种群大小 4、每代产生 64 个后代、交叉率 0.3。若剪枝后需要进一步恢复精度,还可外挂轻量级 LoRA 架构(微调所有线性层,Rank=16, \(\alpha=32\)),在高质量指令数据集(如 Tulu-3-SFT)上完成轻量恢复。
实验关键数据¶
主实验¶
论文在 Llama-3.1-70B、405B 以及 Qwen3-32B、235B-A22B 等主流大模型上,针对 25% 整层剪枝与 33% Attention/MLP 子层剪枝进行了详尽测试,评估涵盖语言建模(WikiText-2, PTB, C4)、数学(GSM8K, MATH)、代码(HumanEval, MBPP)以及常识知识推理(MMLU, ARC, HellaSwag, PIQA 等)。
| 模型与设置 | 剪枝方法 | 语言困惑度 (Lang. Avg) ↓ | 数学平均分 (Math Avg) ↑% | 代码平均分 (Code Avg) ↑% | 知识常识平均分 (Know. Avg) ↑% |
|---|---|---|---|---|---|
| Llama-3.1-70B 0% (Dense) |
- | 5.73 | 52.48 | 58.32 | 72.25 |
| Llama-3.1-70B 25% 整层剪枝 |
ShortGPT | 11.35 | 12.85 | 15.45 | 65.93 |
| LaCo | 11.20 | 16.00 | 20.39 | 66.22 | |
| LLM-Pruner | 8.74 | 32.44 | 26.78 | 66.78 | |
| EvoPress | 9.88 | 24.33 | 35.03 | 64.63 | |
| SliMOO (本文) | 9.89 | 34.40 | 39.14 | 66.90 | |
| Llama-3.1-70B 33% 子层剪枝 |
ShortGPT | 35.22 | 5.20 | 2.75 | 63.38 |
| EvoPress | 12.02 | 10.33 | 15.11 | 62.02 | |
| BlockPruner | 10.99 | 24.22 | 18.89 | 63.96 | |
| FinerCut | 12.85 | 13.10 | 7.87 | 64.73 | |
| SliMOO (本文) | 10.45 | 27.27 | 30.78 | 66.29 | |
| Llama-3.1-405B 25% 整层剪枝 |
ShortGPT | 8.10 | 28.68 | 48.73 | 70.58 |
| EvoPress | 7.45 | 44.95 | 46.90 | 70.22 | |
| SliMOO (本文) | 7.59 | 49.83 | 51.99 | 71.03 | |
| Llama-3.1-405B 33% 子层剪枝 |
FinerCut | 9.97 | 45.51 | 43.81 | 71.13 |
| SliMOO (本文) | 7.27 | 54.57 | 59.95 | 71.71 |
消融实验¶
为了验证多目标选择与 TLIP 先验的核心作用,论文在 Llama-3.1-70B(25% 整层剪枝)上对比了单目标进化、不同多目标汇聚方式以及纯 NSGA-II 与 SliMOO 的表现:
| 搜索目标与选择变体 | 语言困惑度 ↓ | 数学平均分 ↑% | 代码平均分 ↑% | 知识常识平均分 ↑% | 机制分析说明 |
|---|---|---|---|---|---|
| Language Evolution (单目标) | 9.88 | 24.33 | 35.03 | 64.63 | 仅优化语言建模,数学能力遗忘严重 |
| Math Evolution (单目标) | 10.75 | 36.11 | 34.89 | 66.44 | 数学最佳,但语言困惑度恶化 |
| Code Evolution (单目标) | 9.89 | 30.93 | 38.59 | 65.66 | 偏向代码,数学明显欠拟合 |
| Knowledge Evolution (单目标) | 11.35 | 25.46 | 27.20 | 67.45 | 知识最高,但代码和数学大幅滑坡 |
| Mean Evolution (标量平均) | 9.97 | 29.14 | 33.10 | 66.62 | 简单算术平均掩盖了任务间劣势 |
| Random Pareto Evolution | 9.96 | 29.06 | 33.11 | 66.27 | 从 Pareto 前沿随机采样,缺乏多样性保持 |
| HV Evolution (单纯超体积选择) | 9.91 | 30.77 | 34.73 | 66.58 | 超体积贪心筛选弱于拥挤度排序 |
| NSGA-II (无 TLIP 先验引导) | 9.89 | 32.67 | 36.02 | 66.71 | 标准多目标搜索,缺少任务-层先验加速 |
| SliMOO (TLIP + NSGA-II) | 9.89 | 34.40 | 39.14 | 66.90 | 先验引导 + Pareto 搜索,全域综合最优 |
关键发现¶
- 打破“伪剪枝”神话:传统单目标方法在 MMLU 等知识测试中看似保持率极高,但 GSM8K 和 HumanEval 往往出现毁灭性崩塌。SliMOO 证实了数学和代码等复杂推理任务对特定深层结构极度敏感,必须作为独立目标保留。
- TLIP 先验赋予进化搜索强定向性:相比于直接在巨大组合空间内黑盒搜索的无先验 NSGA-II,引入 TLIP 提供的任务-层重要性引导后,数学与代码指标分别额外获得了 +1.73% 和 +3.12% 的绝对提升,收敛速度大幅提高。
- 公平校准对照验证:当让 ShortGPT、EvoPress 等基线也使用完全相同的混合多域校准集时(EvoPress-mix 数学 27.89%、代码 35.62%),SliMOO 依然分别高出 +6.51% 和 +3.52%,证明其优势源于多目标形式化定义与 Pareto 算法本身,而非单纯的数据配比红利。
- 泛化性与可调优性:在未参与搜索的外部任务(TruthfulQA、ToxiGen、MedMCQA)以及西班牙语、法语、德语等跨语言评测中,SliMOO 均取得了最佳的性能保持;且剪枝后接入 LoRA 微调(SliMOO*),在 70B 模型上数学与代码迅速跃升至 48.04% 和 61.40%,说明其剪枝结构完整保留了底层的可塑性。
- 实际推理吞吐提速:在 AMD Instinct MI300X 上配合标准 vLLM 进行吞吐实测,25% 层剪枝在 4096 IO token 下获得 1.33× 首字延迟(TTFT)加速与 1.29× 解码吞吐(TPS)提升;33% 子层剪枝则分别提升至 1.43× 和 1.39×,无需专用稀疏库即可直接落地。
亮点与洞察¶
- 多目标视角的本质回归:指出了大模型层级能力异质性这一核心物理事实,将以往“启发式单分数排序”的研究范式推进到了“多目标 Pareto 前沿搜索”,从理论形式上修正了深度剪枝的优化基石。
- TLIP 兼具可解释性与搜索先验:单层剥离探针矩阵不仅让算法研究者能一目了然看清哪一层负责代码(如中后部 MLP)、哪一层是全任务共享基础基石,更以保守最大值形式作为进化搜索的引导先验,巧妙化解了组合爆炸难题。
- 优雅的基数守恒进化算子:定制的基数保持交叉与基于先验分布采样的局部交换变异,确保了种群中每个染色体在任意时刻都严格满足硬件剪枝的层数预算,消除了惩罚项或重投影带来的退化。
局限与展望¶
- 预定义能力域的覆盖边界:当前的 TLIP 依赖于预设的四个核心能力域(通用语言、知识、数学、代码),虽然在未见任务上表现出较好泛化,但对于开放场景下未知极端领域(如长文本代理、超长上下文状态追踪)的覆盖能力仍有待检验。
- 离线搜索时间成本:尽管采用了逐级保真度过滤机制,TLIP 探针及 30 代多目标进化仍需数小时的离线运算开销(在 2 张 MI300X 上 70B 模型耗时约 10 小时),未来可探索更轻量的快速梯度/激活敏感度代理。
- 子层参数量不对称性:在 Attention 与 MLP 的子层剪枝设置中,当前预算仍按单元数量统一计算,但二者的参数量与实际 FLOPs 存在差异,未来可进一步拓展至非齐次硬件代价的多目标约束搜索。
相关工作与启发¶
- vs ShortGPT / BlockPruner: ShortGPT 依靠激活角相似度进行全局单排序剔除,BlockPruner 使用单标量校准损失,容易牺牲未被优化的能力域(如数学、代码)。SliMOO 将各域分离为显式向量目标,避免了能力域间的相互掩盖。
- vs EvoPress: EvoPress 虽引入进化算法搜索动态结构,但其本质仍是基于混合数据的单目标标量损失搜索,容易偏向易拟合的语言建模任务。SliMOO 使用 NSGA-II 显式维持非支配前沿,并引入 TLIP 先验大幅提升了搜索效率。
- vs MOSP: MOSP 同样将剪枝视为多目标优化,但其局限于非结构化权重剪枝(Unstructured Pruning)和 ADMM 优化,无法直接获得硬件吞吐加速;SliMOO 针对离散层结构的深度剪枝,直面结构非加性交互挑战,并完美兼容 vLLM 工业化部署。
评分¶
- 新颖性: ⭐⭐⭐⭐⭐ 首次从任务级异质性出发将大模型深度剪枝系统性重构为多目标优化问题,TLIP 先验与基数守恒算子设计严密。
- 实验充分度: ⭐⭐⭐⭐⭐ 涵盖 70B/405B 大模型与 8B 小模型,横跨 Llama 与 Qwen 两大家族,并包含外域泛化、多语言、LoRA微调与真实 vLLM 吞吐测试。
- 写作质量: ⭐⭐⭐⭐⭐ 概念清晰,形式化表述严谨完整,先验构建与算法演进逻辑极为自然。
- 价值: ⭐⭐⭐⭐⭐ 能无缝配合 vLLM 等静态推理引擎大幅压缩显存与提升吞吐,在开源大模型部署工程中具备极高的实际落地价值。