ICML 2020 | 提升神经 络架构搜索稳定性,UCLA提出新型NAS算法

机器之心专栏

可微 络架构搜索能够大幅缩短搜索时间,但是稳定性不足。为此,UCLA 基于随机平滑(random smoothing)和对抗训练(adversarial training),提出新型 NAS 算法。

可微 络架构搜索(DARTS)能够大幅缩短搜索时间,但是其稳定性受到质疑。随着搜索进行,DARTS 生成的 络架构性能会逐渐变差。最终生成的结构甚至全是跳过连接(skip connection),没有任何卷积操作。在 ICML 2020 中,UCLA 基于随机平滑(random smoothing)和对抗训练(adversarial training),提出了两种正则化方法,大幅提升了可微架构搜索算法的鲁棒性。

论文:
https://arxiv.org/abs/2002.05283

代码:
https://github.com/xiangning-chen/SmoothDARTS

近期,可微架构搜索算法将 NAS 搜索时间缩短至数天,因而备受关注。然而,其稳定生成高性能神经 络的能力受到广泛质疑。许多研究者发现随着搜索进行,DARTS 生成的 络架构反而越来越差,最终甚至会完全变为跳过连接(skip connection)。为了支持梯度下降,DARTS 对于搜索空间做了连续化近似,并始终在优化一组连续可微的框架权重 A。但是在生成最终框架时,需要将这个权重离散化。

该工作的主要贡献包括:

提出 SDARTS,大幅提升了可微架构搜索算法的鲁棒性和泛化性。SDARTS 在搜索时优化 A 整个邻域的 络权重,而不仅仅像传统可微 NAS 那样只基于当前这一组参数。第一种方法优化邻域内损失函数的期望,没有提升搜索时间却非常有效。第二种方法基于整个邻域内的最差损失函数(worst-case loss),取得了更强的稳定性和搜索性能。

具体方法

传统 DARTS 使用一组连续的框架权重 A,但是 A 最终却要被投射到离散空间以获得最终架构。这一步离散化会导致 络性能大幅下降,一个高性能的连续框架并不意味着能生成一个高性能的离散框架。因此,尽管 DARTS 可以始终减少连续框架在验证集上的损失函数,投射后的损失函数通常非常不稳定,甚至会突变得非常大。

SDARTS-RS 基本随机平滑(random smoothing),优化 A 邻域内损失函数的期望。该研究在均匀分布中采样了随机噪声,并在对 络权重 w 进行优化前加到连续框架权重 A 之上。

SDARTS-ADV 基于对抗训练(adversarial training),优化邻域内最差的损失函数,这一方法希望最终搜索到连续框架权重 A 可以抵御最强的攻击,包括生成最终架构的离散化过程。在这里,我们使用 PGD (projected gradient descent)迭代获得当前最强扰动。

整个优化过程遵循可微 NAS 的通用范式,交替优化框架权重 A 和 络权重 w。

理论分析

这些理论分析进一步解释了为何 SDARTS 可以获得平滑的损失函数,在扰动下保持鲁棒性与泛化性。

实验结果

NAS-Benchmark-1Shot1 实验

如图 4 所示,DARTS 随着搜索进行生成的框架不断变差,甚至在最后的性能直接突变得很差。近期提出的一些新的改进算法,例如 NASP 与 PC-DARTS 也难以始终保持高稳定性。与之相比,SDARTS-RS 与 SDARTS-ADV 大幅提升了搜索稳定性。得益于平滑的损失函数,该研究提出的两种方法还具有更强的探索能力,甚至在搜索迭代了 80 轮之后仍能持续发现精度更高的架构。

CIFAR-10 实验

ImageNet 实验

与其他正则项方法比较

如表 4 所示,SDARTS 在这 12 个任务中的 9 个中包揽了前两名,SDARTS-ADV 分别平均超过 DARTS、R-DARTS (L2)、DARTS-ES、R-DARTS (DP) 和 PC-DARTS 31.1%、11.5%、11.4%、10.9% 和 5.3%。

声明:本站部分文章内容及图片转载于互联 、内容不代表本站观点,如有内容涉及侵权,请您立即联系本站处理,非常感谢!

(0)
上一篇 2020年7月14日
下一篇 2020年7月14日

相关推荐