《Pattern Recognition》:IPPKD: An Iterative Pruning method with Prompt Knowledge Distillation
编辑推荐:
•本文提出了一种新的迭代剪枝算法——IPPKD,该算法将迭代剪枝与基于提示的知识蒸馏相结合,从而自动实现高性能与高压缩比之间的有效平衡。通过大量实验验证了所提方法的有效性。•本文提出的基于提示的知识蒸馏方法使得学生模型能够在不增加参数数量或计算复杂度的情况下模拟关联推理与学习过程
- •
本文提出了一种新的迭代剪枝算法——IPPKD,该算法将迭代剪枝与基于提示的知识蒸馏相结合,从而自动实现高性能与高压缩比之间的有效平衡。通过大量实验验证了所提方法的有效性。
- •
本文提出的基于提示的知识蒸馏方法使得学生模型能够在不增加参数数量或计算复杂度的情况下模拟关联推理与学习过程,进而进一步提升其学习能力。
- •
本文引入了一种迭代剪枝策略,该策略使模型能够在逐步接近目标剪枝目标的同时,持续减少FLOPs和参数数量,从而实现全面剪枝。
引言
作为模式识别领域中不可或缺的子领域,计算机视觉广泛采用了深度卷积神经网络(DCNNs)。由于其独特的优势,DCNNs在图像分类[1]、物体检测[2]以及语义分割[3]等众多视觉任务中均表现出色。然而,由于DCNNs具有大量的参数以及较高的计算开销,这严重限制了它们在资源有限的边缘设备上的实际应用,比如嵌入式系统和移动设备。因此,研究人员在神经网络压缩与加速领域做出了诸多努力。
作为网络压缩技术之一,剪枝已被广泛研究。剪枝可应用于卷积核的不同维度,以去除冗余权重。剪枝可分为非结构化剪枝和结构化剪枝两类。虽然非结构化剪枝通常能取得不错的性能,但它会在卷积核中引入不规则的稀疏模式,这使得其在主流边缘设备上的高效部署变得困难。相比之下,结构化剪枝能够生成更适于在边缘设备上部署的、符合硬件特性的规则架构;不过,它往往难以在准确性和FLOPs之间找到平衡。如图1所示,在FLOPs较低的情况下,经过剪枝的模型的准确性往往无法恢复到理想状态。此外,我们还发现一个问题:那些直接压缩到目标FLOPs的剪枝方法并不能保证参数数量的减少,也无法确保模型的性能。
知识蒸馏(KD)[4]、[5]、[6]的应用则有助于保障模型的性能。KD的核心思想是将教师模型中的“隐藏”知识传递给学生模型。因此,人们自然而然地想到将剪枝与KD相结合,以此帮助经过剪枝的模型在高压缩率下仍能保持较低的精度损失。例如,有研究提出了通道门控方法[7],该方法旨在探索特征的空间结构,从而在降低DCNNs的计算成本和参数数量的同时,结合KD方法来维持剪枝后网络的准确性。在另一项研究中[8],剪枝过程中的微调步骤被KD替代,同时采用了三种KD策略来训练剪枝后的网络。Park等人[9]则提出了一种名为“先剪枝再蒸馏”的新框架,该框架首先对教师模型进行剪枝以降低其规模,从而便于将知识传递给学生模型。尽管上述方法都取得了优异的性能,证明了这一方法的可行性,但它们却无法有效引导经过剪枝的学生模型捕获关键的结构信息及与任务相关的知识,这也限制了现有KD策略在应用于剪枝后的DCNNs时的效果。
为此,我们提出了一种结合结构化剪枝与KD的方法——IPPKD,旨在提升模型压缩效率并保障模型性能。IPPKD的核心包含四种方法:MIFS、AP、PKD和IP。首先,MIFS用于最大化模型输入与输出之间的信息流,从而在微调之前确保模型的性能。接着,AP会根据MIFS的结果,在当前迭代次数及约束条件下自动搜索最优的剪枝比例。随后,PKD通过设计两个额外的核心模块——提示生成模块和提示投影模块——在不增加模型额外开销的情况下,模拟关联与学习过程,提升学生模型的学习效率,并确保剪枝后的模型性能。最后,IP具有双重作用:其一,它允许模型逐步实现最终的FLOPs目标,而非一次性完成;其二,与直接剪枝相比,它能在优化单一目标(即控制FLOPs)的同时,隐式地减少更多参数。
本文的主要贡献如下。
- •
我们提出了IPPKD,该算法能够自动找到高压缩率与良好准确性之间的平衡点。此外,已在多种DCNN架构上验证了IPPKD的有效性及其泛化能力。
- •
MIFS与AP的协同作用不仅能在微调之前保障模型性能,还能在当前约束条件下自适应地搜索最优的剪枝比例。
- •
PKD无需增加额外开销,就能在微调后保障模型的性能。这是通过让学生模型借助两个核心模块来模拟关联与学习过程实现的。
- •
IP的引入使得模型能够在不断减少FLOPs和参数数量的同时逐步实现最终的剪枝目标,最终实现全面剪枝。
各部分要点
相关工作
本节将探讨关于剪枝、知识蒸馏以及二者结合方法的相关研究。
方法论
本节将介绍我们所提出的IPPKD框架,该框架由MIFS、AP、PKD和IP四部分组成。IPPKD的框架结构如图2所示,其工作流程如图3所示。以下是对每种方法的详细说明。
实验分析
本节首先介绍具体的实验实施细节。接着,我们使用CIFAR-10 [43]和ImageNet [44]数据集来验证IPPKD的性能,并将其与多种DCNN模型(即VGG-16 [1]、ResNet-32 [35]、ResNet-56 [35]和ResNet-50 [35])上的最先进方法进行比较。之后,我们进一步验证了IPPKD中IP和PKD模块的有效性。最后,在Raspberry Pi 5设备上评估了IPPKD的实际加速性能。
结论
本文提出了用于轻量化DCNN模型压缩的IPPKD方法。IPPKD由MIFS、AP、PKD和IP四部分构成。首先,MIFS是一种优化目标,用于确保模型实现最大的输入输出信息流。接着,AP会在当前约束条件下自动搜索最优的剪枝比例,从而实现剪枝目标。由于很难保证剪枝后模型的性能,因此需要使用PKD对剪枝后的模型进行进一步优化。作为辅助过程,PKD
CRediT作者贡献声明
杨丽:论文初稿撰写。王磊军:资源协调与项目管理。陶晓明:论文审阅与编辑。
资金支持
本研究得到了国家科技重大专项 2022ZD0115802的支持。
利益冲突声明
作者声明不存在任何可能影响本文研究成果的已知利益冲突或个人关系。
杨丽|王磊军|陶晓明