
使用批量正则化的快速NAS方法
三个要点
✔️ 提出一个基于批量正则化的指标作为架构评估指标,以降低评估成本
✔️ 只用批量正则化层来训练超网,也减少了超网的训练,从而降低了学习成本。
✔️ 在学习和搜索阶段速度更快,且不损失准确性
BN-NAS: Neural Architecture Search with Batch Normalization
written by Boyu Chen, Peixia Li, Baopu Li, Chen Lin, Chuming Li, Ming Sun, Junjie Yan, Wanli Ouyang
(Submitted on 16 Aug 2021)
Comments: ICCV 2021
Subjects: Computer Vision and Pattern Recognition (cs.CV)
code:![]()
![]()
本文所使用的图片要么来自论文、介绍性幻灯片,要么是参考这些图片制作的。
介绍
神经架构搜索(NAS)是自动搜索神经网络架构的方法的一个总称。尽管近年来进行了各种研究,并有可能以高精确度搜索架构,但仍有许多挑战。最大的挑战之一是搜索成本。问题是,在搜索中对候选架构的评估会产生非常高的计算成本,因此正在研究如何降低这一成本。本文试图通过使用批量正则化参数作为评估网络的指标和学习超级网来降低这一成本。
背景知识
一次成型的NAS
该方法从一个大的超级网中搜索与所需任务兼容的子网。该方法的整体管道可分为三个阶段
- 超网研究。
- 子网搜索。
- 子网重新学习。
超网研究。
超级网在每一层都有几个候选操作(Operator),如下图所示。
由于不可能在一次误差反向传播中学习所有这些候选操作的权重,所以在训练之前,单通道架构(图中的O3→Op2→O3)在每次迭代中根据采样策略进行采样。由于这是在每个迭代中进行的采样,整个网络在迭代中被训练。
子网搜索
一旦超级网被训练出来,下一步就是在其中寻找性能最好的最优架构。验证数据的准确性经常被用来评估子网。
子网重新学习。
在重新训练阶段,在子网搜索阶段对最准确的K个子网进行重新训练。然后在验证数据上对它们进行评估,选择最准确的子网作为最终的最优子网。
批量正则化层
批量正则化层用于网络修剪,被认为适合评估通道的重要性。如果批处理正则化层的输入是Xin,批处理正则化层的输出Xout是
计算方法如下。当网络被训练时,方程中的参数被更新为β和γ。
建议的方法
概述。
下图概述了拟议方法的框架。
该方法基本上是基于一次性的NAS。差异有两个方面
- 在超级网的训练阶段,卷积参数是固定的,只训练批量正则化层的参数。
- 在子网搜索阶段,提出的基于批量正则化的指标被用来搜索子网。
本节现在介绍在子网搜索阶段使用的基于批量正则化的指标。
为了重申这一点,下图说明了基于批量正则化的指标。
在一次性NAS中,如上所述,每一层都定义了一个操作(图中的Op);操作的分解显示在图的中间。建议的方法只在这个操作的最后使用批处理正则化层的参数。因此,不可能选择一个末端没有批量正则化层的Operation作为Operation,但现有的大多数NAS方法在末端都含有批量正则化层,所以可以应用提出的方法。
使用批量正则化的指标由两部分组成。它是。
- 通过批量正则化层对操作进行评估。
- 1.对架构的评估。
是。这些将在以下章节中解释。
通过批量正则化对操作进行评估。
每层操作的评估值按以下公式计算。
在这个方程中,Operation是用γ来评估的,γ是批量正则化中的一个可学习参数。
使用每个操作评价对架构进行评估。
每个操作等级的计算方法与上述公式相同,它们共同计算出架构等级。具体来说,计算是按照以下公式进行的
实验
与基线方法比较
作为一个基线,选择了SPOS和FairNAS方法。比较结果如下表所示。
可以看出,所提出的方法大大降低了SPOS和FairNAS的计算成本,而没有损失任何准确性。
与SOTA方法的比较
与SOTA方法的比较结果见上表。与人工设计的网络相比,可以看出,所提出的方法与SPOS相结合,以较少的FLOPs实现了更高的性能。还可以看出,与SOTA NAS方法相比,所提出的方法以较少的FLOPs实现了更高的性能。关于搜索成本,可以看出,与直接搜索架构的方法相比,提议的方法需要的搜索成本不到1/10。
摘要
为了解决搜索成本的问题,这是NAS的一个主要挑战,所提出的方法试图通过学习和评价指标来减少搜索成本,只使用批量正则化层。由于超网只通过学习批处理正则化层来学习,因此减少了超网的学习时间,并且通过使用批处理正则化层的参数来评估子网,可以有效地探索子网。
与本文相关的类别