神经架构搜索一直被认为是高算力的代表。虽然可微分架构搜索的概念非常吸引人,但其目前的效率还不如效果还是差强人意。在最近的AAAI2020中,第四范式提出了一种基于ProximalIterations的NAS方法,比DARTS快10倍以上。神经架构搜索(NAS)因其识别比手工构建的架构更好的架构的能力而备受关注。近年来,可微搜索方法成为研究热点,因为它们可以在几天内获得高性能的NAS。但是,由于超网的构建,它仍然面临着巨大的计算成本和低性能的问题。在本文中,我们提出了一种基于近端迭代(NASP)的高效NAS方法。与之前的工作不同,NASP将搜索过程重新表述为具有离散约束和模型复杂性正则化项的优化问题。由于新目标是棘手的,我们进一步提出了一种通过近端启发式优化的有效算法。这样,NASP不仅比现有的可微分搜索方法更快,而且可以找到更好的架构并平衡模型的复杂性。最后,针对不同任务的大量实验表明,NASP在测试精度和计算效率上均能取得更好的性能。在发现更好的模型结构的同时,速度比DARTS等现有技术快10倍以上。此外,NASP消除了操作之间的依赖性。论文:https://arxiv.org/abs/1905.13577代码:https://github.com/xujinfan/NASP-codes另外,在WWW2020论文《EfficientNeuralInteractionFunctionsSearchforCollaborativeFiltering》中,我们将使用NASP算法应用于推荐系统领域:视频:https://www.tuijianxitong.cn/cn/school/video/26PPT: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使用自动编码器将搜索空间映射到新的可微空间。在所有这些工作中(表1),最为突出的是DARTS[1],因为它结合了可微性和搜索空间小的优点,实现了单元内的快速梯度下降。然而,其在搜索效率和识别架构方面的表现仍然不尽如人意。由于它在搜索过程中维护了一个超网,从计算的角度来看,所有的操作都需要在梯度下降过程中向前和向后传播。从性能的角度来看,操作通常是相互关联的。例如,7x7卷积滤波器可以作为3x3滤波器的特例来涵盖。DARTS构建的集成会导致在更新网络权重时发现质量较差的架构。另外,DARTS的最终结构需要搜索后重新确定。这会导致搜索到的架构与最终架构之间存在偏差,并可能导致最终架构的性能不佳。FasterandStrongerProximityIteration在这项工作中,第四范式提出了一种基于ProximalgradientAlgorithm[2]的NAS方法(NASP),以提高现有可微搜索方法的效率和性能。我们针对一个新的NAS问题提出了一种公式化和优化算法,该算法允许在可微分空间中进行搜索,同时保持离散结构。这样一来,NASP不再需要训练超网,从而加快了搜索速度,从而得到更优的网络结构。这项工作的贡献在于:除了以往NAS普遍讨论的搜索空间、完备性和模型复杂度之外,这项工作确定了一个新的重要因素,即NAS对架构的约束;我们将NAS描述为一个Constraintoptimizationproblems保持空间可微,但在搜索过程中强制架构离散,即在反向梯度传播过程中尽量保持少量的激活操作。这有助于提高搜索效率并在训练期间分离不同的操作。新目标中还引入了正则化器来控制网络结构的大小;由于这种离散约束难以优化,因此无法应用简单的DARTS自适应。因此,第四范式提出了一种新的基于近端迭代的优化算法,并消除了DARTS所需的昂贵的二阶近似。为了保证算法的收敛性,我们进一步进行了理论分析。最后,在设计CNN和RNN架构时使用各种基准数据集进行实验。与最先进的方法相比,所提出的NASP不仅速度快(比DARTS快10倍以上),而且可以发现更好的模型结构。实验结果表明,NASP在测试精度和计算效率上均能取得更好的性能。具体算法如下:第三步,利用相邻迭代算子生成离散结构;第四步,更新连续结构参数(单步梯度下降,无二阶逼近);最后,在离散网络结构下,更新网络权值。实验结果这项工作利用搜索CNN和RNN架构进行实验。本实验使用了四个数据集,包括CIFAR-10、ImageNet、PTB和WT2。CNN的架构搜索1.CIFAR-10上的搜索单元CIFAR-10上的搜索架构相同,卷积单元由N=7个节点组成,网络由单元叠加8次得到;在搜索过程中,我们训练了一个由8个单元叠加组成的50个周期的小网络。这里考虑了两个不同的搜索空间。第一个与DARTS相同,包含7个操作。第二个更大,包含12个操作。与最先进的NAS方法相比,NASP在相同空间(7个操作)中的性能与DARTS(二阶)相当,比DARTS(一阶)好得多。在更大的空间(12个操作)下,NASP仍然比DARTS快很多,测试误差也比其他方法低很多。在上述实验中,研究人员对模型复杂度进行了正则化处理,我们设置η=0。结果表明,模型尺寸随着η的增加而减小。2.迁移到ImageNet为了探索搜索单元在ImageNet上的实验中的可迁移性,我们将搜索单元堆叠了14次。值得注意的是,NASP可以使用最先进的方法实现有竞争力的测试错误。RNN的架构搜索1.PTB上的搜索单元根据DARTS的设置,递归单元由N=12个节点组成;第一个中间节点对两个输入节点进行线性变换,将结果相加,然后通过tanh激活函数得到;第一个中间节点的结果应该通过激活函数进行转换。在搜索过程中,我们训练了一个包含50个阶段、序列长度为35的小型网络。为了评估搜索单元在PTB上的性能,使用找到的单元对单层递归网络进行多达8000轮训练,直到与批量大小收敛of64.实验结果表明,DARTS的二阶比一阶慢很多,NASP不仅比DARTS快很多,而且可以达到与其他state-of-the-art方法相媲美的测试性能.模型简化测试1.比较DARTS实验给出了更新的网络参数(即w)和架构(即A)的详细比较。同样的搜索时间,NASP可以达到更高的准确率,同样的准确率,NASP花费的时间更少。这进一步验证了NASP比DARTS更高效。2、与同期工作的比较在实验中,还增加了与同期工作的比较。ASAP和BayesNAS将NAS视为网络剪枝问题,在搜索过程中去除无效操作。ASNG和GDAS都对搜索空间进行随机松弛,不同之处在于ASNG使用自然梯度下降进行优化,而GDAS使用Gumbel-Maxtrick进行梯度下降。本实验将NASP与这些作品进行比较,表明NASP更有效,可以在CNN任务上提供更好的性能。另外,NASP也可以应用到RNN中。[1].刘,H。西蒙尼安,K.;和Yang,Y.DARTS:可区分的架构搜索。在ICLR2019[2]中。Parikh,N.和Boyd,S.近端算法。2013年优化的基础和趋势
