架构搜索文献笔记(11):《ATOMNAS: FINE-GRAINED END-TO-END NEURAL ARCHITECTURE SEARCH》

论文《 ATOMNAS: FINE-GRAINED END-TO-END NEURAL
ARCHITECTURE SEARCH》-2020-ECCV
**
论文链接
[代码链接](: https://github.com/meijieru/AtomNAS)

一、摘要及主要贡献

1.1 摘要

搜索空间设计对神经结构搜索算法至关重要。论文提出了一个由原子块组成的细粒度的搜索空间,这个搜索空间允许通过组合不同类型的原子块来混合操作,而以前的方法中的搜索空间只允许齐次操作。

基于此搜索空间,论文提出了一个资源感知的架构搜索框架,该框架通过共同考虑性能和计算成本,自动为每个操作分配计算资源(例如,输出通道数)。

此外,为了加速搜索过程,论文提出了一种动态网络收缩技术,它对原子块进行修剪,对动态输出的影响可以忽略不计。论文方法不是搜索和重新训练两阶段的范式,而是同时搜索和训练目标架构。

1.2 主要贡献

1.论文设计了一个细粒度的搜索空间,其中包括精确的通道数量和混合操作(例如,不同卷积核的组合)。

2.论文提出了一个NAS框架,AtomNAS。在该框架内,提出了一种有效的端到端NAS算法,该算法可以同时搜索网络体系结构和训练最终模型。在算法完成后,不需要进行微调。

3.利用所提出的搜索空间和原子NAS,论文在mobilenet设置下的ImageNet数据集上取得了最先进的性能。

二、论文相关

论文在一个细粒度的搜索空间中建立神经结构搜索方法,使用原子块作为基本的搜索单元。原子块由由通道操作连接的两个卷积组成。通过叠加原子块,论文得到了更大的构建块。Resnet块和mobileNetV2以及mobileNetV3块。

2.1 细粒度的搜索空间

论文通过将网络分解为更小、更基本的构建块来提出一个更细粒度的搜索空间。

论文表示c0、c(X)
表示卷积算子,其中X是输入张量,c、c`分别是输入和输出通道数。手动设计和NAS体系结构共享一个结构,通过通道级操作连接两个卷积:
在这里插入图片描述

其中g是一个通道的操作符。

在这里插入图片描述

总和中的每个项都可以看作是一个与计算无关的块,它被称为原子块。如图1所示。

这个公式也自然地包括算符的选择。为了更好地理解等式,论文首先推广了等式(2)为:
在这里插入图片描述

新的搜索空间包括一些最先进的网络架构。

图1:整体视角的说明。箭头表示运算符。根据等式的说法,由一个通道方向的操作连接的两个卷积的结构在数学上等价于多个原子块的集合,彩色矩形表示张量,里面的数字表示它们的通道编号;右边的阴影路径是原子块的一个例子。
在这里插入图片描述

2.2 具有资源感知能力的原子块搜索

在这项工作中,论文采用可微神经结构搜索范式,其中模型结构在模型训练中被发现。通过上面定义的超网,最终的模型可以通过在训练期间丢弃部分原子块来产生。DARTS论文引入了一个重要因子α来缩放超网中每个原子块的输出。式子(3)就会变成
在这里插入图片描述
在这里,每个αi与由三个运算符f1icc’'1、gi、f01i、f0i1c组成的原子块绑定。重要因素与网络权值共同学习。一旦训练完成,对网络输出的影响可以忽略不计的原子块(即那些系数小于阈值的原子块)将被丢弃。

论文解决了与αi的重要因素相关的两个问题。第一个问题是论文应该把α放在哪里?让论文首先考虑g只包含线性操作的情况,例如,卷积、批处理归一化和像ReLU这样的线性激活。如果g中至少包含一个BN层,那么BN层中的缩放参数可以直接作为这些重要因素来使用。如果g没有BN层,这是罕见的,论文可以把α放在f0和f1之间的任何地方;然而,论文需要应用正则化项到f0和f1的权重(例如,权重衰减),以防止f0和f1中的权重太大,抵消α的影响。当g包含非线性操作时,如愿望激活和西格莫德激活,论文只能将α放在f1后面。

第二个问题是如何避免在丢弃一些原子块后的性能恶化。例如,DARTS在对模型参数和尺度因子进行迭代训练后,放弃了具有小尺度因子的操作。由于被丢弃的操作的规模因子不够小,网络的性能将受到影响,需要重新训练才能再次调整权重。为了在丢弃一些原子块后保持超网的性能,这些原子块的重要因素α应该足够小。论文在α上增加了L1范数惩罚损失,这有效地将许多重要因素推到接近零的值。在学习结束时,α接近零的原子块被从超网中移除。请注意,由于正则化项,在训练期间BN尺度的变化更显著,因此BNs的运行统计数据可能不准确,需要使用训练集重新计算。

加了正则化术语,训练损失是
在这里插入图片描述
其中λ是L1惩罚项的系数,S是所有原子块的指数集,E是传统的训练损失(例如,交叉熵损失结合正则化项,如重量衰减和蒸馏损失)。|αi|由系数ci加权,该系数ci与第一个原子块的计算成本成正比。cˆi.通过使用计算成本感知正则化,论文鼓励模型学习在准确性和效率之间取得良好平衡的网络结构。在本文中,论文使用浮动法作为计算成本的准则。其他指标,如延迟和能源消耗,也可以类似地使用。因此,整个损失函数L在精度和流量之间进行权衡。

2.3 动态网络收缩

通常,超级网比最终的搜索结果要大得多。论文观察到许多原子块从搜索的早期阶段开始“死亡”,即它们的重要因素α接近零。为了更有效地利用计算资源并加快搜索过程,论文提出了一种动态网络收缩算法,通过删除原子块被认为“死亡”来减少网络结构。

论文采用一种保守的策略来决定一个原子块是否“死亡”:对于重要因素α,论文保持其动量ˆα,并更新为
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
其中αt是t迭代的重要因子,β是衰减项。如果ˆα和αt都小于阈值0.001,则原子块被视为“死亡”。

一旦“死”块的总流量达到一个预定义的阈值,论文就会将这些块从超级网中移除。如上所述,论文在部署网络之前重新计算BN的运行统计数据。在算法1中介绍了整个训练过程。

论文展示了一个样本网络在搜索过程中的流程。2.论文从一个拥有15.21亿帧的超级网开始,动态地丢弃“死”原子块以降低搜索成本。与从头开始训练搜索模型相比,整体搜索和训练成本只增加了17.2%。

三、 试验部分

图3:(左)超级网的可搜索数据块。f0和f1固定到1×1PW卷积;卷积核大小是3×3、5×5和7×7。f0将输入输入通道数从C扩展到18C,f1将信道号投影到输出信道号。如果输出维度与输入维度保持相同,论文使用跳过连接将输入添加到输出中。(右)超级网的体系结构。Column-Block表示块类型;MB表示MobileNetV2块;“searchable”是指左侧显示的可搜索块。Column-f表示一个块的输出通道数。Column-n表示块的数量。列-s表示一个阶段中的第一个块的步幅。第一个卷积的输出信道数对于AtomNAS-A为16,对于AtomNAS-B和AtomNAS-C为32。
在这里插入图片描述
图4:ImageNet上的参数量与准确性。
在这里插入图片描述
表1:与移动设置下图像网络最新技术的比较。表示使用额外网络模块的方法,如愿望激活和挤压和激发模块。表示使用额外的数据增强,如混合和自动增强。∗表示同时搜索和训练的模型。
在这里插入图片描述
表2:资源度量意识的影响。上块对所有原子块使用相同的惩罚。下面的部分使用论文的资源感知的原子块选择。
在这里插入图片描述

表3:BN重新校准的影响。
在这里插入图片描述
表4将研究结果与其他基线主干模型进行了比较。基线模型的检测结果来自斯塔穆利斯等人。(2019b)。论文可以看到,所有三个AtomNAS模型在对象检测任务上都优于基线。结果表明,论文的模型比基线具有更好的可转移性,这可能是由于混合操作,即这里的多尺度操作,对对象检测和实例分割更为重要。
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值