2025-11-10T03:09:53.117606

COMPACT: Common-token Optimized Model Pruning Across Channels and Tokens

Kwek, Yin
Making large language models (LLMs) more efficient in memory, latency, and serving cost is crucial for edge deployment, interactive applications, and sustainable inference at scale. Pruning is a promising technique, but existing pruning methods are limited: width pruning often breaks the standard transformer layout, requiring custom inference code, while depth pruning can cause abrupt accuracy drops. Also, while many pruning approaches are effective against LLMs, they struggle to maintain performance on small language models (SLMs). In this work, we propose COMPACT, which jointly (i) prunes rare vocabulary to shrink embedding/LM head layers and (ii) prunes FFN intermediate channels using common-token-weighted activations, aligning importance with the post-pruning token distribution. COMPACT inherits strengths of both depth and width pruning, such as: deployment-friendliness (keeps a standard transformer architecture), scale-adaptivity (trade off vocab. vs. FFN pruning), competitive pruning times, and strong memory savings alongside throughput gains. Experiments across Qwen, LLaMA, and Gemma families (0.5B-70B) show state-of-the-art downstream performance, with substantial reductions in parameters, GPU memory, and latency.
academic

COMPACT: Common-token Optimized Model Pruning Across Channels and Tokens

基本信息

  • 论文ID: 2509.06836
  • 标题: COMPACT: Common-token Optimized Model Pruning Across Channels and Tokens
  • 作者: Eugene Kwek, Wenpeng Yin (Penn State University)
  • 分类: cs.CL cs.AI cs.LG
  • 发表状态: Preprint under review
  • 论文链接: https://arxiv.org/abs/2509.06836v3

摘要

本文针对大语言模型(LLM)在内存、延迟和服务成本方面的效率优化问题,提出了COMPACT剪枝方法。该方法结合了词汇剪枝和基于常见token加权的FFN通道剪枝,在保持标准transformer架构的同时实现了参数压缩。实验在Qwen、LLaMA和Gemma等模型族(0.5B-70B参数)上验证了方法的有效性。

研究背景与动机

问题定义

大语言模型虽然在各种NLP任务上表现出色,但其巨大的参数量(数十亿到数千亿)导致部署成本高昂,限制了在边缘设备、交互应用和大规模推理中的应用。

现有方法局限性

  1. 宽度剪枝(Width Pruning):移除隐藏维度或通道,但破坏标准transformer架构,需要定制推理代码
  2. 深度剪枝(Depth Pruning):移除整个transformer块,虽保持架构但会导致性能急剧下降
  3. 规模适应性差:现有方法在大模型上有效,但在小语言模型(SLM)上表现不佳
  4. 忽视语言特性:未考虑token的重要性差异,平等对待所有token

研究动机

作者通过分析发现:

  • 不同规模模型的参数分布存在显著差异:小模型中词汇参数占比较大,大模型中FFN参数占主导
  • 自然语言遵循Zipf分布,稀有token出现频率极低,对下游性能贡献有限

核心贡献

  1. 系统分析:首次系统性分析了不同规模LLM中embedding、FFN和attention参数的分布规律
  2. COMPACT方法:提出了结合词汇剪枝和基于常见token加权FFN剪枝的新框架
  3. 架构兼容性:保持标准transformer架构,与现有推理框架兼容
  4. 规模自适应:在0.5B到70B参数的多个模型族上实现了SOTA性能

方法详解

参数分布分析

作者首先分析了现代decoder-only transformer的参数分布:

  • 词汇参数Nvocab=2VDN_{vocab} = 2VD(embedding和LM head层)
  • FFN参数NFFN=3LDIN_{FFN} = 3LDI(L层,中间维度I)
  • 注意力参数Nattention=2LD2(1+1H)N_{attention} = 2LD^2(1 + \frac{1}{H})(H为头数比例)

