Skip to main content
QUICK REVIEW

[论文解读] Functionality-Oriented Convolutional Filter Pruning

Zhuwei Qin, Fuxun Yu|arXiv (Cornell University)|Oct 12, 2018
Advanced Neural Network Applications参考文献 29被引用 10
一句话总结

该论文提出了一种面向功能的卷积滤波器剪枝方法,通过识别并移除基于其学习到的特征偏好(以激活最大化可视化)的冗余滤波器,而非依赖权重大小。通过将具有相似功能的滤波器聚类,并剪枝每簇中贡献最小的滤波器,该方法在仅导致小于0.34%的精度下降且对微调依赖性极低的情况下,实现了高达68.88%的FLOPs减少,优于传统的基于权重排名的方法。

ABSTRACT

The sophisticated structure of Convolutional Neural Network (CNN) allows for outstanding performance, but at the cost of intensive computation. As significant redundancies inevitably present in such a structure, many works have been proposed to prune the convolutional filters for computation cost reduction. Although extremely effective, most works are based only on quantitative characteristics of the convolutional filters, and highly overlook the qualitative interpretation of individual filter's specific functionality. In this work, we interpreted the functionality and redundancy of the convolutional filters from different perspectives, and proposed a functionality-oriented filter pruning method. With extensive experiment results, we proved the convolutional filters' qualitative significance regardless of magnitude, demonstrated significant neural network redundancy due to repetitive filter functions, and analyzed the filter functionality defection under inappropriate retraining process. Such an interpretable pruning approach not only offers outstanding computation cost optimization over previous filter pruning methods, but also interprets filter pruning process.

研究动机与目标

  • 为解决基于权重大小的滤波器剪枝方法在功能可解释性方面不足且微调成本过高的局限性。
  • 探究滤波器冗余是否主要源于功能重复,而非仅权重大小。
  • 通过识别并移除功能上冗余的滤波器,开发一种保持模型功能完整性的同时实现剪枝的方法。
  • 通过确保被剪枝的滤波器在功能上真正冗余(而非仅权重大小),减少对大规模微调的依赖。

提出的方法

  • 使用激活最大化生成能最大程度激活每个卷积滤波器的输入模式,揭示其功能偏好。
  • 通过可视化这些模式,识别出具有相似特征偏好的滤波器簇,表明功能冗余。
  • 按层将滤波器分组为功能簇,并在每簇中识别出贡献最小的滤波器进行移除。
  • 基于簇内功能贡献进行剪枝,而非依赖绝对权重大小。
  • 剪枝后仅进行极少的微调,因为模型的功能完整性得以保持。
  • 通过微调过程中滤波器功能演变的定性分析,验证剪枝决策的合理性。

实验结果

研究问题

  • RQ1卷积神经网络中的冗余滤波器是否主要源于功能重复,而非低权重大小?
  • RQ2在剪枝前通过解释滤波器功能,能否使剪枝更有效且更准确?
  • RQ3基于权重大小的剪枝是否在微调过程中损害原始模型的功能完整性?
  • RQ4当剪枝由功能相似性而非权重大小引导时,微调工作量能减少到何种程度?
  • RQ5在不同数据集和网络架构下,基于功能的剪枝与传统方法在FLOPs减少和精度保持方面有何对比?

主要发现

  • 在CIFAR-10上,该方法使ResNet-56的FLOPs减少了43%,VGG-16减少了44.1%,相对精度分别提升了0.05%和0.72%。
  • 在CIFAR-100上,该方法使VGG-16的FLOPs减少了37.2%且精度无损失,同时在ImageNet-100上实现了1%的精度提升。
  • 在ImageNet-10上,该方法使VGG-16的FLOPs减少了50.64%且精度提升1%,使ResNet-32的FLOPs减少了23.8%且精度无下降。
  • 所提出的方法显著减少了微调工作量,在100次迭代内即恢复至接近原始精度,而ℓ₁-范数剪枝方法仍保持约3%的差距。
  • 滤波器功能可视化显示,ℓ₁-范数剪枝在微调过程中引起显著的功能变化,而所提方法则保持了滤波器功能的稳定性。
  • 本研究证明,功能冗余——而不仅仅是权重大小——才应成为有效且高效滤波器剪枝的基础。

更好的研究,从现在开始

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

无需绑定信用卡

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