Efficient-Deep-Learning
收录近800篇论文的DNN压缩与加速文献资料库,西湖大学教授维护,覆盖剪枝、蒸馏、量化、NAS五大方
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
收录近800篇论文的DNN压缩与加速文献资料库,西湖大学教授维护,覆盖剪枝、蒸馏、量化、NAS五大方
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
你有没有过这样的经历——训练出了一个准确率极高的深度学习模型,正当你满心欢喜准备部署到边缘设备时,却发现模型文件大到塞不进任何一个移动端。GPU 显存告急、推理延迟爆表、服务器成本直线飙升……这是每一位 AI 工程师在走向产品化道路时必然会撞上的那堵墙。
Efficient-Deep-Learning(后简称 EfficientDNNs)正是为解决这一痛点而生。它由西湖大学助理教授 Huan Wang(王欢博士)维护,收录了 1988 年至 2022 年间近 800 篇 DNN 压缩与加速领域的核心论文,覆盖剪枝(Pruning)、知识蒸馏(Knowledge Distillation)、量化(Quantization)、低秩分解(Low-rank Decomposition)和神经网络架构搜索(NAS)五大技术方向。
图1:项目维护者 Huan Wang(西湖大学助理教授)
深度学习模型越做越大是一个不可逆的趋势。以 2020 年前后的 GPT-3 为例,其参数量达到 1750 亿,单个模型的存储空间就超过 350GB。这种"越大越强"的定律在学术研究阶段无可厚非,但一旦要落地部署——手机端实时推理、车载芯片低延迟识别、IoT 设备有限算力——大模型的"体积焦虑"就成了制约 AI 普及的绊脚石。
学术界其实从上世纪 80 年代末就开始研究如何让神经网络变得更小、更快、更高效。然而,这些研究散落在 NIPS/ICML/CVPR/ICLR 等数十个顶会的论文海洋中,研究者需要花费大量时间做文献调研,才能拼凑出一条完整的技术演进路线。Huan Wang 在 2017 年左右开始系统整理这一领域,最终创建了 EfficientDNNs 项目,希望成为每一位关注模型效率的学者和工程师的"论文导航仪"。
剪枝是模型压缩最直观的方法:找出神经网络中不重要的权重或神经元,将它们删除,从而降低参数量和计算量。
1989 年的开创性工作:LeCun 等人提出的 Optimal Brain Damage (OBD) 通过二阶导数评估权重重要性,是最早的剪枝理论框架之一。而 Optimal Brain Surgeon (OBS) 则在 1992 年进一步提升了剪枝精度。这些早期工作奠定了"基于重要性评估"剪枝的数学基础。
2015-2017 年的爆发期:这是剪枝研究最活跃的阶段。Han Song 等人的里程碑论文 Learning both Weights and Connections for Efficient Neural Network(NIPS 2015)系统证明了剪枝可以将模型体积压缩 9~13 倍而不损失精度。Network Slimming(ICCV 2017)引入了通道级剪枝(channel pruning),让剪枝可以直接转化为硬件加速收益。ThiNet(ICCV 2017)则通过滤波器级别的剪枝,将 VGG-16 模型压缩 5 倍。
彩票假说(Lottery Ticket Hypothesis):2018 年 Frankle 和 Carbin 提出的 LTH 引发了巨大轰动——任何一个随机初始化的密集网络内部,都藏着一个"中奖彩票"子网络,只需单独训练就能达到原网络精度。这一发现深刻改变了人们对网络初始化的认知,也催生了 Pruning at Initialization (PaI) 这一全新研究方向。
2021 年的重要综述:JMLR 的 Sparsity in Deep Learning 和 arXiv 的 Efficient Deep Learning: A Survey on Making Deep Learning Models Smaller, Faster, and Better 全面梳理了从 2017 到 2021 年间的技术进展,是进入这一领域的最佳入门读物。
蒸馏的核心思想是:用一个参数量大、精度高的大模型(Teacher)指导一个小模型(Student)学习,使得 Student 在保持轻量的同时接近 Teacher 的表现。
开创者 Ba & Caruana(2014)最早提出用 logits(softmax 前的原始输出)作为知识载体,让学生网络学习教师网络的预测分布。Hinton 等人(2015)在此基础上引入 Temperature Scaling(温度缩放),大幅提升了蒸馏效果,这也成为此后几乎所有蒸馏方法的标配。
CVPR 2020 的代表性工作:Explaining Knowledge Distillation by Quantifying the Knowledge 深入分析了蒸馏过程中究竟哪些知识被迁移;DeepInversion 提出了无需原始训练数据的蒸馏方法;Self-training with Noisy Student improves ImageNet classification 则将蒸馏与半监督学习结合,刷新了 ImageNet 准确率记录。
2021 年的里程碑:Knowledge Distillation: A Survey(IJCV)发表了长达 62 页的系统性综述,涵盖了从 2014 年到 2021 年蒸馏技术的完整演进。ReviewKD(CVPR 2021)提出的多层次知识回顾机制让蒸馏效率显著提升。
量化通过降低权重和激活值的表示精度(从 32 位浮点降至 16 位、8 位甚至 1-2 位)来压缩模型体积并加速推理。
Binary Connect(NIPS 2015)开创性地将权重二值化(+1/-1),配合专用硬件可将乘法运算替换为位运算,理论上实现 32 倍加速。DoReFa-Net(2016)进一步将激活值也进行低位宽量化。TWNs/TBN(2016-2017)解决了二值网络中精度下降严重的问题,通过引入真值权重的缩放因子来弥补表达能力损失。
混合精度量化:不同层对量化敏感度不同,Mixed Precision Training(ICLR 2018)和 HAQ: Hardware-Aware Automated Quantization(CVPR 2019)通过自动化方法为每层分配合适的位宽。LSQ(NeurIPS 2019)提出的可学习量化步长方法成为此后许多量化工作的基础。
低秩分解的核心思想是将大矩阵近似为多个小矩阵的乘积,从而降低存储和计算复杂度。
CP 分解(Jaderberg et al., BMVC 2014)将卷积核分解为多个一维卷积的组合,在 CPU 上实现了 4~8 倍的加速。Tensor Ring 分解(CVPR 2018 Wide Compression)则将低秩分解推广到了更高维的张量场景,解决了参数化能力下降的问题。
NAS 旨在自动搜索最优网络架构,是 AutoML 领域的核心研究方向。
2016 年的开创:Google Brain 的 Neural Architecture Search with Reinforcement Learning 首次用强化学习控制器(RNN)来生成网络描述字符串,开辟了 NAS 这一新领域。但其计算代价极高——需要 800 个 GPU 运行近一个月。
2018-2019 年的高效化浪潮:Progressive Neural Architecture Search(PNAS)用渐进式搜索策略将计算量降低了 8 倍;ENAS(Efficient NAS)通过参数共享将 NAS 的计算代价降低到单卡可承受范围;DARTS(ICLR 2019)提出的可微分架构搜索将 NAS 推向了新的高度,成为后续大量工作的基础框架。
虽然 EfficientDNNs 是一个论文合集而非代码项目,但其 README 本身就是一个半结构化的学术数据库。作者为每篇论文标注了:
这种标注方式让读者能够一键跳转代码实现,极大地降低了从论文到可运行代码的转化成本。项目结构极度简洁——仅有 README.md、LICENSE 和 .gitignore 三个文件,README 本身即是最核心的资产。
纯文献性质,无可运行代码:这是 EfficientDNNs 区别于其他 AI 项目的根本特征。它是一份导航地图,不是可以直接 git clone 后跑起来的项目。
缺乏代码实现和复现指引:README 虽然附带了部分代码链接,但作者并不对这些链接的可用性负责,也缺少统一的复现脚本或环境配置说明。
适合作为研究起点而非生产参考:对于想系统了解模型压缩五大方向演进历程的研究者,这是绝佳资源;但对于想在生产环境中部署具体压缩算法的工程师,建议从各子领域的专用代码库入手(如 liuzhuang13/slimming、Hugging Face 的量化工具等)。
从 1989 年到 2022 年,DNN 压缩技术经历了从"手工调参"到"自动搜索"、从"单点突破"到"系统工程"的深刻转变。当前有三大趋势值得关注:
趋势一:剪枝与 NAS 的深度融合。传统剪枝是"训完再剪"的后处理,而 Lottery Ticket Hypothesis 证明了"从零开始找到稀疏子网络"的可能性,这启发了 PaI(Pruning at Initialization)这一新方向,让剪枝从优化步骤变成了架构发现的手段。
趋势二:知识蒸馏从"模型压缩"走向"跨模态迁移"。早期的蒸馏主要用于将大模型压缩为小模型,而 2020 年以后的工作越来越多地将蒸馏用于跨任务迁移、无数据学习、多模态对齐等更广泛的场景。
趋势三:硬件-算法协同设计成为主流。单一的算法改进若不能转化为硬件收益就难以落地。TVM、NCNN、MNN 等推理引擎与量化剪枝算法的协同优化,是未来落地的关键路径。
EfficientDNNs 收录的 800 篇论文,正是这一波澜壮阔技术演进史的最佳见证。