《Soft Filter Pruning for Accelerating Deep Convolutional Neural Networks》论文笔记

1. 概述

这篇文章中给出了一种叫作SFP(Soft Filter Pruning),它具有如下两点优点:
1)Larger model capacity。相比直接剪裁掉网络中的filters,再在这个基础上finetune,这篇论文中的方法将其保留,这为优化网络的表达以及任务能力提供了更多空间。
2)Less dependence on the pretrained model,采用上述的方法可使网络连续剪枝和重新练,可以从网络的训练开始就进行剪枝,不需要再训练好一个模型之后再剪枝,节省了很多时间。
使用论文中的方法使得ResNet-101节省了42%的计算量,而且top-5的错误率还获得了2%的提升!
论文地址:Soft Filter Pruning for Accelerating Deep Convolutional Neural Networks
代码地址:soft-filter-pruning
在下面一幅图中比较了论文中给出的SFP算法与传统剪枝算法(Hard Filter Pruning)的比较。
在这里插入图片描述
传统减值方法中filters被删除掉了就不会继续回到网络中参与训练,需要预训练模型,剪枝之后再fintune去逼近原来的状态。这样的结构限制了网络的表达能力。相反论文中提出的方法是在训练的时候边剪枝边训练,一个epoch之后对模型剪枝,剪除的filters其内部权值全部被置为0,然后下一个epoch训练。如此往复得到最后的模型。这样做的好处是剪枝不是不可恢复的操作,网络的表达能力并没有被减小且精度得到了保障,同时网络被剪裁。

2. SFP算法

2.1 算法整体流程

下图是算法的整体流程:
在这里插入图片描述
在上图中对 k k k次epoch进行剪枝,检测的策略是根据 L p − n o r m L_p-norm Lpnorm进行度量,之后剪除比较小的权重(也就是filters置为0)。之后再在下一个epoch中进行迭代。

2.2 算法具体步骤

对于CNN网络中的卷积参数可以使用 W ( i ) W^{(i)} W(i)来表示,其为 W ( i ) ∈ R N i + 1 ∗ N i ∗ k ∗ k W^{(i)}\in R^{N_{i+1}*N_i*k*k} W(i)RNi+1Nikk,代表第 i i i个卷积层的卷积参数矩阵, N i N_i Ni代表第 i i i个卷积的feature map数量, k k k代表卷积核的尺寸。那么对应的第 i i i层的feature map为 U U U,空间尺度为 N i ∗ H i ∗

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值