Dynamic Slimmable Network

        本文的核心思想就是使用宽度动态可变网络(Dynamic Slimmable Supernet),来实现剪枝,同时解决了传统剪枝方法硬件实际加速效果很低的问题。

这里的宽度选择与传统不同,提出了使用动态宽度门控(Dynamic Slimming Gate)对网络进行瘦身。

核心思想如图,首先训练supernet网络,再训练Gate门控,通过输入来选择不同的宽度,将困难图片送入复杂的网络,将简单的图片送入简单网络进行前向推理。

采用了两阶段的训练策略:

                第一阶段,禁用gate,训练超网络。

                第二阶段,固定超级网的权重并用SGS技术训练动态门控。

第一阶段:

         作者首先分析了以往的slimmable network中的in-place distillation方法。最宽的子网络学习真实标签同时生成软标签,并将生成的软标签作用到其他子网络。但in-place distillation中最宽子网络的权值出现剧烈波动会造成收敛困难,特别是在训练早期。因此作者提出了新的训练方式 In-place Ensemble Bootstrapping (IEB)。

         首先,使用超网络的滑动平均(EMA)网络来生成训练子网络的软标签,因为EMA网络提供的目标更加稳定和精准。

        IBE将网络分为两种在线网络(online network)和目标网络(target network)。作者使用 exponential moving average (EMA)模型作为目标网络。让 θ和θ‘  分别代表在线网络和目标网络的参数。则目标网络更新方式如下

        在论文中,网络主要有三种网络,最宽网络,最窄网络,和中间随机网络。使用了知识蒸馏的思想,对于最宽的网络,直接去学习标签y,并提供软标签,而对于中间的随机网络,去学习最宽的目标网络,让最窄的在线网络预测目标网络中所有子网的概率。即

         损失函数为:

 第二阶段:

         Dynamic Slimming Gate

        作者设计了双头(double headed)动态宽度门控的结构,并提出gate的训练策略sandwich gate sparsification(SGS)。

        对于Slimming Head来说,首先通过池化将每张特征图映射为点向量,再通过FC,relu,FC,最后求argmax,得到one-hot向量。

         同时,我们可以看到,这实际上就是一个求解通道注意力的过程,所以我们可以以非常低的成本将通道注意力加上。

         这时,我们可以注意到,argmax函数其实是不可导的,之前使用argmax作为网络中间层的工作一般使用gumbel-softmax作为替代,来近似求导,以便梯度回传。但是,本文作者发现采用这个方法进行gate训练时,很容易使其gate坍塌成静态。

        在这里,作者提出了一个叫Sandwich Gate Sparsification训练策略。首先,每个输入样本都按"是否能被最窄网络正确预测"分为容易和困难两类。然后,将两类难易样本打上one-hot标签,使用交叉熵直接优化gate。这种训练方式避免了间接和近似的梯度回传,克服了gate收敛困难的问题,并提高了gate的动态多样性。        

         

如有错误,欢迎各位批评指正!

                

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值