Skip to main content
QUICK REVIEW

[论文解读] Efficient Inference of CNNs via Channel Pruning

Boyu Zhang, Azadeh Davoodi|arXiv (Cornell University)|Aug 8, 2019
Advanced Neural Network Applications参考文献 28被引用 9
一句话总结

本文提出了一种基于枢轴QR分解的通道剪枝方法,通过识别并移除卷积层中的冗余输入通道,高效地减少了CNN的FLOPs。该方法在VGG-16上实现了高达4.29倍的计算量减少,在ResNet-50上实现了2.84倍的减少,同时仅造成约1.4%的top-5准确率下降,在效率与准确率的权衡上优于先前的方法。

ABSTRACT

The deployment of Convolutional Neural Networks (CNNs) on resource constrained platforms such as mobile devices and embedded systems has been greatly hindered by their high implementation cost, and thus motivated a lot research interest in compressing and accelerating trained CNN models. Among various techniques proposed in literature, structured pruning, especially channel pruning, has gain a lot focus due to 1) its superior performance in memory, computation, and energy reduction; and 2) it is friendly to existing hardware and software libraries. In this paper, we investigate the intermediate results of convolutional layers and present a novel pivoted QR factorization based channel pruning technique that can prune any specified number of input channels of any layer. We also explore more pruning opportunities in ResNet-like architectures by applying two tweaks to our technique. Experiment results on VGG-16 and ResNet-50 models with ImageNet ILSVRC 2012 dataset are very impressive with 4.29X and 2.84X computation reduction while only sacrificing about 1.40\% top-5 accuracy. Compared to many prior works, the pruned models produced by our technique require up to 47.7\% less computation while still achieve higher accuracies.

研究动机与目标

  • 为解决在移动和嵌入式系统等资源受限设备上部署大型CNN时面临的高计算、内存和能耗成本问题。
  • 开发一种结构化剪枝方法,通过移除整个通道而非单个权重,实现高效的软硬件加速。
  • 通过针对网络结构的改进,探索在残差网络中实现更深层次剪枝的机会。
  • 与先前的剪枝技术相比,实现更优的模型效率(FLOPs)与准确率之间的权衡。
  • 提供一种灵活且正交的技术,可与量化、低秩近似等其他压缩方法结合使用。

提出的方法

  • 该方法将通道剪枝建模为子集选择问题:通过枢轴QR分解,高效地近似最优通道集合,选择最能保留层输出的输入通道子集。
  • 枢轴QR分解通过基于列对激活矩阵列空间的贡献进行排序,实现高效且贪婪的最具信息量输入通道选择。
  • 该算法按层逐层应用,通过敏感性分析确定剪枝上限——对于敏感层,剪枝比例最高可达40%,以保持准确率。
  • 引入两种架构改进,以利用ResNet类网络中的跳跃连接,通过考虑残差路径的相互作用,实现更激进的剪枝。
  • 剪枝后,对模型进行微调以恢复准确率,且该方法与现有深度学习框架和硬件加速器兼容。
  • 该方法与其他压缩技术正交,可与量化、低秩近似和权重剪枝等技术结合,进一步提升效率。

实验结果

研究问题

  • RQ1枢轴QR分解能否有效用于识别并移除CNN层中的冗余输入通道,同时保持模型性能?
  • RQ2与先前的结构化剪枝技术相比,该剪枝方法在FLOP减少和准确率保留方面表现如何?
  • RQ3通过架构感知的修改,能否显著提升残差网络中的剪枝机会?
  • RQ4理论FLOP减少与GPU和嵌入式平台上的实际推理性能之间,实际加速差距有多大?
  • RQ5在多种剪枝技术中,计算成本与准确率的权衡如何比较?该方法能否在设计空间中提供更优的平衡点?

主要发现

  • 所提方法在VGG-16上实现了4.29倍的FLOPs减少,同时仅造成1.40%的top-5准确率下降,显著优于先前方法在效率-准确率权衡上的表现。
  • 在ResNet-50上,该方法实现了2.84倍的FLOP减少,top-1准确率下降2.50%,其计算量比ThiNet及其他先前工作最多减少47.7%,同时保持更高的准确率。
  • 与Soft Filter Pruning (SFP)和Pruning Filters (PF)相比,剪枝后的模型FLOPs减少了11.7%至39.6%,尽管top-5准确率有0.17%至1.18%的轻微下降。
  • 在GTX 1080Ti GPU上的实际加速比为1.87倍(VGG-16)和1.57倍(ResNet-50),表明理论与实际性能之间存在差距,主要受GPU缓存和内存访问影响。
  • 该方法在多个基准测试中表现优异:除CP外,其计算量低于所有其他方法,且在大多数情况下实现了更高的top-1/top-5准确率。
  • 该技术具有高度灵活性,可与量化、低秩近似等其他压缩技术结合使用,进一步提升模型部署的效率。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。