没有合适的资源?快使用搜索试试~ 我知道了~
经济型神经架构代理搜索方法:基于演进的EcoNAS实现了显著的搜索时间减少
11396EcoNAS:寻找经济型神经架构的代理搜索周东展1周新驰1张 文伟2陈变来2帅毅3张学森3欧阳万里11悉尼大学SenseTime计算机视觉研究小组,澳大利亚2南洋理工大学3商汤科技{d.zhou,xinchi.zhou1,wanli. zhou}@ sydney.edu.au{wenwei001,ccloy}@ ntu.edu.sg{易帅,张学森}@ sensetime.com摘要神经架构搜索(NAS)在许多计算机视觉任务中取得了重大进展。虽然已经提出了许多方法来提高NAS的效率,但搜索过程仍然很费力,因为在大搜索空间上训练和评估合理的架构是耗时的。在代理下评估网络候选(即,计算上减少的设置)因此变得不可避免。在本文中,我们观察到,大多数现有的代理表现出不同的行为,在保持网络候选人之间的排名consideration。特别是,一些代理可以更可靠-候选人的排名没有太大的不同,比较他们的降低设置性能和最终性能。本文系统地研究了几种广泛采用的约化因子,并报道了我们的观察结果.受这些观察的启发,我们提出了一个可靠的代理,并进一步制定了分层代理策略。该策略将更多的计算花费在可能更准确的候选网络上,同时使用快速代理在早期丢弃不太有希望的网络。 这就产生了一种经济的基于演进的NAS(EcoNAS),与基于进化的状态相比,它实现了令人印象深刻的400倍搜索时间减少,艺术[19](8 vs. 3150 GPU天)。 一些新的代理由我们的观察所引导的方法也可以应用于加速其他NAS方法,同时仍然能够发现性能与以前的代理策略所发现的性能相匹配的良好的候选网络。1. 介绍神经结构搜索(NAS)在许多计算机视觉任务中受到广泛关注并取得了重大进展,例如图像分类[9,19,26,31],检测[6,8,24]和语义分割[13]。Al-*同等缴款。图1. CIFAR-10上不同NAS方法的搜索成本和准确性比较简单地用更一致和有效的代理替换原始代理可以降低DARTS[16]和AmoebaNet [19]的搜索成本。所提出的EcoNAS使用了一种高效的代理,采用了一种新颖的分层代理策略,与AmoebaNet相比,减少了约400倍的搜索成本,并实现了具有竞争力的性能[19]。虽然最近的NAS方法[14,16,18]从早期的工作[30]改进了搜索效率,但是搜索过程仍然是耗时的,并且当在大的搜索空间中搜索时需要大量的计算开销,因为所有的网络候选都需要被训练和评估。一种广泛采用的缓解该问题的方法是通过在代理下训练和评估网络候选(即,计算简化设置[16,18,19,31])。有四个常见的缩减因子,即CNN的通道数(c)、输入图像的分辨率(r)、训练时期的数量(e)和整个训练集的样本比(s)。这些缩减因子或者降低网络的计算成本,或者减少训练迭代以节省搜索时间。虽然引入代理听起来很有吸引力,但需要注意的是,不同的缩减因子在保持网络候选者之间的排名一致性方面表现出不同的行为。我们观察到,一些架构应用了一定的减少,11397因子在简化设置中获胜,但在CIFAR-10的原始设置中表现较差[12]。其他一些减少因子的表现更为一致。这些一致和有效的简化设置加速了现有的NAS方法,并实现了如图所示的竞争结果。1.一、在这项工作中,我们研究了约化因子[c,r,s,e]的行为。获得了两个主要观察结果(1) 使用相同的迭代次数,使用更多的训练训练次数少的样本比训练次数多和训练样本少的样本在降低秩不一致性方面更有效;(2)降低输入图像的分辨率有时是可行的,而减少网络的通道比降低分辨率更可靠。上述观察促使我们设计可靠的代理,减少通道和输入分辨率,同时使用所有的训练样本。这些新代理很好地应用于许多NAS方法,包括基于进化和基于梯度的NAS方法[5,16,19]。特别是,我们观察到一致的搜索时间减少时,这些新的代理被应用,而发现的网络工程是类似的竞争力,发现由原始的NAS方法。我们进一步制定了一个新的分层代理策略的进化为基础的NAS。分层代理策略的目标是用更快的代理更早地丢弃不太有希望的候选者,并用更昂贵的代理评估更有希望的候选者。该战略既有效又高效:(1)这种设计通过节省对不太有前途的网络的评估而节省了大量的计算开销,并且(2)将更多的资源分配给更有前途的网络有助于我们更精确地找到好的架构。由于分层代理策略,所提出的生态-标准的基于进化的NAS(EcoNAS)享有近400倍的搜索时间减少(8比. 3150 GPU天),与基于进化的最新技术水平[19]保持一致,同时保持相当的性能。总结起来,我们的主要贡献如下:1. 我们进行了广泛的实验,研究常用的减少因素。虽然减少因素的不一致性在社区中是众所周知的,但我们的工作首次尝试系统地分析行为。2. 从实验中观察到一些快速可靠的代理,适用于广泛的NAS方法,包括基于进化的NAS [19]和基于梯度的NAS方法[5,16]。3. 我们提出了一个分层代理策略,导致EcoNAS,减少搜索时间要求从数千GPU天不到10 GPU天。2. 相关工作神经架构搜索。NAS的目标是在一个精心设计的搜索空间NAS的一种常见方法是在代理上训练和评估每个网络候选,即,计算减少设置,并搜索架构使用进化算法(EA)[2,15,19,20],重新非线性学习(RL)[14,18,29,30,31],或梯度-方法[16,26]。One-Shot方法[3,4,9]通常训练一次覆盖搜索空间的超网,然后应用搜索算法在该超网中搜索最佳路径作为搜索架构。在Zoph和Le [30]的开创性工作之后,需要数百个GPU天来找到一个好的架构,许多NAS方法[14,16,18]试图通过不同的方法来降低搜索成本。社区首先转向搜索主要建筑单元,而不是整个网络[29,31]。基于单元搜索,一些方法尝试使用基于学习曲线[2]或代理模型[14]的性能预测来加快评估过程。子模型之间的参数共享对于加速也是常见的,在DARTS [16],ENAS [18]和One-Shot方法[3,4,9]中。我们的EcoNAS是一种基于进化的NAS方法[2,15,19,20]。与以往网络结构搜索时固定代理不同,本文设计了一种快速、一致的代理以减少搜索时间,并采用分层代理策略提高搜索效率。值得注意的是,NAS的另一个趋势是通过在搜索过程中添加限制(例如特定平台上的延迟[10,22,25])来搜索有效的架构[5,10,22,25]。这与我们通过更仔细和系统的代理设计来降低搜索成本的重点不同。加速神经网络训练。并 行 计算[1,27,28]可以显著加速深度神经网络的训练过程。虽然这些方法将训练时间节省到几分钟,但训练时间的减少伴随着数千个GPU的成本,并且它们的计算开销仍然很大。许多研究[7,17,23]评估了不同网络在简化设置下的性能,例如,在Tiny中使用较小的图像ImageNet挑战1,使用网络层的编码[7],减少训练迭代次数[17],减少样本[23]。这些研究假设特定的简化设置具有足够的一致性,因此未评估不同简化设置的影响。相比之下,我们广泛地评估了不同简化设置的影响。3. 勘探研究在这项研究中,我们调查了不同的简化设置的行为。以往的研究还没有全面系统地研究这一问题。为了方便我们的研究,我们构建了一个包含50个网络的1https://tiny-imagenet.herokuapp.com11398c(r)00表1. CIFAR-10的折减系数的具体值[12]。对于cx和rx的值,如果(1/1/2)x (x是下标)是一个整数,则直接取整数(c2,r2)。否则,最近的选择可被4整除的数折减系数01234C362418128R322416128S1.00.50.250.125e306090120图2.网络结构概览。(a)整个网络(N=6)的细胞堆叠方法。(b)细胞之间的联系。(c)一般的单元结构,其中节点0,1是输入节点。(d)在单元中构造节点2、3、4用于比较应用减小的设置之前和之后的等级一致性。模型动物园中的每个网络都是一堆由随机抽样生成的交替的正常细胞和约简细胞[14,18,31]。细胞可以被视为一个有向非循环图,包括节点的有序序列。每个节点是卷积网络中的一个特征图,每个有向边与要搜索或随机采样的操作相关联。整个网络结构和小区的一个例子如图所示。2(a)和图2(c)中所述的方法。详情见附录。3.1. 减少因子(a) 小ρsp(b)大ρsp图3.小ρsp(a)和大ρsp(b)的可视化。图中每个点的x、y坐标分别代表某个模型在原始和简化设置中的等级。例如,点(31,10)意味着该模型的秩在原始设置中为31,但在缩减设置中增加到10评估准确度预测器的性能。在我们的工作中,我们使用该度量来测量原始设置和缩减设置之间的秩的依赖性,简化的设置用于对模型动物园中的模型进行排序。假设模型zoo有K个网络,ρsp的公式为:ΣK2在我们的实验中,减少的设置对应于6ρ= 1−i=1di 、(1)四个因素的组合:(1)CNN的通道数(c),(2)输入图像的分辨率(r),(3)训练时期(e),以及(4)采样率(s)。c、r和s的减少程度由下标0、1、2、3、4表示。CIFAR-10数据集[12]中每个减少因子下标的具体值e下标是整数,例如,E30表示30个训练时期。c的值是指初始卷积单元中的通道数。对于样本比率s,我们根据s的值从训练数据中随机选择一个子集,然后在这个子集上训练网络。 对于CIFAR-10(c0,r0,s0,e600)对应于原始或常规设置[16],使用36个初始通道和32×32输入图像。所有训练样本都用于600个epoch的训练。相比之下,(ca,rb,sc,ex)对应于需要大约1/2a+b+cFLOP的减小的设置,即,2a+b+c与(c0,r0,s0,ex)相比速度提高。3.2. 评估指标我们使用Spearman系数,表示为ρsp,作为评估简化设置的可靠性的度量。同样的度量也被用于[14],但它被用于评估。spK(K2−1)其中di是网络i在其原始设置中的排名与其在缩减设置中的排名之间的差异较高的斯皮尔曼系数对应于更可靠的简化设置。在可靠的简化设置中发现的架构更有可能在原始设置中保持高等级。例如图3示出了两种不同的简化设置,即,一个具有小ρsp(图3(a)),另一个具有大ρsp(图3(b))。当ρsp较大时,同一模型的降阶设置与初始设置之间的秩相关性增大。这表明当从缩减设置切换到原始设置时等级的平均变化很小;因此,减小的设置更加一致和可靠。当ρsp较小时,从简化设置获得的秩不太可靠。在原始设置中具有低秩和高秩的模型在缩减设置中分别更频繁地排名高和低。3.3. 实验观察我们尝试不同的组合的减少因素,并调查之间的排名一致性的原始和113990.850.80Z0.750.700.8r10的 R10.8 0.4 0.8−0.9−0.4ee12090−0.920.4eR3XR4-0.760e30Y图4.因素s和e的影响。Y轴是平均值(a) cxr0s0ey(b) c0rxs0ey25种不同简化设置的年龄ρsp,仅c和r不同但是具有相同的S和E。图6. cxr0s0ey(a)和c0rxs0ey(b)的三维条形图,x ∈[0,1,2,3,4],y∈[30,60,90,120]。 我们还展示了每个维度的熵靠近X和Y轴。图5.折减系数c和r的3D条形图。The X-Y plane shows all thecombinations of c and r, and Z-axis represents the correspondingρsp.我们可以通过杆的高度直接比较ρsp。在X轴和Y轴附近标记的值是熵,用于评估ρsp对应于r或c的变化的单调增加或减少趋势。在CIFAR- 10数据集上通过Spearman系数减少设置[12]。实验设置见附录。得出以下两个有用的结论:1) 在相同的迭代次数下,使用更多的训练-使用具有较少训练时期的样本比使用较多训练时期和较少训练样本更一致。我们首先分析了样本率s和训练时期e的影响。如表1所示,对于s和e的每种组合,c和r有25种组合。如图4、Spearman系数ρ sp随着历元数和采样率的增加而增加。因此,秩一致性随着更多的训练时期和/或更多的训练样本而改善。ρsp从30个历元到60个历元的增加是最明显的,之后更多历元带来的好处变得不那么明显。当比较具有相同迭代次数的简化设置对时,例如cx rysez和cx ry s1e2z,其中x,y∈ {0,1,2,3,4},z∈{30,60}),结果表明,使用较少的epoch但在每个epoch中使用更多的样本进行训练比训练更好。使用更多的时期,但更少的样本,特别是在训练更多的迭代时。考虑到计算消耗和收益之间的权衡,我们发现组合s0e60是比其他组合更优化的设置。2) 降低输入图像的分辨率有时是可行的,而减少网络的通道更多图7. ρsp值随精度差距的增加而变化。X轴是训练结束时训练数据集和测试数据集之间模型动物园中网络准确度的平均差。该差异评估了不同简化设置下的过拟合程度。Y轴是每个降低设置的相应ρsp。比降低分辨率更可靠。 我们进一步分析了在我们以前的实验中发现的固定s0e60的缩减因子c和r图中的3D条形图。图5显示了ρ sp沿c(X轴)和r(Y轴)方向的变化。Z轴表示每个cx ry设置的ρsp,由条形的高度表示。我们用一种称为熵的度量ρe来表示ρsp沿约化因子的特定维数的单调性。该测量的详细信息见附录。熵的范围从-1到1。熵的绝对值接近于1,表明目标集沿该维有明显的单调递增或递减趋势,只有很少的小波动。相反,如果熵的绝对值相对较小,例如,小于0.5,则沿该维度的单调增加或减少趋势不太明显。As shown by the values of entropy close to the Y -axis inFig. 5, the trend along the reduction factor c is obvious.对于大多数固定的r设置,更少的通道导致更好的行为减少设置,除了少数点,c2r2。接近X轴的熵的变化表明,对于固定的c,沿着r的趋势并不明显。但在大多数情况下,较小的r将导致较小的ρsp,这表明降低分辨率是不可靠的。图6(a)显示了c和e的影响,其中其他两个因子固定为r0s0。 熵接近 Y轴表明,对于相同数量的历元,c的降低将增加ρsp,这与0.900.85 Z0.800.75−0.6C4-0.50.9C3-0.80. 31.0r0C2 c1−0.90.90.6r10.7rX了c0R4R32Y0.900.85Z0.800.750.8C 4 c1.03C0.90.91.0e120X2c0.6e1c00.80.8 e30e6090YρspρspρspR11400图8.CIFAR-10上不同简化设置的等级一致性和加速比X轴表示原始设置下的FLOP与降低设置下的Y轴提供了相应的ρsp(方程式:① ①)。减少的设置沿着X轴变得更有效,并且在沿着Y轴对不同网络候选者进行排名时变得更加一致。蓝色的点显示所有的减少设置,橙色的点是好的,绿色的点是推荐的。结果在Fig. 5、相同的分辨率。然而,较低的分辨率导致较小的ρ sp,这也与图1中的结果一致。5.图6(a)和图6(b)。图6(b)表明,更多的历元提高了ρ sp,这也验证了图6(b)中的结果。4.结果表明,该方法是可行的。图5和图6(a)表明,减少通道数将导致ρ sp的增加,这意味着可以通过较少的通道以较少的计算和内存实现更可靠的设置。图7还说明了这种现象,其中训练数据集和测试数据集之间的通道越少,精度差异越小。这种现象可能是由于同一体系结构的参数数量减少时的过拟合造成的。我们假设过度拟合对秩一致性有不利影响。4. 基于经济进化的NAS基于上一节的研究,我们提出了基于经济进化的NAS(EcoNAS),这是基于进化的最新技术的加速版本[19]。现有的基于进化的NAS方法[2,15,19,20]由于在没有希望的网络上浪费时间而遭受大的计算成本。注意先前的观察(第二节)。3.3),我们设计了一个更有效和一致的代理(第3.3节)。4.1)大大降低了搜索成本。然后,我们提出了一个分层的代理策略,训练网络与不同的代理基于各自的准确性。这进一步提高了搜索效率,更专注于良好的架构,并使用最准确的进化。搜索策略和算法流水线在第2节中描述。四点二。4.1. 高效代理为了用更有效的方法取代以前NAS方法中的原始代理[19,31],我们进一步分析了200个重新计算的FLOP和ρsp降低设置,并提供经验的结果,良好的减少设置。我们将加速比分为不同的组,并列出在每组中表现最好的简化设置。我们还比较了两个减少设置在以前的作品[19,31],其中堆栈数量N的设置到2.在NASNet [31]中,简化设置为c0r0s0e20,在AmoebaNet [19]中,设置为c1r0s0e25。这两个减少设置表现出较少的一致性,如图所示。8.图8表明,大幅减少计算开销的代理不一定具有差的秩一致性。有许多好的简化设置同时具有大加速比和高一致性,正如图中的橙色点。8.图中的边界点。8显示许多推荐的还原设置包括c4,e90,e120。这一观察结果验证了我们之前关于更多时代和更少通道的好处的结论。 我们采用简化设置c4r4s0e60 在EcoNAS中,因为这种降低的设置表现出相对较高的一致性和加速比,如图中的绿点所示。8.这些降低的设置的精确值如表1所示。在这个减少的设置下,我们将批量大小从96扩大到384,以进一步压缩搜索时间。4.2. 分层代理虽然我们找到了一个有效且一致的代理,但我们观察到,使用相同的代理来训练和评估每个架构仍然会损害搜索效率,因为没有前途的网络会占用很多时间,浪费大部分搜索时间。解决这个问题的一个直观方法是基于我们新设计的一致代理进一步减少训练时期。该策略可以更快地发现和丢弃不准确的架构,但是,从这种具有更少训练时间的代理中找到的最佳模型可能不是因为在给定较少的训练时期的情况下,一致性将降低。因此,我们提出分层代理策略作为一种权衡,以精确地排名良好的架构,并节省时间,从评估没有前途的网络。人口设置完毕。 我们将群体集分为三个子集P1、P2、P3,分别包含低、中、高精度网络和小、中、高概率变异网络。 对于从P1到P3的集合中的网络,网络是用更快但不太一致的代理进行训练的(基于第二节中的观察)。3.3)。 我们设计这三个代理共享相同的c,r,s,但训练网络具有3个E,2个E和Eepoch用于P3,P2和P1(例如,90、60和30(如果E=30)。 我们采用这种设计,因为它利用了重量共享策略,它是简单的。例如,当几个新变异的网络在训练E个epoch后仍然存在时,我们只需要再训练E个epoch来更精确地对它们进行排名,而不是从头开始训练一个新的代理。分层代理的更多样化代理11401算法1EcoNAS算法1:PE=φ;P2E=φ;P3E=φ2:d群体Pk表示训练了k个时期的网络3:T雨(模型,a,b)4:d训练模型的函数,从epocha开始,总共b−aepoch5:历史=φ6:当|PE|
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Fisher Iris Setosa数据的主成分分析及可视化- Matlab实现
- 深入理解JavaScript类与面向对象编程
- Argspect-0.0.1版本Python包发布与使用说明
- OpenNetAdmin v09.07.15 PHP项目源码下载
- 掌握Node.js: 构建高性能Web服务器与应用程序
- Matlab矢量绘图工具:polarG函数使用详解
- 实现Vue.js中PDF文件的签名显示功能
- 开源项目PSPSolver:资源约束调度问题求解器库
- 探索vwru系统:大众的虚拟现实招聘平台
- 深入理解cJSON:案例与源文件解析
- 多边形扩展算法在MATLAB中的应用与实现
- 用React类组件创建迷你待办事项列表指南
- Python库setuptools-58.5.3助力高效开发
- fmfiles工具:在MATLAB中查找丢失文件并列出错误
- 老枪二级域名系统PHP源码简易版发布
- 探索DOSGUI开源库:C/C++图形界面开发新篇章
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功