HourNAS: Extremely Fast Neural Architecture Search Through an Hourglass Lens论文笔记

这是一篇CVPR2021年关于网络架构搜索的论文,比较创新的点是按照块的重要程度来进行架构搜索,实现了效率的提升并且硬件友好。

作者通过观察残差网络,发现一个神经网络之中只有少部分块结构是非常重要的,如下图,如果把神经网络的输入到输出的所有路径都统计出来,发现只有少数块是出现在所有路径中的(例如第一层、最后的全连接层、下采样块和通道扩张块,其他块总会找到替代路径,所以相对来说并没有那么重要。

更具体的,作者在MnasNet和MobileNetV2上分别固定所有层而对一层的通道使用掩码以(0.3,0.6,1.0)的概率进行屏蔽,发现对于不关键的块即使不输出通道也对精度没有太大影响,而对于关键块,即使以0.3的概率屏蔽通道也会是精度下降很多,实验结果如下图:

基于以上结果,作者提出了一个分阶段搜索块结构的算法,第一阶段通过堆叠所有重要层并搜索重要块来构建最小的 SuperNet,使用梯度下降优化架构参数和权重参数。第二阶段固定关键块结构并在计算资源限制下搜索不关键的块。

具体的,作者将架构参数连续化:

其中θ是LxO大小的矩阵,L为层数,O为操作数,A_{\theta }代表采样的架构参数,ζ代表采样函数,可以使用softmax, Gumbel-softmax, Gumbel-Max等,A_{l,o}表示第l层的第o个操作。 

使用如下函数衡量采样架构A_{\theta }的FLOPs :

 

 其中F代表每层每个操作的运算量,是一个LxO的矩阵。

对θ的优化公式:

其中T_{F}是FLOPs ,M_{F}是一个常数标量,被定义为采样架构的最大FLOPs 。

针对多目标的优化:

提出空间方案,即在多个空间中寻找最优 

构造空间方案:

引入了正交约束,进一步增加了不同空间方案的多样性。

对各个空间方案采样:

其中Ρ可以使用softmax, Gumbel-softmax, Gumbel-Max等。

结合之前的A_{\theta }定义:

  

 最后将NAS的双层优化问题表示为:

其中Τ是对Π和Θ正则化,α 是多目标损失率。 

作者通过上式来实现参数的优化,进而搜索到最终架构。

实验结果

作者后面还做了消融实验,发现:

没有资源限制精度会更高,NAS变成了给定资源约束的计算资源分配问题;

关键块优先策略找到更优架构;

Gumbel-Max 采样不减少精度同时减少搜索时间。

 以上。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值