AAAI2020 | 第四范式提出优化NAS算法,速度提高10倍!

2020 年 2 月 12 日 CVer

点击上方“CVer”,选择加"星标"或“置顶”

重磅干货,第一时间送达

本文转载自:AI科技评论
作者 | 第四范式
编辑 | 贾伟


论文地址:https://arxiv.org/abs/1905.13577

代码:https://github.com/xujinfan/NASP-codes


神经架构搜索(NAS)因其比手工构建的架构更能识别出更好的架构而备受关注。近年来,可微分的搜索方法因可以在数天内获得高性能的NAS而成为研究热点。然而,由于超级网的建设,其仍然面临着巨大的计算成本和性能低下的问题。

在本文中,我们提出了一种基于近端迭代(NASP)的高效NAS方法。与以往的工作不同,NASP将搜索过程重新定义为具有离散约束的优化问题和模型复杂度的正则化器。由于新的目标是难以解决的,我们进一步提出了一种高效的算法,由近端启发法进行优化。通过这种方式,NASP不仅比现有的可微分的搜索方法速度快,而且还可以找到更好的体系结构并平衡模型复杂度。

最终,通过不同任务的大量实验表明,NASP在测试精度和计算效率上均能获得更好的性能,在发现更好的模型结构的同时,速度比DARTS等现有技术快10倍以上。此外,NASP消除了操作之间的关联性。
 
此外,在WWW 2020的论文” Efficient Neural Interaction Functions Search for Collaborative Filtering”中,我们将NASP算法应用到了推荐系统领域,欢迎关注:

视频:https://www.tuijianxitong.cn/cn/school/video/26
PPT:https://www.tuijianxitong.cn/cn/school/openclass/27
论文:https://arxiv.org/pdf/1906.12091
代码:https://github.com/quanmingyao/SIF
 

背景介绍
 
深度网络已经应用到许多应用中,其中,适当的体系结构对于确保良好的性能至关重要。近年来,NAS因可以找到参数更少、性能更好的网络成为了关注和研究的热点,该方法可取代设计架构的人类专家。NASNet是这方面的先驱性工作,它将卷积神经网络(CNN)的设计为一个多步骤决策问题,并用强化学习来解决。
 
然而,由于搜索空间离散且巨大,NASNet需要数百个GPU耗费一个月的时间,才能获得一个令人满意的网络结构。后来,通过观察网络从小到大的良好传输性,NASNetA)提议将网络分割成块,并在块或单元内进行搜索。然后,识别出的单元被用作构建块来组装大型网络。这种两阶段的搜索策略极大地减小了搜索空间的大小,从而使进化算法、贪心算法、强化学习等搜索算法显著加速。
 
尽管减少了搜索空间,但搜索空间仍然是离散的,通常很难有效搜索。最近的研究集中在如何将搜索空间从离散的变为可微分。这种思想的优点在于可微空间可以计算梯度信息,从而加快优化算法的收敛速度。该思想已经衍生出了各种技术,例如DARTS平滑了Softmax的设计选择,并训练了一组网络;SNAS通过平滑抽样方案加强强化学习。NAO使用自动编码器将搜索空间映射到新的可微空间。

 
在所有这些工作中(Table 1),最为出色的是DARTS [1],因为它结合了可微分以及小搜索空间两者的优点,实现了单元内的快速梯度下降。然而,其搜索效率和识别体系结构的性能仍然不够令人满意。由于它在搜索过程中保持超级网,从计算的角度来看,所有操作都需要在梯度下降过程中向前和向后传播,而只选择一个操作。从性能的角度来看,操作通常是相互关联的。例如,7x7的卷积滤波器可以作为特例覆盖3x3的滤波器。当更新网络权值时,由DARTS构造的ensemble可能会导致发现劣质的体系结构。此外,DARTS未完成,即最终的结构需要在搜索后重新确定。这会导致搜索的体系结构和最终体系结构之间存在偏差,并可能导致最终体系结构的性能下降。
 
本次工作的方法

在此次工作中,第四范式提出了基于临近迭代算子算法(Proximal gradient Algorithm [2])的NAS方法(NASP),以提高现有的可微搜索方法的效率和性能。

我们给出了一个新的NAS问题的公式和优化算法,它允许在可微空间中搜索,同时保持离散的结构。这样,NASP就不再需要训练一个超级网,从而加快搜索速度,从而产生更优的网络结构。
 
该工作的贡献在于:

1、除了以往NAS普遍讨论的搜索空间、完备性和模型复杂度之外,该工作确定了一个全新且重要的一个因素,即NAS对体系结构的约束;
 
2、我们将NAS描述为一个约束优化问题,保持空间可微,但强制架构在搜索过程中是离散的,即在反向梯度传播的时候尽量维持少量激活的操作。这有助于提高搜索效率并在训练过程中分离不同的操作。正则化器也被引入到新目标中,从而控制网络结构的大小;
 
3、由于这种离散约束难以优化,且无法应用简单的DARTS自适应。因此,第四范式提出了一种由近端迭代衍生的新优化算法,并且消除了DARTS所需的昂贵二阶近似,为保证算法的收敛性,我们更进一步进行了理论分析。
 
4、最后,在设计CNN和RNN架构时,使用各种基准数据集进行了实验。与最先进的方法相比,提出的NASP不仅速度快(比DARTS快10倍以上),而且可以发现更好的模型结构。实验结果表明,NASP在测试精度和计算效率上均能获得更好的性能。

