滤波剪枝还是层剪枝,这是个问题
计算机视觉与模式识别
2020-11-10 v3
摘要
神经网络剪枝的近期进展使得移除大量滤波器或权重而不引起可感知的精度下降成为可能。参数量和FLOPs通常是衡量剪枝模型质量的报告指标。然而,由于延迟测量的复杂性,这些剪枝模型在速度上的收益在文献中常被忽视。在本文中,我们展示了滤波剪枝方法在延迟降低方面的局限性,并提出了LayerPrune框架。LayerPrune提出了一组基于不同准则的层剪枝方法,在相似精度下比滤波剪枝方法实现更高的延迟降低。层剪枝相对于滤波剪枝在延迟降低上的优势源于前者不受原始模型深度的约束,从而允许更大范围的延迟降低。对于我们考察的每种滤波剪枝方法,我们以一次性方式使用相同的滤波器重要性准则计算逐层重要性分数。随后我们剪除最不重要的层,并对更浅的模型进行微调,其获得与基于滤波器的剪枝对应方法相当或更好的精度。这一一次性过程允许在微调前从如VGG之类的单路径网络中移除层,而不像迭代滤波剪枝那样,每层需要最少数量的滤波器以保证数据流,这限制了搜索空间。据我们所知,我们首次考察了多种网络、数据集和硬件目标下剪枝方法对延迟指标而非FLOPs的影响。LayerPrune还在ImageNet数据集上相似延迟预算下,分别比手工架构Shufflenet、MobileNet、MNASNet和ResNet18高出7.3%、4.6%、2.8%和0.5%。
引用
@article{arxiv.2007.05667,
title = {To Filter Prune, or to Layer Prune, That Is The Question},
author = {Sara Elkerdawy and Mostafa Elhoushi and Abhineet Singh and Hong Zhang and Nilanjan Ray},
journal= {arXiv preprint arXiv:2007.05667},
year = {2020}
}