随着模型规模增长,NFFNN_{FFN}NattentionN_{attention}O(LD2)O(LD^2)增长,而NvocabN_{vocab}仅按O(D)O(D)增长,因此小模型中词汇参数占比更大。

COMPACT架构

1. 词汇剪枝(Vocabulary Pruning)

  • 原理:基于BPE tokenizer遵循Zipf分布的特性,移除最稀有的VVV-V'个token
  • 实现:直接删除embedding和LM head矩阵的对应行,以及tokenizer中的merge规则
  • 优势:无需校准数据,计算高效

2. 基于常见token加权的FFN剪枝

传统的act²方法计算通道重要性为: Ik=i=1N(SiLU(XiWgate)XiWup)k2I_k = \sum_{i=1}^{N} (SiLU(X_iW_{gate})X_iW_{up})^2_k

COMPACT提出的common act²方法: Ik=i=1Nwi(SiLU(XiWgate)XiWup)k2,wi={0xiS1otherwiseI_k = \sum_{i=1}^{N} w_i(SiLU(X_iW_{gate})X_iW_{up})^2_k, \quad w_i = \begin{cases} 0 & x_i \in S \\ 1 & \text{otherwise} \end{cases}

其中SS是被剪枝的稀有token集合。

算法流程

算法1 COMPACT
输入:模型M,校准数据集D,目标词汇大小V',目标中间维度I'
1. 识别最稀有的V-V'个token集合S
2. 在数据集D上运行前向传播,收集平方激活
3. 对每个通道k,使用common act²计算重要性Ik
4. 对每一层:剪枝I-I'个最不重要的通道
5. 剪枝词汇参数:移除embedding和LM head矩阵的最后V-V'行
6. 返回剪枝后的模型M'

技术创新点

  1. 双重剪枝策略:结合词汇剪枝和FFN剪枝,针对不同规模模型的参数分布特点
  2. 常见token加权:FFN剪枝时只考虑剪枝后仍有效的token,避免被稀有token误导
  3. 架构保持:仅剪枝词汇大小和中间维度,保持标准transformer结构
  4. 规模自适应:通过调节VV'II'两个超参数适应不同规模需求

实验设置

评测模型

  • 小语言模型:Qwen 2.5-0.5B, LLaMA 3.2-1B, Gemma 3-1B
  • 大语言模型:LLaMA 3.1-8B, LLaMA 3.1-70B

数据集与任务

  • 校准数据:256个C4数据集样本
  • 评测任务:MMLU, HellaSwag, WinoGrande, ARC-C/E, PIQA, GSM8K

对比方法

  • 深度剪枝:ShortGPT, LaCo
  • 宽度剪枝:SliceGPT, 2SSP, FLAP

评价指标

  • 参数剪枝比例、平均准确率、相对性能保持率
  • 剪枝时间、推理吞吐量、GPU内存使用

实验结果

主要结果

小语言模型性能

在Qwen 2.5-0.5B上,35%剪枝比例下:

  • COMPACT: 平均准确率35.3% (70.4%相对性能)
  • 最佳baseline: 31.4% (62.5%相对性能)

在LLaMA 3.2-1B上,35%剪枝比例下:

  • COMPACT: 平均准确率36.9% (76.4%相对性能)
  • 最佳baseline: 33.6% (69.6%相对性能)

大语言模型性能

在LLaMA 3.1-70B上,35%剪枝比例下:

  • COMPACT: 平均准确率63.7% (80.2%相对性能)
  • 2SSP: 62.8% (79.1%相对性能)

效率分析

剪枝时间对比(LLaMA 3.1-8B,35%剪枝)

  • COMPACT: 0:32
  • 2SSP: 1:26
  • SliceGPT: 10:48

推理效率(LLaMA 3.1-8B,35%剪枝)

  • 内存使用:COMPACT减少36%(最佳),ShortGPT/LaCo减少25%
  • 吞吐量提升:COMPACT提升37%,ShortGPT/LaCo提升57%

消融实验

Common act²有效性

在Qwen 2.5-0.5B上35%剪枝:

  • Common act²: 70.4%相对性能
  • 标准act²: 69.2%相对性能
  • |act|方法: 67.6%相对性能

词汇-FFN权衡分析

固定37%剪枝比例,不同VV'II'组合:

  • 纯FFN剪枝(V'=151936):63.0%相对性能
  • 最佳组合(V'=49536):70.4%相对性能

重要发现

  1. 平滑退化:COMPACT表现出平滑的性能衰减,而深度剪枝方法存在突然的性能跳跃
  2. 架构无关性:COMPACT可直接应用于Gemma 3等新架构,而其他方法需要架构特定的修改
  3. 稀有token影响有限:67%的词汇缩减只影响4%的文本重新分词

相关工作

深度剪枝

  • 代表方法:Shortened LLaMA, SLEB, LLM-Streamline
  • 优势:保持标准架构,推理加速明显
  • 劣势:粗粒度移除导致性能急剧下降

宽度剪枝

  • 代表方法:LLM-Pruner, SliceGPT, FLAP, 2SSP
  • 优势:细粒度控制,性能衰减相对平滑
  • 劣势:破坏标准架构,需要定制推理代码

词汇剪枝

  • 现有工作:主要针对特定语言/领域的词汇裁剪
  • 本文贡献:通用LLM的词汇剪枝,结合FFN剪枝形成完整框架

结论与讨论

主要结论

  1. COMPACT在多个模型族和规模上实现了SOTA剪枝性能
  2. 方法保持了标准transformer架构,具有良好的部署兼容性
  3. 双重剪枝策略有效适应了不同规模模型的参数分布特点

局限性

  1. 吞吐量提升有限:相比深度剪枝方法,在推理吞吐量提升方面仍有差距
  2. 词汇剪枝的领域适应性:在特定领域可能需要保留更多专业词汇
  3. 超参数调优:需要为不同剪枝比例寻找最优的VV'II'组合

未来方向

作者提出需要进一步缩小宽度剪枝和深度剪枝在吞吐量方面的差距。

深度评价

优点

  1. 理论基础扎实:基于参数分布分析和Zipf分布特性的理论指导
  2. 方法设计巧妙:common act²巧妙地将词汇剪枝与FFN剪枝结合
  3. 实验全面:覆盖多个模型族、规模和任务的系统性评估
  4. 实用价值高:保持架构兼容性,易于部署

不足

  1. 创新程度有限:词汇剪枝和FFN剪枝都是已有技术,主要贡献在于结合
  2. 理论分析不够深入:缺乏对为什么这种结合有效的深层理论解释
  3. 推理加速有限:在关键性能指标(吞吐量)上不如深度剪枝方法

影响力

  1. 学术贡献:为LLM剪枝提供了新的视角,特别是规模自适应的思路
  2. 实用价值:方法简单有效,易于实现和部署
  3. 可复现性:作者承诺开源代码,有利于方法推广

适用场景

  1. 边缘部署:内存受限环境下的模型压缩
  2. 多规模部署:需要同时支持小模型和大模型的场景
  3. 快速剪枝:需要在短时间内完成模型压缩的应用

参考文献

论文引用了大量相关工作,主要包括:

  • 量化方法:GPTQ (Frantar et al., 2022), AWQ (Lin et al., 2024)
  • 深度剪枝:Shortened LLaMA (Kim et al., 2024), LaCo (Yang et al., 2024)
  • 宽度剪枝:SliceGPT (Ashkboos et al., 2024), FLAP (An et al., 2024)
  • 词汇处理:相关的多语言和领域特定词汇剪枝工作

总体评价:这是一篇技术扎实、实用性强的论文。虽然在理论创新方面相对有限,但通过巧妙的方法组合和全面的实验验证,为LLM剪枝领域贡献了一个有效且易于部署的解决方案。特别是在小语言模型剪枝和架构兼容性方面的优势,使其具有较好的应用前景。