AI 科技评论按:百度关于网络压缩和加速的论文《 Filter Pruning via Geometric Median for Deep Convolutional Neural Networks Acceleration》被 CCF A 类学术会议 CVPR 2019 收录为 Oral 论文,这篇论文提出了新的基于滤波器的几何中心(geometric median)的剪枝算法,来对神经网络进行压缩和加速。本文是论文作者之一何洋为 AI 科技评论提供的论文解读。
论文地址: https://arxiv.org/pdf/1811.00250.pdf
Github 地址: https://github.com/he-y/filter-pruning-geometric-median
卷积神经网络(CNN)通常通过更深和更宽的结构实现了更好的性能,但是当神经网络需要部署到移动设备时,神经网络需要的资源远远超过了移动设备的限制。例如,ResNet-152拥有6020万个参数,需要231MB存储空间;此外,它还需要超过380MB的内存和11.3亿浮点运算(在CPU上耗时6秒钟)来处理单张图像。因此,我们需要找到高效率的模型来满足移动设备的需要。
网络剪枝是网络的压缩和加速中一个重要的方向,自1989年LeCun提出以来,得到了迅速发展。现在主要分为2种方向:1)权重剪枝;2)滤波器剪枝。滤波器剪枝相对于权重剪枝有一系列优点,包括它可以得到规则的模型,由此减少内存消耗,并且加速网络的推断。
图1:滤波器剪枝
上图是典型的滤波器剪枝的流程。现有的方法认为滤波器的范数(p-norm)越小,相对应的特征图越接近于0,于是对网络对贡献越小,那么这些滤波器可以去掉而不会严重影响网络的性能。于是我们用滤波器的p-norm进行重要性排序,并且删除p-norm小的滤波器。
图2:范数评价指标的条件
上述的范数评价指标,实际上包含了两个隐含条件(图2):1)范数标准差足够大;2)最小的范数接近于0。
图3:滤波器范数分布可能出现的情况
但是实际的滤波器范数分布也会出现不满足上述条件的情况(图3),1)范数的标准差太小;2)最小范数的值仍然很大。如果出现情况1,很多滤波器有相似的重要性,我们不知道到底应该去掉哪个。如果出现情况2,我们很难找到特征图越接近于0的滤波器。
图4:实际的滤波器范数分布
我们通过分析实际的预训练网络(图4),发现这些网络确实出现了上述的情况。
图5 基于范数和几何中心的评价指标
几何中心(Geometric Median, GM)的定义:
https://baike.baidu.com/item/%E5%BD%A2%E5%BF%83
图6:几何中心
几何中心是对于欧几里得空间的点的中心的一个估计。我们认为滤波器也是欧氏空间中的点,于是我们可以根据计算GM来得到这些滤波器的“中心”,也就是他们的共同性质。如果某个滤波器接近于这个GM,可以认为这个滤波器的信息跟其他滤波器重合,甚至是冗余的,于是我们可以去掉这个滤波器而不对网络产生大的影响。去掉它后,它的功能可以被其他滤波器代替。
图7:基于几何中心的滤波器评价指标
由此我们得到一种跟范数无关的滤波器评价方法FPGM,打破了范数评价指标的局限性。
· 4. 实验 ·
在Cifar-10数据集上,FPGM在ResNet-110上的计算量降低了52%以上,相对精确度提高了2.69%。此外,在ILSVRC-2012数据集上,FPGM还在ResNet-101上减少了超过42%的计算量。
图8:ResNet on CIIFAR-10实验结果
图9:ResNet on ImageNet实验结果
图10:可视化结果
我们把 ResNet-50的第一个卷积层的特征图进行了可视化。红色的(7,23,27,46,56,58)是被FPGM选中的需要被去掉的通道。可以看出这些被去掉的通道特征主要有两部分。1)竹子的骨架,2)熊猫的轮廓。其中竹子的骨架可以被剩下的 (5,12,16,18,22)通道代替,而熊猫的轮廓可以被剩下的 (0,4,33,34,47) 通道代替,由此验证了我们基于几何中心进行滤波器剪枝的理论。
我们探讨了现有的滤波器范数评价指标的问题,并且提出了基于滤波器的几何中心的剪枝算法。我们的方法还可以结合矩阵分解,权重量化等方法进一步对神经网络进行压缩和加速。
滑动查看更多内容
<< 滑动查看更多栏目 >>
点击 阅读原文 ,进入AI研习社CVPR顶会交流小组,查看更多CVPR论文推荐及解读