分层表示的高级搜索结构

分层表示的高级搜索结果

摘要

我们探索了有效的神经网络搜索措施,并且已经表示了一种有效的进化算法能够发现新的架构实现优美的结果。我们的措施结合了一种新的层次基因被人类专家采用的,我们的算法有效地发现了架构由于大量人工设计的图像分类模型,在CIFAR-10算法上获得了top1的3.6%的误差和当移植到图像网络上为20.3%。这种算法与现有的最优秀的神经结构搜索方法具有很强的竞争力,代表了这项任务的进化策略的最新进展。我们的目前的得到的结果是用了随机搜索,实现了在CIFAR-10上少于top1的精确度,并且将搜索时间从36小时减少到1小时。da

1 引言

发现高性能的神经网络需要经历人类学家多年的实验和错误的广泛研究。就像提到的图像分类任务,目前最先进的卷积神经网络已经超越了深链结构布局,向着越来越复杂的图结构的拓扑结构前进。这种设计空间中的组合爆炸使得手工制作的架构不仅昂贵来获得,而且性能也可能不理想。
最近,人们越来越热衷于使用算法来自动化手工的算法架构的设计问题。他们的目标可能被形容为在给定的搜索空间中的寻找最优的架构,使得在给定的任务上验证准确性最大化。比较有代表性的体系架构搜索算法可以分为随机预测和权重预测算法,蒙特卡洛树搜索,进化算法,以及深度学习算法。其中,深度学习算法被说明为性能最强。
架构搜索在计算上非常密集,因为每个评估通常需要训练一个神经网络。因此,在限制搜索空间来减少复杂度和增加架构搜索的有效性,不同的限制已经被使用: 使用回溯连接和跳出连接。一个线性,一个有向图每个节点有两个预处理节点。在我们的工作中,我们追求一个可选的途径:除了直接限制搜索空间,我们允许架构来拥有灵活的网络拓扑结构,任意的有向无环图,当形成架构空间,通过利用层次结构生成架构。从一部分原语开始,如在底层的卷积和池操作,高层计算图,主题是通过使用低级的主题作为它们的构建块来形成的。层次结构顶部的图案被用来形成最终的神经网络,这种方法能够使搜索算法实现最有效的层次化结构,其中任何的图像的变化在整个网络及时传播。这类似于需要手工制作的体系结构中使用的模块化设计模式。在我们的例子中,在不同尺度上的块是自动通过进化和随机搜索发现的,其中神经网络的拓扑结构是同时伴随着其权重和参数。进化和随机架构搜索知道最近才对校准图像分类任务进项更大规模的研究。我们工作表明见搜索途径能够使用采用丰富的拓扑结构和全局层次结构的搜索空间,可以大大增强简单搜索的能力。
我们的实验类似于,其中一个架构发现使用深度学习在ImageNet上获得了最先进的性能。我们的工作揭示了随机或进化策略,到目前为止,已经被看做低效率的,可以实现规模和竞争力的表现(20.3%的误差,这个任务如果结合强大的结构表征,同时利用更少的计算资源。
总结起来,我们主要的贡献在于:
1.我们介绍了层次架构表示用来描述神经网络架构
2.我们发现即使是简单的随机搜索,也可以得到竞争性的图像分类结构,这表明了搜索空间选择的重要性
3.我们提出了一种高效,可拓展的进化搜索变体,进一步改进了结果,并在进化体系结构搜索技术中取得了最好的结果。

2 架构

我们第一次形容了神经架构的表示,其中每一个架构都通过有向无环图的primitive操作表示,然后我们面向架构表示,其中较小图形主题被重用为构建块来形成更当的主题,primitive的操作被

2.1 架构表示

我们考虑一个神经网络架构由单源和单接收器计算图组成的神经网络体系结构,它将源的输入转换为接收器的输出。图中的每个节点对应着一个特征图,并且每条有向边与一些primitive操作有关,并且将输入节点中的特征映射并将其传递到输出节点。
最终,一个架构被定义为表示(G,0),由两部分组成:
1. 一个变量操作池0 ={o1,o2}
2. 一个邻接矩阵G指定操作的神经网络图,其中Gij= k表示k-th的操作被放置在节点i和j之间
X3 = 合并(x2, x1)
一个例子表示三层的层次架构表示,底层表示level-1的primitive的集合进入level-2。顶层表示。架构arch通过装配操作o通过邻接矩阵G:
arch = assemble(G, 0)。结果神经网络从特征节点的拓扑图顺序计算每个节点的特征图,导致神经网络顺序地计算每个节点的i的特征图xi,结合拓扑序列。

three-level architecture representation
adjacency matrix 邻接矩阵
架构arch 通过集成操作o来生成邻接矩阵,arch = assemble(G, o)通过,导致串行引导神经网络,导致神经网络串行的计算出特征图xi,导致神经网络能够串行计算出每个节点的特征图xi,合并图
其中Gij = k,合并操作是一种组合多种特征图进入一种图,其中在我们的实验中通过深度方向的级连实现。一种可选择元素智能加法操作是不太灵活的,因为它要求传入的特征映射包括相同数量的管道。

2.2 层次架构表示

层次架构表示的核心观点是在不同层次架构上有几种不同的图案,其中构建高层次主题的时候,低级主题被重用为构建块操作。
考虑一个层次架构,其中l-th级包括Ml个图案,最高级别l = L只包括一个单层测对应着整个架构。最高级别只包括与完整体系结构相对应的一个主题。同时最低级别是primitive操作。我们递归om(l),作为低级主题的组成。
Om(l) = {o1(l-1)}

一个第n层的层次架构表示因此被定义为,同时它被motifs定一个第n层的层次架构表示因此被定义为,同时它被motifs定义为不同层的网络结构和底层的primitive的集合,装配的过程在
二. Primitive 操作
我们考虑在底层的层次上有六种primitive操作:
1*1 C层卷积
3*3 C渠道的深度卷积
3*3 C通道的可分卷积
如果应用,所有的primitive是跨越和卷积特征映射垫保护的,所有的元素都是跨越和卷积特征映射填充保持其空间分辨率。所有的卷积运算被正态化和LU分解。它们的种类被确定为一个常数C。我们标记有着较大的接收页面积,更多的通道可以表示为元语的图案,事实上,大的接收域可以通过链式结构,叠加3*3的卷积得到,有着更多管道的卷积能够通过合并多个深度方向的卷积级连输出
我们页介绍了一个特殊的op,这说明了在节点i和j之间没有边,它被添加到每个级别的操作池中。

3 进化式架构搜索

在神经网络架构进化式搜索上能够通过处理分支的表示来实现。我们第一次介绍操作空间来变化层次模型,和多元化的基础方案来获得初始的中去,我们接下来形容锦标赛选择和随机搜索,我们的分配的进化算法实现。

3.1 突变

一个分层基因型包括如下动作序列的突变
1 采样目标非原始级别l >= 2
2
3 举例在一个目标中随机的前驱者,一个随机的后继者
4 代替现在的操作
在现有的平的操作中存在着两层 ( 其中一层是primitive固定的层数 )。这一层能够总结为

尤其是突变足够有效去在目标主题上展示不同的调整,例如,
1 添加1条新边
2 调整一条存在的边
3 删除一条存在的边

3.2 初始化

为了初始化基因型的种群,我们采用如下的措施:
1.创建一个小事基因型,其中每个基因型被设定为恒等映射链
2.通过采用大量随机繁殖的操作使基因型多样化
算法1
数据队列包括初始化的数据种类,内存表记录评估的基因型和他们的适应度,参与者的数目为Nw,
异步进化
训练集T,有效集合,共享内存表和数据队列
1.弹出基因型
2.合并基因型生成架构
3.训练架构生成模型
4.通过验证集合评估适应度
5.共享存储表
与之前的工作不同,其中基因型通过平常的网络初始化,基于上述多样化的方案不仅提供了对搜索空间的良好初始化覆盖,而且具有不平凡的体系结构,且帮助避免了算一个附加的偏置通过手工初始化例程。事实上,这项简单的措施保证了初始化的架构是合理的而且是性能良好的,在没有任何搜索前,例如我们随机样例结果。
我们的进化算法基于锦标赛选择方法。从随机基因型的初始化种群中,旅游选择提供了一种机制能够从种群中挑选有希望的基因型。
搜索算法
我们的进化算法基于锦标赛选择。从随机基因型的初始化种群开始,锦标赛选择提供了一种机制。
一次赛制是通过基因型的随机组合通过现有的有效种群取样,其中种群中最高是印度支的赢得这次比赛。这种选择压力被种群的数量所控制,被设置为种群数量的5%。我们没有从种群中删除任何的基因型,而是允许它随着时间增长,保持架构多样性。我们的进化算法是相似的,但是与二进制锦标赛相比基因型更多。
我们也采用了随机搜索算法,一种更为简单的措施,基本上能够减少搜索时间。双方可以共享一张共享表内容,记录了基因型群体和适应度,以及数据队列。具体来说,一个控制器将从一个基因型变得有效的,然后选择所选基因型的突变,将其插入到q中进行模型分析。一位基因型将会取出未评估的基因型从队列Q,当其中的一个变得有效。完成训练和验证,然后记录验证的准确性。记得没有需要的同步性,同时所有的工作者在架构进化的过程都有参与。
为了使我们的算法尽可能的通用,架构总是在进化过程中伴随着随机权重初始化函数训练。我们不依赖于继承于将我们的将我们的系统合成。

4 实验结果

4.1 实验建立

在我们的实验中,我们使用提出的搜索框架来学习卷积细胞,能够采用更少的细胞来计算适应度函数,和更多的细胞用来模型评估。一个相同的途径被用在。
架构搜索已经被用在CIFAR-10 训练集上,其中我们能够将其分在40K的两个训练子集上和10K的验证图片上。备选模型已经被训练子集上训练,同时在验证子集上评估来获得适应度函数。一旦搜索阶段结束了,被选中的细胞被插入到一个大的模型中,其中
对图像进行随机的左右翻转,随机变换图像的亮度,随机变换图像的对比度
我们假设测试集合没有被用来模型选择,同时它只被用来做最后的模型评估,我们也评估这些细胞,从CIFAR-10上学习,在ImageNet的挑战数据集上的大规模设置。
图像分类模型建立使用了架构搜索的优化细胞方法,ImageNet模型用来学习细胞验证。
我们将3*3可分离卷积具有跨域。这部分目的主要是控制管道数以及降低空间分辨率。

4.2 关于方差的说明

我们发现优化的方差是不可忽略的,因为我们相信报告它是非常重要的,对于公平比较和评估模型的能力,当训练CIFAR模型时,我们已经观察到标准的偏离到0.2%,使用完全相同的配置,我们采用的解决方法是通过计算适应度函数值作为平常的精确在4组训练评估运行模型上。
对于我们从CIFAR-10模型上学习到的细胞架构,我们采用一个更大的模型(C0=64),就像图所示,更大的模型训练了80K步,从训练速率0.1,其中每次减少。剩余的其他因素的模型训练模型时相同的,我们报告了标准的偏离为了计算5个训练评估运行。
对于ILSVRC ImageNet训练数据集,我们使用了一种架构跟CIFAR相同的模型,有一些修改的,输入299*299的图像从32和64管道相连,并且不一样…一个输入299*299的图像,当训练CIFA模型,我们已经发现标准的偏离已经到0.2%,使用相同的建立模型,我们采用的解决方案,是计算适应度作为作为平均的精确度函数在4中训练评估运行时。
对于CIFAR-10的架构我们寻找到的细胞架构,我们是用了一个较大的模型伴随着参数c0=64和C=2,较大的模型已经训练了80K。对于ILSVRCImageNet的测试集,我们采用一种与CIFAR相似的模型,采用如下的改变的。我们采用SGD模型伴随并运行超过200K步,开始学习速率为0.1,其中我们没有采用辅助损失,权重平均,标签平滑和。训练增强函数和路径下井经验发现是有效的。训练扩大函数和相同的,并且组成了随机作物,水平翻转和亮度和对比度变化。我们发现单一种子在ILSVRC验证模型时top1和top5的。

适应度函数和参数的数量对于平滑和层次的表示。每个二级序是由1*1卷积和通道数相同的图案输入以减少参数数量。对于平面表示,我们采用11个节点的图来实现相当数量的边。左图用来表示基因型在每次进化中的适应度函数,适应度函数开始增长的很快,并且在一段时间后,变得停滞,中间的点表示最优的适应度函数值,因为,自从开始的200步后对应随机初始化和繁殖开始,在步骤200中找到的最佳体系架构对应于200种体系架构中的随机搜索输出。图3表示在小型网络中的参数的数目 ( 用于计算适应度函数)。尤其是,平坦的基因型得到更高的适应度函数值,但是在较大的参数计算的花费中。我们因此也考虑到参数约束的变量,其中只有在固定阈值具有参数个数的基因型才被允许。阈值选择,使平坦的基因型有类似数量的参数的层次结构之一。阈值选择,为了说明在层次架构地适应度数的值,
精确性的改进,小型模型时模型用来在进化过程中适应度函数的计算(它的完全适应度函数值是被视为红色曲线)。更大的模型是模型有着进化细胞结构用来训练和评估的。
只要架构搜索时间呗关注,它将会话费超过1个小时的时间来计算一个架构的函数。是用了200个GPU,它花费了1个小时来使用随机搜索算法同时使用超过1.5天来做启发式搜索花费了超过7000步。
在CIFAR-10和ImageNet上的架构评估
我们现在调整向评估架构采用随机和进化式搜索,一开始我们发现随机成立的架构性能已经非常的好了,其中我们求助于我们架构空间的表示性能,第二,随机搜索在200架构实现了非常具有竞争性的结构在CIFAR-10和ImageNet图像中,这是非常具有纪念意义的,并且话费一个小时来时实现,这说明构建的非常好的基因架构表示,再加上多样化的抽样和简单的搜搜,形成了一个简单但是强大的搜索基准。最终,分层次表示更好,从适应度函数函数的计算制度推广到了成熟的模型训练,并且由于所有的搜索设置的表示
我们最好的结果是现在使用层次表示的进化。结果模型在附录1中被可视化,我们在CIFAR-10测试集上实现了3.75+-0.12%的分类错误。在图像分类中,我们实现了20.3%的分类错误和5.2%的。我们的ImageNet模型中有着64M个参数。

5 结论

我们已经表示了一种简单有效的措施能够自动的辨别出高效的架构,基于新型的层次表示方案,需要一些更小的操作能够自动的发现和自动利用并建立出模块来组成更大。显而易见的,我们展示了获得强大的结果能够使用简单的搜索算法其中伴随着有效的架构表示,我们最好的架构产生在进化策略的最新成果和成功的尺度,以及极具竞争力的模型上。


[1] Bowen Baker, Otkrist Gupta, Nikhil Naik, and Ramesh Raskar. Designing neural network architectures
[2]using reinforcement learning. arXiv preprint arXiv:1611.02167, 2016.
Andrew Brock, Theodore Lim, JM Ritchie, and Nick Weston. Smash: One-shot model architecture
search through hypernetworks. arXiv preprint arXiv:1708.05344, 2017.
Franc¸ois Chollet. Xception: Deep learning with depthwise separable convolutions. arXiv preprint
arXiv:1610.02357, 2016.
Dario Floreano, Peter Durr, and Claudio Mattiussi. Neuroevolution: from architectures to learning. ¨
Evolutionary Intelligence, 1(1):47–62, 2008.
David E Goldberg and Kalyanmoy Deb. A comparative analysis of selection schemes used in genetic
algorithms. Foundations of genetic algorithms, 1:69–93, 1991.
Frdric Gruau, L’universite Claude Bernard lyon I, Of A Diplome De Doctorat, M. Jacques Demongeot,
Examinators M. Michel Cosnard, M. Jacques Mazoyer, M. Pierre Peretto, and M. Darell
Whitley. Neural network synthesis using cellular encoding and the genetic algorithm., 1994.
Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Deep residual learning for image recognition.
In Proceedings of the IEEE conference on computer vision and pattern recognition, pp.
770–778, 2016a.
Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Identity mappings in deep residual
networks. In European Conference on Computer Vision, pp. 630–645. Springer, 2016b.
John Henry Holland. Adaptation in natural and artificial systems: an introductory analysis with
applications to biology, control, and artificial intelligence. MIT press, 1975.
Gao Huang, Zhuang Liu, Kilian Q Weinberger, and Laurens van der Maaten. Densely connected
convolutional networks. arXiv preprint arXiv:1608.06993, 2016.
Sergey Ioffe and Christian Szegedy. Batch normalization: Accelerating deep network training by
reducing internal covariate shift. In International Conference on Machine Learning, pp. 448–456,
2015.
Hiroaki Kitano. Designing neural networks using genetic algorithms with graph generation system.
Complex systems, 4(4):461–476, 1990.
Gustav Larsson, Michael Maire, and Gregory Shakhnarovich. Fractalnet: Ultra-deep neural networks
without residuals. arXiv preprint arXiv:1605.07648, 2016.
Risto Miikkulainen, Jason Liang, Elliot Meyerson, Aditya Rawal, Dan Fink, Olivier Francon, Bala
Raju, Arshak Navruzyan, Nigel Duffy, and Babak Hodjat. Evolving deep neural networks. arXiv
preprint arXiv:1703.00548, 2017.
Geoffrey F Miller, Peter M Todd, and Shailesh U Hegde. Designing neural networks using genetic
algorithms. In ICGA, volume 89, pp. 379–384, 1989.
Renato Negrinho and Geoff Gordon. Deeparchitect: Automatically designing and training deep
architectures. arXiv preprint arXiv:1704.08792, 2017.
Esteban Real, Sherry Moore, Andrew Selle, Saurabh Saxena, Yutaka Leon Suematsu, Quoc Le, and
Alex Kurakin. Large-scale evolution of image classifiers. arXiv preprint arXiv:1703.01041, 2017.
Olga Russakovsky, Jia Deng, Hao Su, Jonathan Krause, Sanjeev Satheesh, Sean Ma, Zhiheng
Huang, Andrej Karpathy, Aditya Khosla, Michael S. Bernstein, Alexander C. Berg, and Fei-Fei
Li. Imagenet large scale visual recognition challenge. International Journal of Computer Vision,
115(3):211–252, 2015.
10
Karen Simonyan and Andrew Zisserman. Very deep convolutional networks for large-scale image
recognition. arXiv preprint arXiv:1409.1556, 2014.
Kenneth O Stanley. Compositional pattern producing networks: A novel abstraction of development.
Genetic programming and evolvable machines, 8(2):131–162, 2007.
Kenneth O Stanley and Risto Miikkulainen. Evolving neural networks through augmenting topologies.
Evolutionary computation, 10(2):99–127, 2002.
Kenneth O Stanley, David B D’Ambrosio, and Jason Gauci. A hypercube-based encoding for evolving
large-scale neural networks. Artificial life, 15(2):185–212, 2009.
Christian Szegedy, Wei Liu, Yangqing Jia, Pierre Sermanet, Scott Reed, Dragomir Anguelov, Dumitru
Erhan, Vincent Vanhoucke, and Andrew Rabinovich. Going deeper with convolutions. In
Proceedings of the IEEE conference on computer vision and pattern recognition, pp. 1–9, 2015.
Christian Szegedy, Vincent Vanhoucke, Sergey Ioffe, Jon Shlens, and Zbigniew Wojna. Rethinking
the inception architecture for computer vision. In Proceedings of the IEEE Conference on
Computer Vision and Pattern Recognition, pp. 2818–2826, 2016.
Christian Szegedy, Sergey Ioffe, Vincent Vanhoucke, and Alexander A Alemi. Inception-v4,
inception-resnet and the impact of residual connections on learning. In AAAI, pp. 4278–4284,
2017.
Lingxi Xie and Alan Yuille. Genetic cnn. arXiv preprint arXiv:1703.01513, 2017.
Saining Xie, Ross Girshick, Piotr Dollr, Zhuowen Tu, and Kaiming He. Aggregated residual transformations
for deep neural networks. arXiv preprint arXiv:1611.05431, 2016.
Xin Yao. Evolving artificial neural networks. Proceedings of the IEEE, 87(9):1423–1447, 1999.
Sergey Zagoruyko and Nikos Komodakis. Wide residual networks. arXiv preprint
arXiv:1605.07146, 2016.
Zhao Zhong, Junjie Yan, and Cheng-Lin Liu. Practical network blocks design with q-learning. arXiv
preprint arXiv:1708.05552, 2017.
Barret Zoph and Quoc V Le. Neural architecture search with reinforcement learning. arXiv preprint
arXiv:1611.01578, 2016.
Barret Zoph, Vijay Vasudevan, Jonathon Shlens, and Quoc V Le. Learning trans

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页