CVPR 2020 Oral | 不引入约束,浮点运算和参数量显著减少,纪荣嵘教授团队提出基于高秩特征图的滤波器剪枝方法

简介: 现有的剪枝算法仍存在训练效率低和人工成本高的问题,这主要是由于缺少对网络中不显著成分的理论指导。在一篇 CVPR 2020 Oral 论文中,来自厦门大学纪荣嵘教授团队的研究者提出了一种新的基于高秩特征图的滤波器剪枝方法(HRank)。在不引入任何附加约束的情况下,与其他精度相似的现有算法相比,HRank 在浮点计算量和参数量上有了显著减少。

1.jpg



HRank 的灵感来自于这样一个发现:无论 CNN 接收的图像批数是多少,由单个滤波器生成的多个特征图的平均秩总是相同的。在 HRank 的基础上,研究者还提出了一种针对低秩特征图所对应滤波器进行剪枝的算法。剪枝的原理是低秩特征图包含的信息较少,因此剪枝后的结果可以很容易地再现。


 引言


尽管剪枝领域已经诞生了许多优秀的工作,但其中仍然存在着许多开放的问题:一方面我们追求更高的压缩率和加速比,另一方面我们又受到繁重的机器训练时间和人力成本的限制。对此,厦门大学媒体分析与计算实验室等机构的研究者认为,该问题可以归因于缺乏关于滤波器重要性和冗余的实用与理论指导。 因此,他们提出了 HRank,用于对剪枝进行更有效的指导。这是一个基于属性重要性的滤波器剪枝方法,它不需要引入额外的辅助约束或重新训练模型,从而简化了剪枝的复杂性。


 同时,通过实验和定量观察,研究者发现无论 CNN 接受多少数据,由单个滤波器生成的特征图的平均秩总是相同的。结果表明,利用数据集中的一小部分图像,就可以准确、高效地估计出 CNN 中特征图的秩。 本文贡献主要有三点: (1)实验表明,由单个滤波器生成的特征图的平均秩几乎不变;(2)从数学上证明了低秩特征图所对应的滤波器信息量较小,因此对保持模型精度作用较小,可以优先剪去;(3)展示了 HRank 在模型压缩和加速方面的高效和有效性。


 算法


剪枝框架


2.jpg

研究者对模型的训练可分为三个阶段,分别是特征图生成阶段、滤波器选择阶段以及微调阶段。 在第一阶段,他们将部分图像输入模型,得到各个滤波器对应的特征图;接下来,根据得到的特征图,计算每个滤波器对应的秩,作为滤波器选择的准则;最后,根据上一阶段的选择结果,剪去上图中红色部分的滤波器,并对修剪后的模型进行微调,得到最终的结果。


理论解释


本文中利用特征图的秩作为信息的有效度量和输入图像分布的稳定表示,其公式如下: 

3.jpg

为了在理论上说明该观点的有效性,如下所示,他们对特征图进行了奇异值分解:

4.jpg


如上,可以将其分解为一个秩较低的特征图和一些附加信息,这表明了高秩特征图相比低秩特征图确实包含了更多的信息,对于模型有更大的贡献。


算法优化


5.jpg

他们通过实验观察到,单个滤波器产生的秩的期望对于输入图像的个数是鲁棒的,这意味着方差可以忽略不计。因此,可以使用少量输入图像来精确估计特征图秩的期望值。


剪枝流程


6.jpg


首先,计算某个特征图的秩的平均,对这些秩进行降序排列;然后,确定某一卷积层的待保留滤波器数量和待修剪滤波器数量,其实也就是确定卷积层对应的压缩率;最后,根据计算得到的秩,从所有滤波器中筛选出秩较高的那些,从而建立剪枝后的模型。


实验


实验设置


研究者在 CIFAR-10 和 ImageNet 两个数据集上进行了实验,使用 VGGNet、GoogLeNet、ResNet 和 DenseNet 作为 Baseline 模型,以测试本文方法对于各种结构的适用性。另外,在实验中,研究者随机抽取 500 张图像来估计每个特征图的平均秩。

7.jpg

他们的剪枝方式如上图所示,值得注意的是,对于 Inception 结构的 3x3 和 5x5 分支,他们只对 3x3 的卷积层进行剪枝。


CIFAR-10实验结果


8.jpg

9.jpg


研究者在 CIFAR-10 数据集的 VGG-16、GoogLeNet、ResNet56/110 和 DenseNet-40 共 5 个模型上验证了算法的性能,并与其他前沿剪枝算法进行了比较。可见,HRank 对于各种结构的神经网络都有较出色的压缩与加速能力。


