基于网络架构搜索的准确性与鲁棒性结构研究
论文链接:https://arxiv.org/abs/2405.05502
项目链接:未开源
Abstract
为了保护深度神经网络免受对抗性攻击,对抗性训练因其有效性而受到越来越多的关注。然而,对抗训练的准确性和鲁棒性受到体系结构的限制,因为对抗训练通过调整隶属于体系结构的权重连接来提高准确性和鲁棒性。在这项工作中,我们提出了ARNAS来搜索对抗训练的准确和健壮的架构。首先,我们设计了一个准确和鲁棒的搜索空间,其中单元格的位置和滤波器数量的比例关系是仔细确定的。通过将准确的结构和鲁棒的结构分别部署到敏感位置,使结构既具有精度又具有鲁棒性。然后,我们提出了一种可微的多目标搜索策略,在有利于自然损失和对抗损失的方向上进行梯度下降,从而同时保证了准确性和鲁棒性。我们在白盒攻击、黑盒攻击和可移植性方面进行了全面的实验。实验结果表明,搜索到的体系结构具有最强的鲁棒性和竞争精度,打破了传统的基于NAS的体系结构在鲁棒性场景下不能很好地转移到复杂任务的想法。通过对搜索到的优秀结构的分析,我们还得出准确鲁棒的神经结构倾向于在输入和输出附近部署不同的结构,这对于手工制作和自动设计准确鲁棒的神经结构都具有重要的现实意义。
1. Introduction
深度神经网络(DNN)在各种实际应用中表现出卓越的性能[2,21,24]。然而,研究发现DNN容易受到对抗性攻击[38]。这种现象限制了DNN在自动驾驶汽车[14]和人脸识别[37]等安全关键系统中的应用。在发现dnn的这个有趣的弱点之后,人们提出了各种方法来保护DNN免受对抗性攻击。其中,对抗性训练[16,28]因其出色的增强鲁棒性能力而得到广泛应用[29,46]。与直接使用自然数据进行训练的标准训练不同,对抗性训练是使用对抗性示例来训练网络。然而,问题是,如果事先没有很好地设计体系结构,对抗训练产生的准确性和鲁棒性是有限的[18],因为对抗训练通过调整隶属于体系结构的权重连接来提高准确性和鲁棒性。
最近,一个被称为鲁棒NAS[12,18,29]的高级研究课题被广泛研究以解决这一问题。具体来说,鲁棒NAS利用神经架构搜索(NAS)设计本质上准确性和鲁棒性神经架构[48]。经过对抗性训练,这些架构显示出较强的准确性和鲁棒性。例如,RobNet[18]采用 one-shot NAS[3]方法,对一个超网络进行一次对抗性训练,然后通过使用共享权重评估每个子网络在对抗性攻击下的表现,找出鲁棒的子网络。ABanditNAS[5]引入了一种反bandit算法,通过逐渐放弃不可能使体系结构具有鲁棒性的操作来搜索鲁棒体系结构。NADAR[26]提出了一种体系结构扩张方法,从对自然数据具有满意精度的骨干网络开始,寻找一种扩张体系结构,在保持最小精度下降的同时追求最大的鲁棒性增益。此外,最常用的方法是采用可微搜索方法,通过利用一些鲁棒性指标更新体系结构来搜索鲁棒性体系结构。这些鲁棒性指标包括RACL[12]采用的Lipschitz常数[7],AdvRush[29]采用的输入损失情况[47],DSRNA提出并使用的认证下界和雅可比范数界[20]。
在对现有的鲁棒NAS方法进行综合研究后,我们发现现有的工作还存在两个不足。首先,大多数现有的鲁棒NAS只是简单地采用了为标准训练而设计的传统NAS算法的搜索空间[49]。然而,研究发现,适合对抗性训练的体系结构可能与适合标准训练的体系结构具有不同的整体结构[22]。因此,现有的鲁棒NAS所采用的搜索空间已不适合对抗训练。其次,在准确性和鲁棒性之间进行权衡[40,46]。现有的鲁棒神经网络算法大多通过将多目标优化问题转化为具有固定正则化系数的单目标优化问题,并利用梯度下降法进行优化来解决多目标优化问题。然而,优化结果很大程度上依赖于系数的选择。同时,研究多目标优化的学者表明,总是找到所有准则共有的下降方向可能会更好地识别帕累托前沿[9,10],而固定的正则化系数无法实现这一点。
本文综合考虑了上述两个问题,提出了准确鲁棒的神经结构搜索(ARNAS)方法。如图1所示,与同类竞争对手相比,本文提出的方法在经过相同的对抗性训练过程后,鲁棒性显著提高,准确率与最佳方法相近。我们的贡献可以总结如下:
- 为了解决传统搜索空间不包含准确鲁棒的对抗训练架构的问题,设计了一种新颖的准确鲁棒搜索空间。具体而言,根据初步研究[22],不同位置的架构深度和宽度对准确性和鲁棒性的影响不同,我们进一步推测不同位置的架构本身也起着不同的作用。
- 我们通过实验来支持这一猜想,并相应地设计了一个新的基于细胞的搜索空间。设计的搜索空间由准确单元、鲁棒单元和约简单元组成。我们通过实验确定了单元的位置和滤波器个数的比例关系。
- 针对以往搜索策略无法有效实现准确性和鲁棒性双重效益的问题,提出了一种可微多目标搜索策略。具体而言,我们在多重梯度下降法(multiple gradient descent method, MGDA)的基础上,进一步设计了一种多目标对抗训练方法,该方法首先通过动态自动确定自然损失和对抗损失的系数,找到它们的共同下降方向,然后进行梯度下降,朝着更小的自然损失和对抗损失的方向优化体系结构。
- 我们在白盒攻击、黑盒攻击和可转移性方面进行了全面的实验。对白盒攻击和黑盒攻击的实验表明,该算法具有较强的鲁棒性和较高的准确率。可转移性实验打破了基于nas的架构随着任务复杂性的增加而不能很好地迁移的偏见。通过对搜索到的优秀架构进行分析,得出通过在不同位置部署非常不同的结构,架构可以同时获得精度和鲁棒性,这对于手工制作和自动设计准确鲁棒的架构具有重要的指导意义。
2. Related Works
2.1. 对抗性攻击和防御
根据攻击者对目标模型是否有完全的访问权限,现有的对抗性攻击方法可以分为白盒攻击和黑盒攻击。在相关领域,常用的白盒攻击包括FGSM[16]、C&W[4]、PGD[28]。常用的黑盒攻击是基于传输的攻击[33]。最近,AutoAttack[8],一种包含白盒和黑盒攻击的攻击集合,因为无参数、计算负担得起和用户无关而成为鲁棒性评估的流行方法。为了进行可靠的比较,我们还在实验中加入了AutoAttack。
为了保护神经网络免受对抗性攻击,已经提出了许多防御方法,其中对抗性训练[16,28]是迄今为止最流行的帮助神经网络增强鲁棒性的方法[5,12,18,29]。为了进行对抗性训练,使用最广泛的方法是用PGD生成的对抗性示例替换输入数据,因为使用PGD对抗性训练的神经网络通常可以推广到其他攻击[28]。此外,其他一些方法,如防御蒸馏[32]、数据压缩[13,17]、特征去噪[42]和模型集成[31,39]也证明了其可行性。在我们的工作中,我们注意到对抗训练作为最有效的防御方法,依赖于神经结构的设计。如果神经结构不合适,则只能获得低精度和低鲁棒性。我们的工作通过自动设计在对抗性训练后表现良好的神经架构来解决这个问题。
2.2. 网络架构搜索(NAS)
NAS是一种很有前途的技术,旨在实现深度神经网络架构设计的自动化。根据所采用的搜索策略,NAS可分为三类:基于进化计算的NAS[34,35]、基于强化学习的NAS[48]和可微NAS[6,27,43]。其中,可微分NAS由于其效率和有效性而在设计健壮的体系结构时特别受欢迎。在可微的NAS方法中,搜索空间被放宽为连续的,因此可以通过使用梯度下降优化可微度量来设计架构。通过引入鲁棒性的可微度量,可以搜索鲁棒架构。我们在本文中的工作也利用了可微的NAS,因为它的效率和有效性。
3. The Proposed ARNAS Method
3.1. ARNAS概述
算法1给出了该方法的框架。首先构造准确鲁棒的搜索空间,然后基于构造的搜索空间初始化一个超级网络。然后,我们使用提出的可微多目标搜索策略对超级网络进行迭代优化。最后,利用DARTS的离散化规则得到最佳体系结构[27]。本文提出的ARNAS方法的创新之处在于搜索空间的准确性和鲁棒性以及多目标搜索策略的可微性,这些将在下面的小节中详细介绍。
3.2. 准确和鲁棒的搜索空间
在本节中,我们将依次介绍1)准确和鲁棒架构的特点,2)传统搜索空间的局限性,以及3)准确和鲁棒搜索空间的构建。
3.2.1 准确和鲁棒架构的特点
为了设计一个准确和鲁棒的对抗训练搜索空间,我们首先要考虑准确和鲁棒架构的特点。然而,NAS和鲁棒神经网络的研究都是新兴课题,很少有知识可以直接探索。我们注意到最近的一项工作[22],该工作探讨了对抗鲁棒性深度神经网络的架构成分。实验表明,不同位置神经结构的深度和宽度对准确率和鲁棒性有不同的影响。由此,我们进一步作出命题1所示的猜想。这个命题也将在第4.4.5节中得到实验验证。
命题1 整体结构中不同位置的单元对准确率和鲁棒性的影响可能不同,通过在不同位置放置不同的单元可以同时提高神经结构的准确率和鲁棒性。
3.2.2 传统搜索空间的局限性
在命题1的基础上,进一步分析了传统搜索空间的局限性。其中,传统的基于单元的搜索空间指的是由著名的DARTS算法推广的搜索空间。目前,几乎所有的可微鲁棒NAS方法都采用该搜索空间[12,20,29]。具体来说,基单元的搜索空间只设计了Normal cells和Reduction cells两种计算单元,分别起到提高精度和降低数据维数以提高效率的作用。在设计的基础上,通过叠加多个Normal cell来尽可能提高准确率,通过减少Reduction cells来避免无效的数据维度来构建整体架构。得到的体系结构主要由相同的Normal cell组成,并且与命题1匹配的体系结构(例如在输入附近使用可分离卷积而在输出附近使用扩张卷积的体系结构)不包含在搜索空间中,这限制了准确性和鲁棒性的提高。
3.2.3 准确鲁棒搜索空间的构建
鉴于上述分析,我们保留了Reduction Cell,同时用Accurate Cell和Robust Cell替换了单一类型的Normal Cell,旨在包含符合命题1的架构。因此,在提出的搜索空间中设计了三种类型的单元:Accurate Cell、Robust Cell和Reduction Cell。具体来说,如命题1所述,Accuracy Cells和Robust Cells都返回相同维度的feature map,但可以放置在不同的位置,以达到准确度和鲁棒性的相应效果。Reduction cell返回一个特征映射,其中特征映射的高度和宽度被减少了2倍,扮演与common相同的角色。通过这种设计,学习到的单元也可以堆叠形成一个完整的网络,从而使设计的搜索空间具有可扩展性。在下面,我们将详细介绍如何确定它们的特定位置,以实现准确性和鲁棒性。
如图2所示,Reduction Cell位于整体架构的三分之一和三分之二处。在架构的其余部分中,Accurate Cell被放置在第二个Reduction Cell之前,而Robust Cell被放置在第二个Reduction Cell之后。同时,与常用的启发式方法[49]不同的是,每当空间激活大小减少时,输出中的滤波器数量就会增加一倍,我们将第一个Reduction Cell的滤波器数量增加一倍,并保持第二个Reduction Cell的滤波器数量不变。本设计的有效性将在第4.4.4节中得到验证,命名规则(即,如何确定哪些单元用于准确性,哪些单元用于鲁棒性)将在第4.4.5节中进行解释。
3.3. 可微多目标搜索策略
为了从设计的搜索空间中搜索准确且鲁棒的架构,搜索过程可以公式(1)表示。
{
m
i
n
(
L
v
a
l
s
t
d
(
ω
∗
(
α
)
,
α
)
,
λ
L
v
a
l
a
d
v
(
ω
∗
(
α
)
,
α
)
)
s
.
t
.
ω
∗
(
α
)
=
a
r
g
m
i
n
ω
L
t
r
a
i
n
a
d
v
(
ω
,
α
)
(1)
\left.\left\{\begin{matrix}min&(\mathcal{L}_{val}^{std}(\omega^{*}(\alpha),\alpha),\lambda\mathcal{L}_{val}^{adv}(\omega^{*}(\alpha),\alpha))\\s.t.&\omega^{*}(\alpha)=argmin_{\omega}\mathcal{L}_{train}^{adv}(\omega,\alpha)\end{matrix}\right.\right. \tag{1}
{mins.t.(Lvalstd(ω∗(α),α),λLvaladv(ω∗(α),α))ω∗(α)=argminωLtrainadv(ω,α)(1)
具体来说,公式(1)表示一个双级优化问题,其中低层公式意味着通过最小化训练集上的对抗损失L adv train(.)来更新网络权重ω,上层公式意味着更新架构参数以最小化验证集上的自然损失
L
v
a
l
s
t
d
(
.
)
\mathcal{L}^{ std}_{val}(.)
Lvalstd(.)和对抗损失
L
v
a
l
a
d
v
(
.
)
\mathcal{L}^{adv}_{val}(.)
Lvaladv(.)。λ表示正则化系数。对抗性损失可以选择性地用其他鲁棒性指标代替。
现有方法[12,20,29]将上层优化问题转化为单目标优化问题,将两个目标相加,正则化系数固定,公式为公式(2)。
m
i
n
L
v
a
l
s
t
d
(
ω
∗
(
α
)
,
α
)
+
λ
L
v
a
l
a
d
v
(
ω
∗
(
α
)
,
α
)
(2)
min\quad\mathcal{L}_{val}^{std}(\omega^*(\alpha),\alpha)+\lambda\mathcal{L}_{val}^{adv}(\omega^*(\alpha),\alpha) \tag{2}
minLvalstd(ω∗(α),α)+λLvaladv(ω∗(α),α)(2)
公式(2)可以用梯度下降法进行优化。然而,如第1节所述,研究多目标优化的学者已经表明,总是找到所有准则共有的下降方向对于识别Pareto锋会更好[9,10],而固定的正则化系数无法实现这一目标。为了解决这个问题,我们提出了一种基于MGDA的多目标对抗训练方法[9,36]。MGDA是一种基于梯度的多目标优化算法,它要么为所有目标找到一个共同的下降方向并进行梯度下降,要么在当前点为Pareto-stationary时不做任何事情[9]。
具体来说,我们首先需要动态地确定所有目标的权重。有了权值,所有目标可以同时优化。由于我们方法中的两个目标,动态确定权重的过程可以简化为公式(3),
γ
∗
=
a
r
g
m
i
n
0
≤
γ
≤
1
∥
γ
θ
+
(
1
−
γ
)
θ
ˉ
∥
2
2
(3)
\gamma^*=\underset{0\leq\gamma\leq1}{argmin}\left\|\gamma\theta+(1-\gamma)\bar{\theta}\right\|_2^2 \tag{3}
γ∗=0≤γ≤1argmin
γθ+(1−γ)θˉ
22(3)
其中,
θ
=
∇
α
L
v
a
l
s
t
d
(
ω
∗
(
α
)
,
α
)
,
θ
ˉ
=
∇
α
λ
L
v
a
l
a
d
v
(
ω
∗
(
α
)
,
α
)
,
\theta=\nabla_{\alpha}\mathcal{L}_{val}^{std}(\omega^{*}(\alpha),\alpha), \bar{\theta}=\nabla_{\alpha}\lambda\mathcal{L}_{val}^{adv}(\omega^{*}(\alpha),\alpha),
θ=∇αLvalstd(ω∗(α),α),θˉ=∇αλLvaladv(ω∗(α),α), ∇α表示对α的梯度。公式(3)有解析解,可由公式(4)计算。
γ
∗
=
m
a
x
(
m
i
n
(
(
θ
ˉ
−
θ
)
T
θ
ˉ
∥
θ
−
θ
ˉ
∥
2
2
,
1
)
,
0
)
(4)
\gamma^*=max(min(\frac{(\bar{\theta}-\theta)^T\bar{\theta}}{\|\theta-\bar{\theta}\|_2^2},1),0) \tag{4}
γ∗=max(min(∥θ−θˉ∥22(θˉ−θ)Tθˉ,1),0)(4)
利用得到的权值,将公式(1)的上一级问题转化为公式(5),保证了自然损失和对抗损失同时优化,可以使用梯度下降实现。
m
i
n
γ
∗
L
v
a
l
s
t
d
(
ω
∗
(
α
)
,
α
)
+
(
1
−
γ
∗
)
λ
L
v
a
l
a
d
v
(
ω
∗
(
α
)
,
α
)
(5)
min\quad\gamma^*\mathcal{L}_{val}^{std}(\omega^*(\alpha),\alpha)+(1-\gamma^*)\lambda\mathcal{L}_{val}^{adv}(\omega^*(\alpha),\alpha) \tag{5}
minγ∗Lvalstd(ω∗(α),α)+(1−γ∗)λLvaladv(ω∗(α),α)(5)
我们使用DARTS的二阶近似[27]来实现上述算法,以获得竞争结果。同时,上述算法涉及自然损失和对抗损失相同梯度的多次计算,可以保存和重用。因此,该算法不需要额外的计算开销。在搜索结束时,使用传统的DARTS方法可以获得准确且鲁棒的结构。
4. Experiments
4.1. 基准数据集
遵循鲁棒NAS社区[18,29]的惯例,选择CIFAR-10[23]、CIFAR-100、SVHN[30]和TinyImageNet-200[25]作为基准数据集。
4.2. Peer Competitors
从三个类别中选出最先进的架构作为同行竞争对手。具体来说,手工制作的架构是ResNet-18[19]和DenseNet-121[21]。标准NAS获得的体系结构是DARTS[27]和P-DARTS[6]。鲁棒NAS获得的架构是我们的主要竞争对手,即RobNet-free[18]、AdvRush[29]、RACL[12]、DSRNA[20]、NADAR[26]和ABanditNAS[5]。
4.3. 参数设置
搜索设置:遵循dart,我们在一个由8个单元组成的小型网络上进行架构搜索。最初的通道数被设置为24个,这比惯例要大,目的是保持模型在提议的搜索空间中的容量与同行竞争对手相似,以便进行公平的比较。具体来说,由两个Reduction Cell划分的通道数量分别为24、48和48。总epoch设置为50。为了生成搜索过程的对抗性示例,我们使用7步PGD,步长为2/255,总扰动为8/255。对抗性损失的正则化系数设为0.1。其余设置与DARTS相同。我们使用动量SGD来优化网络权重ω,初始学习率 η ω = 0.025 η_ω = 0.025 ηω=0.025(在余弦计划下退火至零),动量0.9,权重衰减3 × 10−4。我们使用Adam作为结构参数的优化器,初始学习率 η α = 3 × 1 0 − 4 η_α = 3×10^{−4} ηα=3×10−4,动量β =(0.5, 0.999),权重衰减10−3。
评估设置:为了评估搜索到的架构,我们将20个单元堆叠起来,形成一个初始通道数为64的大型网络。因此,两个Reduction Cell所分割的通道数分别为64、128和128。按照惯例[29],我们使用7步PGD进行对抗训练,步长为0.01,总扰动为8/255,持续200次。我们使用SGD对网络进行优化,动量为0.9,权值衰减为1 × 10−4。在对CIFAR-10和CIFAR-100进行评估时,初始学习率设置为0.1。在SVHN上进行评估时,初始学习率设为0.01。在第100次和150次epoch时,学习率衰减了0.1倍。批量大小设置为32。所有的实验都是在单个NVIDIA GeForce RTX 2080 Ti GPU卡上进行的。
4.4. 结果
4.4.1 白盒攻击
我们对抗性地训练搜索到的架构,并在FGSM、PGD20、PGD100和AutoAttack标准组(APGDCE、APGDT、FABT和Square)下对它们进行评估[8]。结果如表1所示。
结果表明,在PGD20,PGD100和AutoAttack标准组,表明ARNAS架构具有高度鲁棒性下,ARNAS架构在所有竞争对手中获得了最高的对抗精度。同时,ARNAS的自然准确率优于除DenseNet-121、ABanditNAS-10和NADAR外的所有竞争对手。与之相比,对抗精度的提高大大超过了自然精度的下降。请注意,AbanditNAS-10仅在FGSM等简单攻击下表现良好。当攻击变得更强时,AbanditNAS-10的准确率明显低于其他所有竞争者,这表明AbanditNAS-10实际上并没有被训练成鲁棒性。
此外,ARNAS体系结构具有1.27G FLOPs,尽管它们的参数数量相似,但这比其他体系结构要多得多。考虑到ARNAS架构具有更强的鲁棒性,我们推断参数数量和FLOPs都是影响鲁棒性的因素。这一结论也解释了为什么以往的研究对于模型参数对鲁棒性的影响得出了完全矛盾的结论,即有的研究表明参数越多可以提高对抗鲁棒性[41],而有的研究表明参数越多可能不利于对抗鲁棒性[22]。这可能是因为他们忽视了FLOPs的影响。此外,较大的FLOPs本质上是由于所提出的搜索空间中设计的通道的特殊比例关系造成的,这进一步证明了所提出的搜索空间的有效性。具体来说,参数大小与通道数的和成正比,而flop与通道数的乘积成正比。所提出的搜索空间保持了与传统搜索空间相似的通道数和,但通道数的乘积要大得多,使得体系结构具有相似的参数大小,但FLOPs更大。
4.4.2 黑盒攻击
我们进行基于传输的黑盒攻击,使用源模型生成的对抗性示例攻击目标模型。源模型中的对抗样例由PGD20生成,总扰动尺度为8/255。除了上述竞争对手,我们对WRN-34-R进行了扩展实验,WRN-34-R是[22]发现的最强大的WideResNet变体。WRN-34-R使用额外的500k数据进行训练,因此它显示出最高的准确性和鲁棒性。我们对ARNAS在面对如此高度鲁棒的模型时的表现感兴趣。结果如表2所示。
结果表明,ARNAS比AdvRush和ABanditNAS更能抵御基于传输的黑箱攻击。例如,当考虑模型对ABanditNAS-10↔ARNAS时,ABanditNAS-10→ARNAS的攻击成功率(100%—预测准确率)为21.61%,而ARNAS→ABanditNAS-10的攻击成功率为32.20%,两者相差10.59%。此外,当作为目标模型(每行)时,除了WRN-R需要额外训练500k数据外,ARNAS的预测精度始终是最高的。当作为源模型(在每一列中)时,ARNAS的攻击成功率始终是最高的,甚至高于WRN-R。总之,黑盒评估结果进一步证明了ARNAS架构的高鲁棒性。同时,它证明了ARNAS架构并没有不公平地受益于混淆的梯度[1],因为基于传输的黑盒攻击没有使用目标模型的梯度。
4.4.3 可转移到其他数据集
我们将ARNAS架构转换为CIFAR-100、SVHN和Tiny-ImageNet-200,以显示其可移植性。结果如表3所示。当转移到CIFAR100时,ARNAS架构远远优于ResNet-18。与PDARTS相比,ARNAS体系达到了具有竞争力的自然精度,而其FGSM精度和PGD20精度明显高于PDARTS。当转移到SVHN时,ARNAS在所有评估指标下表现最佳。当转移到Tiny-ImageNet-200时,我们用竞争模型WideResNet-3412取代ResNet-18[45]。令我们惊讶的是,ARNAS架构在自然和FGSM精度方面达到了前所未有的高度。值得注意的是,ARNAS架构在FGSM攻击下几乎从未被击败。其FGSM精度比WideResNet-34-12高22.18%,甚至接近WideResNet-34-12的自然精度。实验结果打破了传统的偏见,即随着数据集大小或任务复杂性的增加,基于nas的架构的鲁棒性比手工构建的架构弱[11]。
4.4.4 消融研究
搜索空间消融研究。我们尝试了所有可能的Accurate Cell和Robust Cell的放置,而Reduction Cell的放置与NASNet搜索空间相同。当位置确定后,我们进一步研究了不同设置的滤波器数量。结果如表4所示。为了表示单元的位置,我们使用A表示Accurate Cell,R表示Robust Cell。例如,A-A-R意味着我们将Accurate Cell放在第二个Reduction Cell之前,将Robust Cell放在第二个Reduction Cell之后,这与第3.2节中描述的建议搜索空间相同。对于滤波器设置,我们使用N1-N2-N3来表示滤波器数量的比例关系。例如,1-2-4表示第一个Reduction Cell和第二个Reduction Cell之间的滤波器数量是初始滤波器数量的2倍,第二个Reduction Cell之后的滤波器数量是初始滤波器数量的4倍,NASNet搜索空间采用这种滤波方式。
当滤波器设置固定为1-2-2(实验1、2、3)时,我们设置放置位置为A-A-R(实验1)时效果最好。因此我们将放置位置固定为A-A-R,并进行进一步的实验。当放置位置固定为A-A-R(实验1、4、5)时,恰好当我们将滤波器数量设置为1-2-2(实验1)时,可以获得最佳效果,这是在之前的实验。因此,我们以A-A-R的位置和1-2-2的滤波设置来构造所提出的搜索空间。与传统的搜索空间(A-A-A的位置和滤波器设置为1-2-4)相比,从该搜索空间中搜索到的神经结构的自然准确率提高了2.23%,PGD20准确率提高了2.78%。
我们还对上述实验结果进行了图3的可视化分析。如图所示,设计良好的设置可以在很大程度上提高准确性和鲁棒性(图的右上角)。
搜索策略的消融研究。该搜索策略的创新之处在于提出了多目标对抗训练方法。我们将其与之前的方法(即两个目标与固定正则化项的总和)进行了比较。结果如表5所示。采用所提出的多目标对抗训练方法,搜索的结构具有较高的精度和鲁棒性。通常,基于梯度下降的结构优化不能保证收敛到最优解。可以看出,这两个相互冲突的目标都变得更高了。结果表明,所提出的多目标对抗训练方法比之前的方法更有效。
4.4.5 准确鲁棒神经网络的架构成分分析
为了获得更准确和鲁棒的架构,我们使用不同的随机种子重复了四次所提出的方法。对于每次执行,记录前10个体系结构。然后对这40种神经架构进行统计分析,结果如图4所示。我们发现ARNAS架构倾向于为Accurate Cell和Robust Cell部署非常不同的结构。具体来说,Accurate Cell更喜欢可分离的卷积,而使用一些扩张卷积和跳过连接。然而,Robust Cell在使用少量可分离卷积和无跳跃连接时更倾向于空洞卷积。这种神经结构在传统的搜索空间中是不可能找到的,因为传统的搜索空间限制了输入和输出附近的单元是相同的[49]。
接下来,我们将分析为什么Accurate Cell和Robust Cell分别有助于准确性和鲁棒性。请注意,跳跃连接并没有在我们的考虑范围内,因为它们通过加速梯度传播对训练过程产生影响[15],而不是提高体系结构的学习能力。一方面,更多的可学习参数有利于准确性是一个共识[44]。现有的实践也符合这一共识。例如,流行的标准NAS算法(如DARTS和PDARTS)搜索的架构主要由可分离卷积组成,这要求在所有可选操作中参数数量最大。在我们的实验中,输入附近的单元结构符合共识和以前的实践。这就是为什么我们把这些单元命名为Accurate Cell。另一方面,也有经验和理论证明,可学习参数越多对鲁棒性越不利[22]。在可选操作中,空洞卷积将一些权值固定为零,因此它们具有较少的可学习参数。因此,输入的扰动很难改变输出,从而具有更强的鲁棒性。在我们的实验中,输出附近的单元倾向于使用空洞卷积而不是可分离卷积,并且鲁棒性可能会增强。这就是为什么我们称这些细胞为Robust Cell。综上所述,尽管精度和鲁棒性是相互冲突的目标,但不同位置的单元结构对准确度和鲁棒性的影响是不同的,通过在不同位置部署不同的结构,可以同时获得准确度和鲁棒性。
该结论对准确、鲁棒的结构手工制作和自动设计具有重要的指导意义。据我们所知,虽然现在通过堆叠重复结构来设计建筑是很常见的,但很少有人尝试在不同的位置堆叠非常不同的结构,这可能会极大地限制所设计的架构的性能。
5. Conclusion
在这项工作中,我们提出了在对抗训练后自动搜索准确和鲁棒的神经结构的ARNAS方法。具体而言,我们首先通过实验设计了专门用于对抗训练的ARNAS搜索空间,从经验上提高了搜索神经结构的准确性和鲁棒性。然后,我们设计了一个可微的多目标搜索策略,通过向自然损失和对抗损失的共同下降方向执行梯度下降来搜索准确和鲁棒的架构。我们在各种基准数据集的各种对抗性攻击下评估了搜索的架构。搜索到的结构具有较强的鲁棒性和较高的精度,证明了该方法的优越性。同时,随着鲁棒性场景中任务复杂性的增加,基于NAS的架构不如手工架构的传统偏见也被打破。此外,我们还得出了一个重要的结论,即不同位置的单元结构对精度和鲁棒性的作用是不同的,在不同位置部署不同的单元结构可以同时获得高精度和高鲁棒性。该结论对人工制作和自动设计准确、鲁棒的神经结构具有重要的指导意义。