【论文笔记--FORCE】Progressive Skeletonization: Trimming more fat from a networkat initialization

一、introduction

动机:作者发现网络剪枝超过了一定的稀疏程度(约95%)后,一些经典剪枝方法(SNIP,GRASP)不能保证网络性能,甚至比随机修剪还要差。

(* 笔者:大部分应用类剪枝不会往95%以上剪,研究极稀疏的情况是否有意义?)

  • SNIP(Lee et al. (2019)):分析初始化时每个权重对损失函数的影响,预测每个权重在随后的训练中的重要性
  • GRASP(Wang et al. (2020)):认为SNIP在剪枝前的预测准则是次优的,提出在剪枝后最大化梯度范数gradient norm的近似(一阶泰勒近似)。达到在稀疏情况下优于SNIP的效果。

本文提出的标准为 Foresight Connection sEnsitivity (FORCE),通过两个过程逐步优化:

  1. 迭代SNIP:在每一步删除一小部分权重,并在每一轮修剪后重新计算梯度。
  2. FORCE:也是迭代,但允许经过修剪的参数恢复。

 注:本文的剪枝是初始化剪枝,在训练权重更新之前找到稀疏的子网络。SNIP和GRASP也是。同时本文是希望在极端剪枝率(甚至99%)情况下保证网络的可训练性。


二、FORESIGHT CONNECTION SENSITIVITY

网络可训练性的衡量标准:connection sensitivity。定义为去除神经网络的连接后对其前向和后向信号产生显著的影响。

计算方式:经过一个batch后的G*W,而SNIP只考虑梯度变化

算法的思路是暴力遍历所有符合约束的子网络,然后找到最优解。但是暴力遍历无法实现,所以用两个方案求近似解。

1. 迭代SNIP / progressively increasing the degree of pruning

        假设每次修剪保留的parameters为K,根据schedule表(下文交代)逐渐把网络从Kt修剪到Kt+1。当总修剪次数T=1时,就相当于SNIP。次数T与最终的结果是有关的,迭代SNIP获得的每个中间结构是一个局部极小值,T增加则越接近最优解。

2. FORCE / Progressive Sparsification

        在修剪过程中的parameters不会被删除,而是暂时weight=0,gradient有可能不等于0,所以有可能被恢复。稀疏性满足要求后weight=0的parameters才会被剪掉。

3. Sparsity schedule / K的更新方式


三、experiments

 基本上优势体现在保留5%以下的网络中。到10%以上,迭代压缩的优势就不明显了。

 从上表看,大部分效果甚至不如random(……)尤其是resnet50,作者猜想对于一个具挑战性的任务(Imagenet有1000个类),Resnet50架构可能不会被过度参数化。

网络结构特征:高稀疏性(99.9%)时,更少的层数比层数多但每层更稀疏会好一些。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值