基于高阶奇异值分解的高效滤波器剪枝方法

背景介绍

网络剪枝(Network Pruning)是设计高效卷积神经网络(CNNs)模型的重要技术。其通过减少内存占用和计算要求,同时保持或提高总体性能,使得在资源受限设备(如手机或嵌入式系统)上部署CNNs变得可行。当前的假设是许多模型参数过多,即包含大量不必要或冗余的参数,剪枝这些冗余参数可以生成更小且更高效的模型,这不仅适用于资源受限设备,还可以在某些情况下提高模型的泛化能力。

现有的剪枝方法中,滤波器剪枝(Filter Pruning)和权重剪枝(Weight Pruning)都是流行的技术。权重剪枝是一种非结构化剪枝,指根据个别权重的重要性对其进行剪枝而不考虑任何特定的结构或模式。而滤波器剪枝则是结构化剪枝方法的一种,它依据某些标准对整个滤波器进行剪枝,同时保持网络的整体结构。

早期的滤波器选择方法仅通过测量单个滤波器自身的信息来确定其重要性,但忽略了滤波器间的相关性,导致较高的冗余。最近的一些进展显示,利用滤波器/特征图之间的相关性或相似性来剪除冗余滤波器能带来显著益处,因为相似滤波器可能生成重复的特征,这种冗余可以在后续的微调过程中进行补偿。尽管取得了可观的结果,许多最先进的方法仍存在一些未得到完全解决的局限性,如在计算滤波器相似性时,将三阶张量滤波器展平为二维矩阵或一维向量,这可能会导致空间或时间信息的损失。

文章来源

这篇名为《Efficient Tensor Decomposition-Based Filter Pruning》研究论文由Van Tien Pham、Yassine Zniyed和Thanh Phuong Nguyen撰写,均隶属于位于法国的Université de Toulon、Aix Marseille University、CNRS、LIS。文章刊登于《Neural Networks》期刊。论文的接收日期是2023年10月12日,修订日期为2024年2月16日,接受日期为2024年5月15日。

研究细节

工作流程

文章提出了一种新的滤波器剪枝方法 CORING(Efficient Tensor Decomposition-Based Filter Pruning),基于张量分解方法进行滤波器剪枝。具体步骤如下:

  1. 滤波器分解:使用高阶奇异值分解(HOSVD)将每一层的滤波器分解为低秩表示,保持滤波器的多维结构及其关键信息。
  2. 相似性度量:通过计算两个滤波器的低秩表示之间的距离,构建相似性矩阵。这一过程避免了直接使用完整滤波器或其重塑版本。
  3. 滤波器选择:基于相似性矩阵,采用一种考虑集体重要性的算法,迭代删除与其他滤波器最相似的滤波器,直到达到预定的稀疏目标。
  4. 剪枝策略:提出了一种k-shots剪枝策略,通过多轮次的剪枝和微调实现更高的精度控制。

主要结果

实验在各种体系结构和数据集上进行了广泛验证,包括图像分类、目标检测、实例分割和关键点检测等任务。主要结果如下:

  • 在CIFAR-10数据集上的VGG-16-BN模型,Coring方法在减少81.6%的参数和58.1% MAC操作的情况下,精度从93.96%提升到了94.42%。
  • 对于ResNet-56模型,Coring方法在减少22.4%的参数和27.3% MAC操作的条件下,精度从93.26%提升到了94.76%。
  • 在ImageNet数据集上的ResNet-50模型,Coring在实现40.8%参数和44.8% MAC操作减少的同时,精度从76.15%提高到了76.78%。

结论和意义

Coring 方法通过引入多维张量分解和创新的滤波器相似性度量方法,实现了有效的网络结构化剪枝。其主要贡献包括:

  1. 引入张量分解(尤其是HOSVD)进行滤波器剪枝:有效减少了复杂度,同时保持滤波器的多维结构。
  2. 提供简单且高效的滤波器选择方法:基于HOSVD分解的表示进行距离计算,避免了直接使用完整滤波器或者其重塑版本。
  3. 展示了在多个计算机视觉任务中的有效性:通过大量实验证明了Coring在准确性、参数减少和MAC操作减少等方面的优越性。

亮点

  • 创新的张量分解方法:Coring通过保持滤波器的多维结构提供低秩近似,显著减少复杂度。
  • 高效的相似度计算方法:新颖而通用的方法通过HOSVD提供的低秩近似计算滤波器相似性,不纠结于使用完整滤波器或重塑版本。
  • 广泛验证和优越表现:在多个不同架构和数据集上的广泛实验验证了该方法的有效性和优越性。

总结

Coring作为一种基于张量分解的有效滤波器剪枝新方法,通过保持滤波器的多维结构及其关键信息,实现在多个计算机视觉任务中的优越性能,展示了其在模型压缩领域的显著潜力和广泛应用价值。同时,新提出的k-shots策略在保持高精度的前提下,为模型剪枝提供了一种灵活的方法。