《Pruning Filters for Efficient Convnets》论文笔记

1. 概述

CNN网络经被在众多方面展现了其成功,但是随之而来的是巨大的计算量与参数存储空间。这篇论文中给出一种剪除卷积滤波器的方法(确实会影响精度),但是移除这些滤波器与其对应的feature map之后确实带来计算量的降低,而且并不会导致连接的稀疏,从而就并不需要支持稀疏的卷积库,可以使用现有的BLAS库。在实验中减少了VGG-16中34%和ResNet-110中38%的计算量,并且通过重新训练获得了与原网络近似的精度。

然而,单纯剪裁参数量并不是减少计算时间的必要条件(分类网络),因为分类网络诸如VGG-16中90%的参数是在全连接层,但是却只有1%不到的浮点运算。实际上卷积层也是能被压缩和加速的,但是需要稀疏的BLAS库,甚至特定的硬件。参数总量可以使用average pooling减少,卷积层的运算量可以通过在网络初始阶段下采样来减小,然而,网络越来越深,卷积层中的计算量占据了计算量的主要部分。

那么通过移除卷积中多余的滤波器也能够加速网络,这是一种naturally structured way。这样的方法实现重新训练,此外这里使用one-hot的键值重新练策略而不是layer-wise的方法,这样可以加速重新训练的时间。

2. Channel Pruning

2.1 单个layer的pruning

这里使用 n i n_i ni表示第 i i i个卷积层的输入通道数, ( h i , w i ) (h_i,w_i) (hi,wi)是输入feature map的宽高。当前卷积层将输入feature map(维度 x i ∈ R n i ∗ h i ∗ w i x_i \in R^{n_i*h_i*w_i} xiRnihiwi)转换到feature map输出 x i + 1 x_{i+1} x

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值