代码位置
摘要
免训练网络架构搜索 (NAS) 旨在发现具有零成本代理的高性能网络,捕捉与最终性能相关的网络特征。然而,以前的免训练 NAS 方法估计的网络排名与性能的相关性较弱。为了解决这个问题,我们提出了 AZ-NAS,这是一种新方法,它利用各种零成本代理的集合来大大增强网络预测排名与基本事实之间的相关性,在性能方面。为了实现这一点,我们引入了四个相互补充的新型零成本代理,从表现力、进步性、可训练性和复杂性的角度分析了架构的不同特征。代理分数可以在一次前向和后向传递中同时获得,从而使整个 NAS 过程非常高效。为了有效地整合我们的代理预测的排名,我们引入了一种非线性排名聚合方法,突出显示在所有代理中始终排名较高的网络。实验结果最终证明了 AZ-NAS 的有效性和效率,在标准基准上的表现优于最先进的方法,同时保持合理的运行成本。
1. Introduction
代表性的神经网络架构,如ResNets [23]、MobileNets [24, 50] 和 Vision Transformers [17, 39],已经通过专家的反复试验和错误过程开发出来,这使得在各种配置下设计新的架构变得困难。为了解决这个问题,网络架构搜索(NAS)作为一种有前途的范式应运而生,能够在指定约束条件下自动寻找表现最优的架构。近年来,无训练NAS [1, 10, 35, 36, 41] 由于其显著的效率,受到了广泛关注。它大大降低了相比早期使用迭代训练 [3, 49] 或训练参数共享网络 [6, 38, 47, 66] 的NAS过程中的计算和时间成本。
无训练的NAS方法通过零成本代理预测候选网络的排名,这些代理是基于经验见解或理论证据设计的。这些代理分析激活值或梯度,捕捉例如:将输入空间划分为线性区域的能力 [10, 41],权重/通道的重要性 [1, 34, 56, 58],或训练动态 [10, 52]。然而,由于与最终性能的相关性较弱,它们往往不如基于训练的NAS方法实用。例如,最近的研究 [35, 44] 指出,基于参数数量(#Params)或浮动点操作数(FLOPs)的简单代理在NAS基准测试 [15] 中,往往提供比许多无训练NAS方法 [1, 10, 34, 36, 41, 56, 58] 更好的或具有竞争力的排名一致性。这一局限性可能来自于当前无训练NAS方法通常仅从狭隘的角度评估网络,通常仅依赖单一的代理 [1, 35, 36, 41, 65]。仅考虑单一网络特性可能不足以准确预测网络的排名,因为多种因素可能会显著影响最终性能。例如,具有大量参数的网络并不总是能获得更好的性能,例如梯度消失或爆炸问题,如果我们仅利用#Params作为代理,则可能无法识别这些问题。
在本文中,我们提出了一种新颖的无训练NAS方法AZ-NAS,它将多个零成本代理结合起来,从不同的角度评估网络。然而,简单地将现有的零成本代理组合起来并不总是有效,原因如下。首先,已有研究表明,基于梯度的代理 [1, 34, 52, 58] 在理论上是相互关联的,提供了相似的NAS结果 [53]。这表明,直接使用它们的集成可能无法全面评估网络,提供的改进有限 [44],而且需要额外的计算成本。其次,一些零成本代理 [10, 65] 存在计算效率低的问题,尤其是当它们与其他代理结合时,难以扩展到大规模搜索空间。为了解决这些问题,我们设计了新颖的零成本代理,这些代理可以高效地获得,并捕捉彼此互补的独特网络特性,这些代理的分数与网络的性能呈正相关。每个代理都利用激活值、梯度或架构信息(即FLOPs)来全面评估网络的表达性、进步性、可训练性和复杂性。这些代理分数在一次前向和反向传播中同时计算,从而使整个NAS过程高效。我们还提出了一种非线性排名聚合方法,来有效合并由代理提供的排名,偏向于在所有代理中都排名较高的网络。我们展示了AZ-NAS在NAS-Bench-201 [15] 上实现了最佳的排名一致性,并且在大规模搜索空间上找到表现最先进的网络 [9, 36, 50],且运行时成本合理(如图1所示),证明了其高效性和有效性。我们总结了本文工作的主要贡献如下:
- 我们提出将多个零成本代理组合用于无训练NAS,从多个角度评估网络架构,以预测候选架构的可靠排名,且无需训练。
- 我们为AZ-NAS设计了新颖的零成本代理,能够高效地捕捉独特的网络特性,实现对网络的全面评估。
- 我们提出了一种非线性排名聚合方法,结合由代理预测的排名,选择在所有代理中均表现优秀的网络。
- 我们在不同的搜索空间上实现了最佳的NAS结果,并提供了广泛的分析,验证了AZ-NAS的有效性和高效性。
2. Related work
NAS(神经架构搜索)通过寻求操作的最佳组合[15, 38, 62]和/或网络的宽度和深度[5, 36, 50]来自动设计新的网络架构,同时在有限的 FLOPs(浮动运算数)和参数数量预算下进行优化。早期的方法采用了强化学习[68, 69]或进化算法[49],这些方法需要迭代训练网络,使得NAS过程计算成本非常高。
为了解决这个问题,一些单次/少次训练的NAS方法[4–6, 25, 38, 66]使用了参数共享的网络,称为超级网络(supernets),其中超级网络中的每个子路径对应一个特定的网络架构,位于搜索空间内。它们训练一个[4–6, 38]或少数[25, 66]超级网络,通过从超级网络中采样相应的子路径来评估候选网络的准确度,从而节省了与迭代训练过程相关的计算成本。然而,在超级网络中共享参数往往会导致遗忘问题[63]或偏向选择[12],因此需要专门的训练算法来处理超级网络。此外,构建超级网络并存储参数会导致显著的内存需求[4, 5]。
训练-free(无训练)NAS去除了搜索阶段的网络训练过程。它们使用零成本代理(proxies),这些代理可以反映最终性能,通常利用激活或梯度信息。受启发于ReLU函数的发现——每个ReLU函数在网络中将输入空间划分为两个不同的区域,称为线性区域[20, 21],[10, 41]的工作通过分析激活来计算输入空间中的线性区域数量,这对于评估网络的表达能力非常有用。然而,这些方法仅适用于使用ReLU非线性的网络。ZenNAS[36]基于预期的高斯复杂度[30]评估网络的表达能力,这需要额外的前向传递,并且输入有所扰动。受网络剪枝[19]的启发,[1]的工作提出了利用剪枝初始化指标[34, 56, 58]进行训练-free NAS,通过分析梯度来估计每个权重参数的重要性。TE-NAS[10]利用神经切线核(NTK)[29]来研究训练动态,而GradSign[65]则尝试搜索那些不同输入样本下获得的局部最优解接近的网络。它们的计算速度相对较慢,因为计算NTK[10]和样本分析[65]分别是计算上非常昂贵的操作。
[35, 54]的工作通过使用从多个前向和后向传递中计算的梯度统计量来分析网络的收敛性和泛化能力,偏向选择那些具有大梯度幅度和低方差的网络。尽管上述方法在理论和实证上取得了一定的成果,但这些方法预测的网络排名通常与真实值的相关性较弱。例如,已经证明,许多训练-free NAS方法[1, 34, 36, 41, 56, 58]相比于基本的使用FLOPs和#Params的代理方法[35, 44]并不有效。我们推测,这一局限性可能是因为这些方法使用单一的零成本代理来评估网络。基于此,我们考虑了从不同角度设计的多种代理,通过结合激活、梯度和FLOPs等信息,全面地对网络进行评分。
与我们类似,[1, 10, 44]的工作结合了多个零成本代理来评估网络架构。TE-NAS[10]同时使用了线性区域的数量[20, 59]和NTK的条件数[29, 32]来评估网络的表达能力和可训练性。然而,计算线性区域对于大型网络是不可行的[36],而计算NTK则计算需求非常高[45],这使得TE-NAS难以应用于大型网络架构的搜索空间[5, 36, 50]。与此相反,AZ-NAS在保持计算效率的同时,联合利用了四个零成本代理,保留了训练-free NAS的优势。[1, 44]的工作提出结合少数零成本代理进行NAS评估。然而,仅仅简单地结合这些代理并不足以有效地利用代理之间的互补特征[44]。例如,[1]的工作选择了多个剪枝初始化指标[34, 56]来组合代理,但它们捕捉的是对剪枝有用的类似网络特征,即权重参数的重要性。与此不同,我们设计了从不同视角分析网络的零成本代理,使它们互补,我们还采用了非线性排名聚合方法来有效地组合这些代理,显著提高了NAS的性能。
3. Method
我们的零成本代理分析网络主要块上的激活及其梯度,其中每个块由一组具有不同类型操作和多条路径的层组成。例如,我们将 NAS-Bench-201 [15] 的单元结构、残差块 [23] 或 Transformer 的注意块 [17, 57] 视为主要块。在下文中,我们将详细描述 AZ-NAS 的零成本代理(第 3.1 节)和非线性排名聚合方法(第 3.2 节)。
-
表现力(Expressivity):
-
输入:网络架构的初始化权重、特征分布和高斯随机输入。
-
输出:表现力得分 sE,表示网络特征空间的均匀性,得分越高越好。
-
-
进步性(Progressivity):
-
输入:每一层的表现力得分 sE。
-
输出:进步性得分 sP,表示网络特征空间随着层数的增加是否逐渐扩展。
-
-
可训练性(Trainability):
-
输入:每一层的雅可比矩阵和梯度信息。
-
输出:可训练性得分 sT,表示网络在训练过程中的梯度传播是否稳定,得分越高越容易训练。
-
-
复杂度(Complexity):
-
输入:网络的计算量(FLOPs)。
-
输出:复杂度得分 sC,表示网络在执行时消耗的计算资源,得分越低越好。
-
3.1. Zero-cost proxies of AZ-NAS
Expressivity.
【表现力是衡量网络特征分布的均匀性。你可以把它理解为网络在初始状态下,特征的分布是否均衡。比如说,如果一个网络的特征在不同方向上的分布非常均匀,那么它就具有很强的表现力。这意味着网络能学习到更多不同的特征,并且不会容易出现像“死神经元”(即神经元不再工作)或者“维度崩塌”(特征空间变得非常简单)的情况】
计算方法: 表现力是通过主成分分析(PCA)来量化的。
我们通过检查在随机初始化的网络权重和高斯随机输入的条件下,特征在特征空间中的方向上如何均匀分布来评估网络的表现力。我们将其称为特征空间的各向同性(isotropy)[7]。初始化时特征空间的各向同性越强,意味着特征之间的相关性越低[13, 26, 27]。因此,网络具有更强的能力来存储训练过程中各种语义信息,并且很可能在训练中表现出较高的性能,而不会出现例如死神经元 [40] 或维度崩溃问题 [26]。
-
左边(图 a):
-
这张图展示了一个具有低表现力得分(sE=0.23s_E = 0.23sE=0.23)的特征分布。绿色的点表示特征分布,箭头表示主成分(PCs),其中蓝色箭头是第一个主成分(1st PC),红色箭头是第二个主成分(2nd PC)。
-
L1-归一化主成分系数:下方的柱状图显示了对应主成分的 L1 归一化系数。这里,第一个主成分的系数非常高,而第二个主成分的系数较小。这表明特征空间的分布非常不均匀,主要集中在一个方向上,即维度崩溃,缺乏丰富的特征表示。
-
-
右边(图 b):
-
这张图展示了一个具有高表现力得分(sE=1.00s_E = 1.00sE=1.00)的特征分布。特征(绿色点)形成了一个近乎圆形的分布,蓝色和红色箭头仍然分别表示第一个和第二个主成分。
-
L1-归一化主成分系数:下方的柱状图显示了更均匀的主成分系数。这里,第一个和第二个主成分的系数接近,表明特征空间的分布是各向同性的(isotropic),即特征在各个方向上的分布非常均匀。这种均匀分布的特征空间更有可能在网络中进行有效学习和表示。
-
Progressivity.
【进步性衡量的是网络随着层数增加,特征空间是否逐渐扩展。简单来说,就是看网络的每一层是否都在逐渐“加深”或“扩展”它所能表达的信息。如果网络的每一层都能够逐渐增强它所学习的特征,那么这个网络的进步性得分就会很高】
计算方法: 进步性衡量的是网络中各个主块的表现力是否随着深度逐步增加。它通过计算相邻主块之间的表现力差异来定义。
Trainability.
【网络的可训练性得分衡量的是每一层在训练时的“梯度流动”是否顺畅。如果网络的雅可比矩阵(用来描述梯度传播的矩阵)的谱范数接近 1,那么网络的梯度传播就比较稳定,训练也会更加顺利。谱范数越大,说明梯度可能会爆炸或者消失,这样会导致网络训练困难。因此,一个具有高可训练性得分的网络在训练过程中更容易学习到有用的模式】
计算方法: 可训练性通过雅可比矩阵的谱范数来计算。雅可比矩阵用于描述梯度在各层之间的传播。
[42] 的开创性工作表明,只有当每层的雅可比矩阵的谱范数接近 1 时,梯度才可以稳定地反向传播,而不会发生发散或消失。受此启发,我们设计了一个基于雅可比矩阵谱范数的可训练性得分,用于评估初始化时梯度的稳定传播,这对高性能网络至关重要 [18, 22, 48]。然而,与之前的工作 [42] 处理简单网络架构不同,我们需要考虑包含多种操作和多条路径的复杂主块结构(例如单元结构 [15])。在这种情况下,获取雅可比矩阵并不是一项简单的任务。为了解决这个问题,我们设计了一种高效的近似方法来计算主块的雅可比矩阵,并使用该近似方法来计算可训练性得分。
Complexity.
计算方法: 复杂度通过网络的计算量来衡量,通常使用FLOPs(浮点运算次数)来表示网络的计算复杂度。
最近的研究 [35, 44] 表明,与硬件资源相关的架构特征(如参数数量或 FLOPs)与网络性能密切相关。根据这一观察,我们提出使用 FLOPs 本身作为复杂度得分 sC,偏向那些在给定预算内最大限度利用计算资源的网络。
3.2. Non-linear ranking aggregation
1. 背景:
-
在神经架构搜索(NAS)中,我们通常会使用多个代理(如表现力、进步性、可训练性和复杂度等)来评估不同的架构。每个代理会为架构提供一个评分。
-
线性排名聚合:传统上,我们会将这些不同的得分进行线性加权求和来得到最终得分。但是,问题是,如果某个代理得分较低,它的影响可能会被其他得分较高的代理所抵消。因此,低排名的代理可能不会显著影响最终的决策,尽管它可能捕捉到一些网络架构的潜在问题。
2. 非线性排名聚合:
为了克服上述问题,论文提出了一种非线性排名聚合方法。具体来说,非线性排名聚合通过对每个代理得分的排名进行非线性变换,使得低排名的代理对最终得分的影响更加显著。
算法的详细步骤:
-
代理得分排序: 对每个架构的各个代理得分进行排序。每个得分被映射到一个排名(Rank),然后这些排名会影响架构的最终评分。
-
非线性变换: 对每个代理的排名进行对数变换:
其中,RankM(i)是架构 i 在代理 M 中的排名,m 是候选架构的总数。对数变换使得较低的排名会产生更大的惩罚效应,从而减少低排名代理对最终得分的抵消作用。
-
排名影响: 非线性变换通过加大低排名代理的惩罚,确保架构在所有代理中都能表现出较高的分数。如果一个架构在某个代理上得分较低,它会对最终得分产生更大的负面影响。
-
最终得分: 通过对各个代理的排名进行非线性聚合,我们可以得到一个更准确的架构评分。这使得网络架构能够在多个代理上都有良好的表现,而不仅仅依赖某个高得分的代理。
3. 优点:
-
更加鲁棒:非线性聚合方法通过强调低排名代理的影响,减少了某些代理被其他高排名代理所“掩盖”的问题,使得最终得分更加稳健。
-
提高一致性:这种方法比传统的线性聚合方法能更好地保证最终的评分与实际架构性能之间的一致性。
-
解决了低得分代理的影响问题:低得分代理能够通过非线性变换的方式,对最终得分产生明显影响,从而避免了仅依赖高得分代理的问题。
3.3. Evolutionary search using AZ-NAS
-
初始化第一种架构 F1 进行进化搜索
-
初始化空的历史集来存储架构和代理分数
-
迭代 T 次进行进化搜索:
-
计算当前架构的4个代理分数:
-
将当前架构 Fi 和代理分数添加到历史集:
-
使用非线性排名聚合方法计算架构的 AZ-NAS 分数
-
生成新的候选架构
-
4. Experiment
4.1. Experimental settings
在这一部分,作者描述了他们在三个不同的搜索空间上进行的实验设置,包括 NAS-Bench-201、MobileNetV2 和 AutoFormer。对于每个搜索空间,实验中使用的代理分数(表现力 sE、进步性 sP、可训练性 sT、复杂度 sC)都是通过单个批次的高斯随机输入计算的,每个批次大小为 64。
NAS-Bench-201
NAS-Bench-201。NAS-Bench-201 [15] 由 15625 个网络架构组成,每个架构都使用独特的单元结构。它提供诊断信息,例如 CIFAR-10/100 [31] 和 ImageNet16-120 (IN16-120) [11] 上的测试准确率和训练损失。我们根据 Kendall 的 τ 和 Spearman 的 ρ 测量所有候选架构中预测和真实网络排名之间的相关系数。我们还报告了所选网络的 top-1 测试准确率(5 次运行的平均)以及标准差。对于每次运行,我们随机抽样 3000 个架构,并根据 AZ-NAS 分数发现最佳架构。
MobileNetV2
我们遵循 [36] 中提出的 MobileNetV2 [50] 搜索空间的配置,以便与以前的工作 [35, 36] 进行公平比较。该空间包括使用倒置残差块 [50] 构建的候选架构,具有不同的深度、宽度和块扩展率。我们在算法 1 中执行进化搜索以找到最佳网络,同时将迭代次数 T 和 k 分别设置为 1e5 和 1024。按照 [35],我们在 450M、600M 和 1000M 的 FLOPs 约束下搜索网络。我们使用与 [35, 36] 相同的训练设置在 ImageNet [14] 上训练选定的网络,并报告 top-1 验证准确率。
-
T(迭代次数):
-
设置:T=1e5(即 100,000 次迭代)。
-
作用:表示算法在进行搜索时,会进行 100,000 次迭代。在每次迭代中,系统都会基于当前选择的架构进行评估,并生成新的候选架构。较大的迭代次数意味着算法会在较长时间内进行架构的搜索,从而更有可能找到性能最优的架构。
-
-
k(用于突变的前 kkk 个高评分架构数):
-
设置:k=1024
-
作用:在每次迭代中,系统会根据评分选择前 k 个表现最好的架构进行“突变”,生成新的候选架构。此参数控制了每次突变时候选架构的数量,较大的 k 值可能会让搜索过程更加多样化,但也可能增加计算复杂度。
-
-
FLOPs 约束:
-
设置:450M、600M 和 1000M。
-
作用:FLOPs(浮点运算次数)约束指定了网络架构所能消耗的最大计算资源。FLOPs越低,表示网络的计算效率越高,可能会更适用于移动设备等资源有限的环境。设置不同的 FLOPs 约束允许探索不同计算开销的网络架构,从而在性能和计算资源之间找到一个平衡。
-
AutoFormer
AutoFormer [9] 搜索空间旨在评估专门针对 Vision Transformers (ViTs)1 的 NAS 方法。它包含 ViT 架构,其深度、嵌入维度、注意头数量和多层感知器的扩展率等因素各不相同。根据模型大小,搜索空间进一步分为 Tiny、Small 和 Base 子集。我们在 10000 个随机选择的架构中为每个子集选择一个具有最佳 AZ-NAS 分数的 ViT 架构,类似于 [67]。我们按照 [9] 中的配置在 ImageNet 上训练和评估选定的 ViT,但 Base 子集除外,我们像 [67] 一样减少了训练周期数以避免过度拟合。
4.2. Results
NAS-Bench-201.
我们在 表1 中展示了 AZ-NAS 与当前最先进的无训练 NAS 方法在 NAS-Bench-201 [15] 上的定量比较。我们报告了预测的网络排名与真实排名之间的相关系数,以及所选网络的 top-1 测试准确度。我们可以看到,AZ-NAS 在 Kendall’s τ 和 Spearman’s ρ 上取得了最佳的排名一致性,远超其他方法,在所有数据集上均有显著的优势。这使得 AZ-NAS 能够发现那些与其他方法选择的网络相比,始终表现更好的架构。
训练-free NAS 方法 在 表1 中侧重于仅使用激活或梯度来捕捉单一的网络特征,除了 TE-NAS [10] 需要大量计算成本。相比之下,AZ-NAS 从多个角度评估网络,基于激活值、梯度和 FLOPs 提供全面的评估。此外,为 AZ-NAS 量身定制的代理方法计算效率高,可以在单次前向和反向传播中同时计算。
值得注意的是,几种训练-free NAS 方法利用了专门的实现技术,例如去除批归一化 [56],仅分析与 ReLU 非线性 相关的激活值 [10, 41],或者进行多次前向和/或反向传播 [10, 35, 36, 65]。而 AZ-NAS 不依赖这些额外复杂的操作或对网络架构的修改,能够高效地评估网络,避免了繁琐的额外操作。
表 1. NAS-Bench-201 上无需训练的 NAS 方法的定量比较 [15]。我们根据代理的输入将零成本代理的类型分为架构 (A)、后向 (B) 和前向 (F)。我们报告使用所有候选架构计算的 Kendall τ (KT) 和 Spearman ρ (SPR),以及平均运行时间。我们还提供了每个数据集的测试准确率 (Acc.) 的平均值和标准差,它们是通过 5 次随机运行获得的。为此,我们每次运行随机抽样 3000 个候选架构,并在所有方法中共享相同的架构集。所有结果均使用作者提供的官方代码重现。
MobileNetV2.
我们在 表2 中比较了各种 NAS 方法在 ImageNet [14] 上的 top-1 验证准确度。我们可以从表中看到,AZ-NAS 提供了最佳的 NAS 结果,在所有 FLOPs 约束下都达到了最高的准确度。它甚至超越了通常需要昂贵搜索成本的训练基 NAS 方法(MS 和 OS),证明了其有效性和高效性。
AZ-NAS 还在具有不同种子数的多次随机运行中始终如一地提供高性能网络。请注意,以前的无训练 NAS 方法 [35, 36] 使用 MobileNetV2 风格的网络应用进化搜索,同时删除残差连接。他们专注于在搜索过程中分析原始卷积神经网络 [36],其中多个卷积层只是简单地堆叠在一起而没有额外的连接。然后恢复残差连接以训练选定的网络,这可能导致搜索和训练阶段的预期性能与最终性能之间存在差异。相比之下,AZ-NAS 不依赖于此类技术,从而提高了实用性并避免了差异问题。我们还在补充材料中提供了在网络搜索和训练的公平设置下与无训练 NAS 方法 [35, 36] 在可重复性和搜索成本方面的全面比较。
AZ-NAS 通过进化搜索算法来寻找最佳的网络架构。它基于一系列 零成本代理(如表现力、进步性、可训练性和复杂度等)对架构进行评估,并通过 非线性排名聚合 来进行架构选择和优化。因此,AZ-NAS 在架构搜索中是有目的的,并且不是简单的随机搜索。
AZ-NAS 在进行架构搜索时并不依赖于删除关键的网络组件(如残差连接)。它通过评估多个网络特征(如表现力、进步性、可训练性等)来选择架构,而不需要简化架构或移除重要的结构部分。这样做的好处是 AZ-NAS 避免了 训练阶段与搜索阶段之间的性能差异,使得搜索到的架构在实际训练中能够得到一致的性能。
表2. 在 ImageNet [14] 上由 NAS 方法选择的网络的定量比较,按照 top-1 验证准确度 排列。我们根据 FLOPs 约束(即 450M、600M 和 1000M)对网络进行分组,并根据在搜索阶段训练的网络数量将 NAS 方法分为多次(MS)、一次(OS)和零次(ZS)方法。对于每个 FLOPs 约束,我们报告了 AZ-NAS 的结果,平均值来自三次随机运行,起始于搜索阶段。除我们的方法外,所有数字来自于 [35]
AutoFormer.
为了验证 AZ-NAS 在 ViT 架构上的泛化能力,我们在 AutoFormer [9] 搜索空间上进行了实验。我们在表 3 中提供了与专为 ViT 设计的最先进的 NAS 方法 [9, 67] 的定量比较,比较了 ImageNet [14] 上的验证准确性。对于搜索空间的每个子集(即 Tiny、Small 和 Base),我们分别找到两个 ViT,其 #Params 约束与 AutoFormer [9] 和 TF-TAS [67] 类似,以进行公平比较。我们可以看到,AZ-NAS 发现的 ViT 在大多数情况下比其他方法表现出更好的性能,并且搜索成本明显更低。这表明我们的方法不仅限于特定类型的网络架构,证明了我们代理的泛化能力
我们不将渐进式代理应用于 AutoFormer 搜索空间,因为我们根据经验发现,ViT 中的注意模块在初始化时使用高斯随机输入在各个 token 之间产生相似的注意值。在这种情况下,注意模块的输出特征因此在特征空间中趋于接近,这无法保证特征空间沿深度扩展。开发适用于 ViT 的零成本代理可以增强 AZ-NAS 对 ViT 的 NAS 性能,我们将此留待将来研究。
4.3. Discussion
Ablation study
我们在 表4 中提供了对 AZ-NAS 各个组成部分的消融研究。我们使用不同组合的代理和排名聚合方法在 NAS-Bench-201 [15] 上评估了 NAS 性能。我们总结了以下发现:
-
从表4中的 ⃝1 到 ⃝4,我们可以看到,单独使用一个代理并不能提供令人满意的结果。
聚合更多代理显著提高了 NAS 性能,甚至在选择了 AZ-NAS 中的两个代理(在 ⃝5 到 ⃝8 中)时,仍然超过了 表1 中大多数最先进的 NAS 方法。这些结果展示了组合多种零成本代理的有效性,确认了从多个角度对训练-free NAS 进行综合评估的重要性。 -
通过比较 ⃝11 和 ⃝12(或 ⃝13 和 ⃝14),我们可以清楚地看到,非线性排名聚合成功地提高了与性能相关的排名一致性。
当代理数量增加时,这种聚合方法尤为有效,验证了它在 AZ-NAS 中的重要性。 -
仅使用可训练性代理(trainability proxy)可能并不有效,如 ⃝3 所示,
因为它主要集中在稳定梯度传播上,而没有考虑网络的学习能力等因素。然而,从 ⃝5 到 ⃝11 我们可以看到,可训练性代理帮助其他代理实现了较强的排名一致性,特别是在 ImageNet16-120 上。
对于更深入的分析,我们在 图3 中展示了在 ImageNet16-120 上提出的代理之间的相关性。我们可以看到,可训练性代理与其他代理的相关性较低。基于这些观察结果,我们可以得出结论:将相关性较低的代理结合使用,能够显著改善 NAS 性能(例如,在 ImageNet16-120 上的结果,在 ⃝6 和 ⃝8 中)。这是因为这样的代理倾向于捕捉网络的独特特征,使得它们相互补充,从而产生协同效应。 -
AZ-NAS 完全利用了代理之间的互补特性,极大地提高了 NAS 性能。
Assembling other zero-cost proxies.
AZ-NAS 建立在以下理念之上:组装各种零成本代理(类似于集成学习)可以为 无需训练的 NAS 带来更好的性能。为了进一步验证这一想法,我们将提出的代理纳入现有代理 [1, 35, 56],并在 表 5 中显示 NAS-Bench-201 [15] 上的结果。我们可以看到,我们的零成本代理和前一个代理的集合可以持续提高排名一致性,这表明 AZ-NAS 的基本思想也适用于其他代理。与消融研究中的观察结果类似,我们可以通过利用更多代理来获得更好的排名一致性。特别是,我们可以通过聚合所有代理和前一个代理来进一步提高 Kendall τ 方面的性能,但需要额外的运行时间。
5. Conclusion
我们提出了 AZ-NAS,这是一种无需训练的 NAS 方法,它组合了各种零成本代理,以大幅提高 NAS 性能。为此,我们从独特且互补的角度设计了新的零成本代理。我们还提出了使用非线性排名聚合技术将它们有效地集成到最终得分中。大量实验清楚地证明了 AZ-NAS 的效率和功效,以相当快的运行时间超越了以前的无需训练的 NAS 方法。我们期望 AZ-NAS 能够提供即插即用的解决方案,允许其他 NAS 方法通过在搜索过程中无缝整合我们的零成本代理来最大限度地提高性能,同时尽量减少计算成本的增加。