CVPR 2019 Oral 论文解读 | 百度提出关于网络压缩和加速的新剪枝算法

栏目: 编程工具 · 发布时间: 4年前

内容简介:论文地址:Github 地址:

雷锋网 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

1.背景

卷积神经网络(CNN)通常通过更深和更宽的结构实现了更好的性能,但是当神经网络需要部署到移动设备时,神经网络需要的资源远远超过了移动设备的限制。例如,ResNet-152拥有6020万个参数,需要231MB存储空间;此外,它还需要超过380MB的内存和11.3亿浮点运算(在CPU上耗时6秒钟)来处理单张图像。因此,我们需要找到高效率的模型来满足移动设备的需要。

网络剪枝是网络的压缩和加速中一个重要的方向,自1989年LeCun提出以来,得到了迅速发展。现在主要分为2种方向:1)权重剪枝;2)滤波器剪枝。滤波器剪枝相对于权重剪枝有一系列优点,包括它可以得到规则的模型,由此减少内存消耗,并且加速网络的推断。

CVPR 2019 Oral 论文解读 | 百度提出关于网络压缩和加速的新剪枝算法

图1: 滤波器剪枝

上图是典型的滤波器剪枝的流程。现有的方法认为滤波器的范数(p-norm)越小,相对应的特征图越接近于0,于是对网络对贡献越小,那么这些滤波器可以去掉而不会严重影响网络的性能。于是我们用滤波器的p-norm进行重要性排序,并且删除p-norm小的滤波器。

2.现有的滤波器范数评价指标的问题

CVPR 2019 Oral 论文解读 | 百度提出关于网络压缩和加速的新剪枝算法

图2: 范数评价指标的条件

上述的范数评价指标,实际上包含了两个隐含条件(图2):1)范数标准差足够大;2)最小的范数接近于0。

CVPR 2019 Oral 论文解读 | 百度提出关于网络压缩和加速的新剪枝算法

图3: 滤波器范数分布可能出现的情况  

但是实际的滤波器范数分布也会出现不满足上述条件的情况(图3),1)范数的标准差太小;2)最小范数的值仍然很大。如果出现情况1,很多滤波器有相似的重要性,我们不知道到底应该去掉哪个。如果出现情况2,我们很难找到特征图越接近于0的滤波器。

CVPR 2019 Oral 论文解读 | 百度提出关于网络压缩和加速的新剪枝算法

图4:实际的滤波器范数分布

我们通过分析实际的预训练网络(图4),发现这些网络确实出现了上述的情况。 雷锋网

3.基于几何中心的滤波器评价指标(FPGM)

CVPR 2019 Oral 论文解读 | 百度提出关于网络压缩和加速的新剪枝算法

图5 基于范数和几何中心的评价指标

几何中心(Geometric Median, GM)的定义:

https://baike.baidu.com/item/%E5%BD%A2%E5%BF%83

CVPR 2019 Oral 论文解读 | 百度提出关于网络压缩和加速的新剪枝算法

图6: 几何中心

几何中心是对于欧几里得空间的点的中心的一个估计。我们认为滤波器也是欧氏空间中的点,于是我们可以根据计算GM来得到这些滤波器的“中心”,也就是他们的共同性质。如果某个滤波器接近于这个GM,可以认为这个滤波器的信息跟其他滤波器重合,甚至是冗余的,于是我们可以去掉这个滤波器而不对网络产生大的影响。去掉它后,它的功能可以被其他滤波器代替。

CVPR 2019 Oral 论文解读 | 百度提出关于网络压缩和加速的新剪枝算法

图7: 基于几何中心的滤波器评价指标

由此我们得到一种跟范数无关的滤波器评价方法FPGM,打破了范数评价指标的局限性。

4.实验

在Cifar-10数据集上,FPGM在ResNet-110上的计算量降低了52%以上,相对精确度提高了2.69%。此外,在ILSVRC-2012数据集上,FPGM还在ResNet-101上减少了超过42%的计算量。

CVPR 2019 Oral 论文解读 | 百度提出关于网络压缩和加速的新剪枝算法

图8: ResNet on CIIFAR-10实验结果

CVPR 2019 Oral 论文解读 | 百度提出关于网络压缩和加速的新剪枝算法

图9: ResNet on ImageNet实验结果

CVPR 2019 Oral 论文解读 | 百度提出关于网络压缩和加速的新剪枝算法

图10: 可视化结果

我们把 ResNet-50的第一个卷积层的特征图进行了可视化。红色的(7,23,27,46,56,58)是被FPGM选中的需要被去掉的通道。可以看出这些被去掉的通道特征主要有两部分。1)竹子的骨架,2)熊猫的轮廓。其中竹子的骨架可以被剩下的 (5,12,16,18,22)通道代替,而熊猫的轮廓可以被剩下的 (0,4,33,34,47) 通道代替,由此验证了我们基于几何中心进行滤波器剪枝的理论。

5.总结

我们探讨了现有的滤波器范数评价指标的问题,并且提出了基于滤波器的几何中心的剪枝算法。我们的方法还可以结合矩阵分解,权重量化等方法进一步对神经网络进行压缩和加速。

雷锋网特约稿件,未经授权禁止转载。详情见 转载须知


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Windows黑客编程技术详解

Windows黑客编程技术详解

甘迪文 / 人民邮电出版社 / 2018-12 / 108

《Windows黑客编程技术详解》介绍的是黑客编程的基础技术,涉及用户层下的Windows编程和内核层下的Rootkit编程。本书分为用户篇和内核篇两部分,用户篇包括11章,配套49个示例程序源码;内核篇包括7章,配套28个示例程序源码。本书介绍的每个技术都有详细的实现原理,以及对应的示例代码(配套代码均支持32位和64位Windows 7、Windows 8.1及Windows 10系统),旨在......一起来看看 《Windows黑客编程技术详解》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

随机密码生成器
随机密码生成器

多种字符组合密码

URL 编码/解码
URL 编码/解码

URL 编码/解码