具体算法如下:


在第三步中,我们利用临近迭代算子产生离散结构;再在第四步中更新连续的结构参数(单步梯度下降,无二阶近似);最后,我们在离散的网络结构下,更新网络权重。
 
实验结果

该工作利用搜索CNN和RNN结构来进行实验。此次试验使用CIFAR-10、ImageNet、PTB、WT2等四个数据集。
 
CNN的架构搜 索(在CIFAR-10上搜索单元)

在CIFAR-10上搜索架构相同,卷积单元由N=7个节点组成,通过对单元进行8次叠加获得网络;在搜索过程中,我们训练了一个由8个单元叠加的50个周期的小网络。这里考虑两个不同的搜索空间。第一个与DARTS相同,包含7个操作。第二个更大,包含12个操作。

 
与最新的NAS方法相比,在相同的空间(7次操作)中,NASP的性能与DARTS(二阶)相当,比DARTS(一阶)好得多。在更大的空间(12个操作)中,NASP仍然比DARTS快很多,测试误差比其他方法更低很多。
 
在以上实验中,研究人员对模型复杂度进行了正则化,我们设置了的η=0。结果显示,模型尺寸随着η的增大而变小。

 
为了探索实验中搜索到的单元在ImageNet上的迁移能力,我们将搜索到的单元堆叠了14次。值得注意的是,NASP可以用最先进的方法实现竞争性测试误差。


RNN的架构搜索( 在PTB上搜索单元)

根据DARTS的设置,递归单元由N=12个节点组成;第一个中间节点通过线性变换两个输入节点,将结果相加,然后通过tanh激活函数得到;第一个中间节点的结果应为由激活函数转换而成。在搜索过程中,我们训练了一个序列长度为35的50个阶段的小网络。为了评估在PTB上搜索到单元的性能,使用所发现的单元对单层递归网络进行最多8000个阶段的训练,直到与批处理大小64收敛。实验结果显示,DARTS的二阶比一阶慢得多,NASP不仅比DARTS快得多,而且可以达到与其他最先进的方法相当的测试性能。


 
模型简化测试

1、对比DARTS

实验给出了更新网络参数(即w)和架构(即A)的详细比较。在相同的搜索时间内, NASP可以获得更高的精度,且NASP在相同的精度下花费更少的时间。这进一步验证了NASP比DARTS效率更高。


2、与同期工作比较


实验中也加入了与同期工作的比较。ASAP 与BayesNAS 将NAS作为一个网络修剪问题,该工作删除了在搜索过程中无效的操作。ASNG和GDAS都对搜索空间进行随机松弛,区别在于ASNG使用自然梯度下降进行优化,而GDAS使用Gumbel-Max技巧进行梯度下降。


此次实验将NASP与这些工作进行比较,实验表明,NASP更有效,可在CNN任务上提供更好的性能。此外,NASP还可以应用于RNN。
 

参考资料:

 
[1]. Liu, H.; Simonyan, K.; and Yang, Y. DARTS: Differentiable architecture search. In ICLR 2019
[2]. Parikh, N., and Boyd, S. Proximal algorithms. Foundations and Trends in Optimization 2013

推荐阅读


重磅!2020年AI算法岗求职群来了

吴恩达新书《机器学习训练秘籍》中文版来了(附PDF下载)


---End---

CVer学术交流群来了!想要了解最新最快最好的CV/DL/ML论文速递、优质开源项目、学习教程和实战训练等资料,欢迎加入CVer学术交流群。涉及图像分类、目标检测、图像分割、人脸检测&识别、目标跟踪、GANs、Re-ID、医学影像分析、姿态估计、OCR、SLAM、场景文字检测&识别、PyTorch和TensorFlow等方向。


扫码进群


▲长按关注我们

麻烦给我一个在看!

登录查看更多
1

相关内容

【KDD2020】最小方差采样用于图神经网络的快速训练
专知会员服务
27+阅读 · 2020年7月13日
【CVPR2020】用多样性最大化克服单样本NAS中的多模型遗忘
【CVPR2020-CMU】无数据模型选择,一种深度框架潜力
专知会员服务
22+阅读 · 2020年4月12日
专知会员服务
60+阅读 · 2020年3月19日
【Nature论文】深度网络中的梯度下降复杂度控制
专知会员服务
38+阅读 · 2020年3月9日
【Google】利用AUTOML实现加速感知神经网络设计
专知会员服务
29+阅读 · 2020年3月5日
李飞飞等人提出Auto-DeepLab:自动搜索图像语义分割架构
全球人工智能
5+阅读 · 2019年1月14日
干货 | 让算法解放算法工程师——NAS 综述
AI科技评论
4+阅读 · 2018年9月12日
神经网络架构搜索(NAS)综述 | 附AutoML资料推荐
AutoML 和神经架构搜索初探
极市平台
9+阅读 · 2018年8月8日
TResNet: High Performance GPU-Dedicated Architecture
Arxiv
8+阅读 · 2020年3月30日
EfficientDet: Scalable and Efficient Object Detection
Arxiv
6+阅读 · 2019年11月20日
Arxiv
5+阅读 · 2018年9月11日
Arxiv
3+阅读 · 2018年6月24日
Arxiv
5+阅读 · 2018年5月16日
Arxiv
5+阅读 · 2018年4月17日
VIP会员
相关VIP内容
相关论文
Top
微信扫码咨询专知VIP会员