awesome-ml-model-compression
机器学习模型压缩领域的Awesome List,精选剪枝/量化/蒸馏/低秩近似等核心论文与工具
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
机器学习模型压缩领域的Awesome List,精选剪枝/量化/蒸馏/低秩近似等核心论文与工具
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象一下,你训练出了一个识别准确率高达 98% 的图像分类模型,但当你想把它部署到用户的手机上时才发现——模型文件超过 500MB,用户需要 10 分钟才能下载完。更糟糕的是,模型推理时 GPU 显存占用爆表,低端设备根本无法运行。
这正是当下 AI 领域最核心的矛盾之一:模型的规模与性能在持续膨胀,但硬件的承载能力与部署场景的需求并没有同步扩张。从 GPT-4 到 Claude 3,每一代大模型的参数量都在刷新纪录;而与此同时,移动端推理、边缘计算、物联网设备上的 AI 需求却在快速增长。两者的落差,催生了一整套"模型压缩"(Model Compression)技术体系。
Awesome ML Model Compression 正是这个领域的"百科全书"。它由独立开发者 cedrickchee 维护,精选了机器学习模型压缩与加速领域最优质的研究论文、工具库、文章教程和视频资源,被 545 位 GitHub 用户标星,在模型压缩这个垂直赛道上具有较高的参考价值。
模型压缩并非新概念。早在 2015 年 LeNet-5 等早期 CNN 模型时期,研究者就已经开始关注模型的存储体积问题。但真正让这一领域爆发性增长的,是 2017 年 Transformer 架构诞生之后——模型参数量从百万级一跃至千亿级别,压缩技术的需求也随之从"优化存储"升级为"解锁推理可行性"。
为什么大模型必须压缩? 三个核心原因:
如果把大模型比作一辆满载货物的重型卡车,模型压缩就是在不丢失货物(精度)的前提下,让卡车变得更轻、更省油、更容易开进小巷。以下是五种主要的"减肥手段":
剪枝(Pruning):类似于货车上卸掉不必要的行李。分为结构化剪枝(整块移除滤波器或通道)和非结构化剪枝(随机删除单个权重参数)。代表性工作包括 Deep Compression(ICLR 2016 Best Paper)提出的"剪枝+量化+霍夫曼编码"三步流程,以及 2023 年的 SparseGPT——首个能在单 GPU 上几小时内完成 1750 亿参数模型稀疏化的方法。
量化(Quantization):将高精度浮点数(FP32/FP16)映射为低位宽整数(INT8/INT4),类似于把货物的精确重量(72.3587kg)简化为粗略估计(70kg)。NVIDIA 在 2022 年提出的 FP8 格式在 INT8 的性能和 FP16 的精度之间找到了新的平衡点。LLM.int8() 和 GPTQ 则专门针对大语言模型设计了 8-bit 量化方案。
知识蒸馏(Distillation):让一辆小卡车(学生模型)模仿大卡车(教师模型)的行驶路线,通过"软标签"传递暗知识。Hinton 早在 2015 年就提出了这一框架,如今蒸馏已成为 LoRA、QLoRA 等参数高效微调技术的理论基础。
低秩近似(Low-Rank Approximation):通过矩阵分解减少参数冗余。LoRA(Low-Rank Adaptation)将大型模型的权重更新分解为两个低秩矩阵的乘积,大幅减少可训练参数,被广泛应用于 LLM 微调。
架构设计(Architecture):从源头优化模型结构。MobileNet 系列通过深度可分离卷积(Depthwise Separable Convolution)将计算量降低 8-9 倍;SqueezeNet 以 AlexNet 1/50 的参数量达到相同准确率;ShuffleNet 则通过通道洗牌操作实现了极低计算量下的高效推理。
该列表不仅收录学术论文,还整理了工业级工具链:
量化工具:TensorFlow Model Optimization Toolkit 提供了完整的训练中和训练后量化 API;XNNPACK 是 Google 维护的高效浮点算子库;Bitsandbytes 则封装了 CUDA 8-bit 量化核心函数,支持 LLM.int8() 方法。
前沿论文亮点:2023 年的两项工作值得特别关注——SparseGPT 首次实现了千亿参数模型的单 GPU 一次性稀疏化无需微调;Wanda("A Simple and Effective Pruning Approach for Large Language Models")则挑战了传统的"按量级剪枝"方法,指出大语言模型中中间层输出的幅度差异可达 20 倍,简单按权重幅值剪枝可能破坏关键信息通路。
LLM 专用压缩:列表专门收录了 LLM.int8()、SmoothQuant、ZeroQuant、GPTQ、QLoRA 等针对 Transformer 大模型的压缩方案,反映了该领域从通用 CNN 到特定于 LLM 的技术演进趋势。
尽管模型压缩技术取得了显著进展,但并非没有争议:
精度-速度的取舍始终存在。尤其是对于生成式 LLM,4-bit 量化虽然能大幅降低显存占用,但某些任务(如代码生成、数学推理)上仍会出现明显的质量下降。Tim Dettmers 的研究指出"4-bit 精度几乎是最优点"——低于 4-bit 后精度损失急剧增加,高于 4-bit 则压缩收益递减。
稀疏化的工程落地仍有挑战。SparseGPT 虽然在精度上表现优异,但其稀疏模式(sparsity pattern)需要专门的硬件支持才能真正加速推理。当前的消费级 GPU 并不原生支持细粒度稀疏,因此 SparseGPT 的理论加速在实际部署中往往难以完全兑现。
列表本身是静态文档,不包含可执行的代码或 demo,用户需要自行实现或跳转到原始论文仓库。
从行业视角看,模型压缩是 AI 民主化的关键使能技术之一。随着 M1/M2/M3 芯片的 Neural Engine、骁龙处理器的 Hexagon DSP 等专用 AI 加速硬件普及,移动端和边缘设备正在逐步具备运行压缩模型的可行性。
Awesome ML Model Compression 的价值在于:它以 Awesome List 的形式,系统性地梳理了这一高度碎片化的领域,让研究者能够快速找到特定技术方向的代表性工作,让工程师能够找到可直接引用的工具和实现方案。在 2024 年大模型推理优化成为行业热点的背景下,这样一份持续更新的精选资源列表具有重要的参考意义。