ImageNet 实验结果


10.jpg

他们还在更具有挑战性的 ImageNet 数据集上对 ResNet-50 进行了实验。由上图可见,HRank 在各个方面基本上都超过了其他方法,包括 Top1 和 Top5 的精度,以及 FLOPs 和参数的减少量。


消融实验


研究者构造了 HRank 的 3 个变种来证明用特征图的秩来决定滤波器这一思想的恰当性,3 个变种分别是:Edge(同时剪去低秩和高秩特征图所对应的滤波器)、Random(随机裁剪滤波器)和 Reverse(剪去低秩特征图所对应的滤波器),实验结果如下图所示: 


11.jpg

可见,HRank 优于它的其它变种,而 Edge 又是变种中效果最优的,通过对该结果的分析,可以发现高秩特征图所对应的滤波器确实更优,这与上文的讨论也相互印证。

相关文章
|
6月前
|
机器学习/深度学习 人工智能 运维
[ICLR2024]基于对比稀疏扰动技术的时间序列解释框架ContraLSP
《Explaining Time Series via Contrastive and Locally Sparse Perturbations》被机器学习领域顶会ICLR 2024接收。该论文提出了一种创新的基于扰动技术的时间序列解释框架ContraLSP,该框架主要包含一个学习反事实扰动的目标函数和一个平滑条件下稀疏门结构的压缩器。论文在白盒时序预测,黑盒时序分类等仿真数据,和一个真实时序数据集分类任务中进行了实验,ContraLSP在解释性能上超越了SOTA模型,显著提升了时间序列数据解释的质量。
|
6月前
|
数据可视化 Java 数据挖掘
R语言Fama-French三因子模型实际应用:优化投资组合
R语言Fama-French三因子模型实际应用:优化投资组合
|
6月前
R语言动量和马科维茨Markowitz投资组合(Portfolio)模型实现
R语言动量和马科维茨Markowitz投资组合(Portfolio)模型实现
|
6月前
|
机器学习/深度学习 自然语言处理 算法
【论文精读】COLING 2022 -带有对偶关系图注意力网络的事件检测模型
【论文精读】COLING 2022 -带有对偶关系图注意力网络的事件检测模型
|
机器学习/深度学习 算法 计算机视觉
多目标跟踪算法(最近邻NN)(全局最近邻GNN)(概率数据关联PDA)(联合概率数据关联JPDA)的学习
多目标跟踪算法(最近邻NN)(全局最近邻GNN)(概率数据关联PDA)(联合概率数据关联JPDA)的学习
多目标跟踪算法(最近邻NN)(全局最近邻GNN)(概率数据关联PDA)(联合概率数据关联JPDA)的学习
|
算法 数据挖掘 调度
数据驱动的两阶段分布鲁棒(1-范数和∞-范数约束)的电热综合能源系统研究(Matlab代码实现)
数据驱动的两阶段分布鲁棒(1-范数和∞-范数约束)的电热综合能源系统研究(Matlab代码实现)
141 0
|
存储 人工智能 算法
鲁棒优化入门(4)-两阶段鲁棒优化及行列生成算法(C&CG)超详细讲解
        鲁棒优化是应对数据不确定性的一种优化方法,但单阶段鲁棒优化过于保守。为了解决这一问题,引入了两阶段鲁棒优化(Two-stage Robust Optimization)以及更一般的多阶段鲁棒优化,其核心思想是将决策问题分为两个阶段。第一阶段是进行初步决策,第二阶段是根据第一阶段的决策结果制定更好的决策策略,应对数据不确定性的影响。这种方法可以降低保守性,提高鲁棒性。
|
计算机视觉
Shunted Self-Attention | 源于 PvT又高于PvT,解决小目标问题的ViT方法(二)
Shunted Self-Attention | 源于 PvT又高于PvT,解决小目标问题的ViT方法(二)
91 0
|
机器学习/深度学习 并行计算 计算机视觉
Shunted Self-Attention | 源于 PvT又高于PvT,解决小目标问题的ViT方法(一)
Shunted Self-Attention | 源于 PvT又高于PvT,解决小目标问题的ViT方法(一)
244 0
|
机器学习/深度学习 编解码 人工智能
ECCV 2022 | 清华&Meta提出HorNet,用递归门控卷积进行高阶空间相互作用(1)
ECCV 2022 | 清华&Meta提出HorNet,用递归门控卷积进行高阶空间相互作用
下一篇
无影云桌面