Learning Transferable Architectures for Scalable Image Recognition

Learning Transferable Architectures for Scalable Image Recognition

我们建议在一个小数据集上搜索一个体系结构构建块,然后将该块转移到一个较大的数据集。这项工作的关键贡献是一个新的搜索空间(我们称之为“NASNet搜索空间”)的设计,它支持可转移性。在我们的实验中,我们在CIFAR-10数据集上寻找最佳卷积层(或“单元”),然后将该单元应用于ImageNet数据集,方法是将该单元的更多副本堆叠在一起,每个副本都有自己的参数,以设计卷积架构,我们将其命名为“NASNet架构”。我们还引入了一种新的正则化技术,称为ScheduledDropPath,它显著地改进了NASNet模型中的泛化。

3. Method

我们的工作利用搜索方法在感兴趣的数据集上找到良好的卷积结构。主要我们在这项工作中使用的搜索方法是神经架构[71]提出的搜索(NAS)框架。在NAS中,控制器递归神经网络(RNN)对不同结构的子网络进行采样。训练子网络的收敛性,使其在验证集上获得一定的精度。由此产生的精度用于更新控制器,以便控制器将随着时间的推移生成更好的体系结构。控制器权重将使用策略梯度进行更新(参见图1)。

在这里插入图片描述

​ 这项工作的主要贡献是设计了一个新的搜索空间,以便在CIFAR-10数据集上找到的最佳体系结构可以在一系列计算设置中扩展到更大、更高分辨率的图像数据集。我们将这个搜索空间命名为NASNet搜索空间,因为它产生了NASNet,这是我们在实验中发现的最好的架构。NASNet搜索空间的一个灵感是认识到,使用CNNs的架构工程通常识别由卷积滤波器组、非线性和谨慎选择连接的组合组成的重复主题,以实现最新的结果(例如,在Inception和ResNet中出现的重复模块型号[59、20、60、58]。这些观察结果表明,控制器RNN有可能预测一个用这些基序表示的通用卷积细胞。然后可以将该单元按顺序堆叠,以处理任意空间维度的输入和filter深度。

在我们的方法中,卷积网的总体架构是手动预先确定的。它们由多次重复的卷积单元组成,每个卷积单元具有相同的结构,但权重不同。为了方便地为任何大小的图像构建可伸缩的体系结构,我们需要两种类型的卷积单元来提供两个主要的功能:1.卷积单元返回同一维度的特征图,以及(2)卷积单元,其返回特征映射,其中特征映射的高度和宽度减少了2倍。

我们分别命名第一型和第二型卷积单元为正常单元和缩减单元。对于缩减单元,我们将应用于单元输入的初始操作的步长设为2,以减少高度和宽度。对于所有的操作,我们考虑建立我们的卷积细胞有一个可选择步长。

在这里插入图片描述

图片2:可伸缩的图像分类体系结构由两个重复的基元组成,分别称为正常单元和缩减单元。该图突出了CIFAR-10和ImageNet的模型体系结构。在我们的实验中,正常单元堆积在缩减单元之间的次数(N)的选择可能会有所不同。

图2显示了我们为CIFAR-10和ImageNet放置的正常单元和缩减单元。注意,在ImageNet上,我们有更多的缩减单元,因为传入的图像大小是299x299,而CIFAR是32x32。缩减单元和正常单元可以有相同的结构,但我们经验发现学习两个独立的结构是有益的。我们使用一种常见的启发式算法,每当降低特征图空间大小时,就将输出中的卷积核数量增加一倍,以维持大致恒定的隐藏状态维度[32,53]。重要的是,与Inception和ResNet模型[59,20,60,58]非常相似,我们将重复次数N和初始卷积滤波器的数量视为自由参数,我们根据图像分类问题的规模进行调整。

在卷积网络中变化的是正常单元和缩减单元的结构,它们由控制器RNN搜索。可以在如下定义的搜索空间内搜索单元的结构(参见附录图7中的示意图)。

在这里插入图片描述

图7。NASNet搜索空间示意图。网络模体以递归方式分阶段构造,称为块。每个块由控制器选择一对隐藏状态(深灰色)、对这些隐藏状态执行的操作(黄色)和组合操作(绿色)组成。生成的隐藏状态保留在后续块上要选择的潜在隐藏状态集中。在我们的搜索空间中,每个单元接收两个初始隐藏状态 h i h_i hi h i − 1 h_{i-1} hi1作为输入,这两个初始隐藏状态是前两个较低层中的两个单元或输入图像的输出。给定这两个初始隐藏状态,控制器RNN递归地预测卷积单元的其余结构(图3)。

在这里插入图片描述

图3。递归构造卷积单元一个块的控制器模型结构。每个块需要选择5个离散参数,每个参数对应于softmax层的输出。右边所示的示例构造块。卷积单元包含B个块,因此控制器包含5B个softmax层,用于预测卷积单元的结构。在我们的实验中,块B的数目是5。

控制器对每个单元的预测被分组为B个块,其中每个块具有5个不同的softmax分类器所做的5个预测步骤,对应于块的元素的离散选择:

第一步。从 h i h_i hi, h i − 1 h_{i-1} hi1或在先前块中创建的隐藏状态集中选择隐藏状态。

第二步。从与步骤1相同的选项中选择第二个隐藏状态。

第三步。选择要应用于在步骤1中选择的隐藏状态的操作。

第四步。选择要应用于在步骤2中选择的隐藏状态的操作。

第五步。选择一种方法来组合步骤3和4的输出以创建新的隐藏状态。

该算法将新创建的隐藏状态附加到现有的隐藏状态集,作为后续块中的潜在输入。控制器RNN重复与卷积小区中的B块相对应的上述5个预测步骤B次。在我们的实验中,选择B=5提供了很好的结果,尽管由于计算的限制,我们没有穷尽地搜索这个空间。

在步骤3和步骤4中,控制器RNN选择一个操作应用于隐藏状态。我们收集了以下一系列基于它们在CNN文献中的流行程度的操作:

在这里插入图片描述

在步骤5中,控制器RNN选择一种方法来组合这两个隐藏状态,或者(1)两个隐藏状态之间的元素相加,或者(2)沿着滤波器维度在两个隐藏状态之间的连接。最后,卷积单元中生成的所有未使用的隐藏状态串联在一起,以提供最终的单元输出。

为了允许控制器RNN同时预测正常单元和缩减单元,我们只需使控制器总共有2×5B预测,其中前5B预测用于正常单元,后5B预测用于缩减单元。

最后,我们的工作利用了NAS[71]中的强化学习方案;然而,也可以使用随机搜索来搜索NASNet搜索空间中的体系结构。在随机搜索中,我们不必在控制器RNN中对softmax分类器的决策进行采样,而是从均匀分布中对决策进行采样。在我们的实验中,我们发现随机搜索比CIFAR-10数据集上的强化学习稍差。尽管使用强化学习是有价值的,但这一差距小于文献[71]的原始工作。这一结果表明:1)NASNet搜索空间构造良好,使得随机搜索能够很好地执行;2)随机搜索是一个难以克服的基线。我们将在第4.4节中比较强化学习和随机搜索。

A.2. Controller architecture

控制器RNN是一个单层LSTM[22],每层有100个隐藏单元,对与每个架构决策相关联的两个卷积单元(其中B通常为5)的2x 5B softmax预测。控制器RNN的10B预测中的每一个都与概率相关。子网络的联合概率是这些10B软最大值的所有概率的乘积。该联合概率用于计算控制器RNN的梯度。通过子网络的验证精度来调整梯度,以更新控制器RNN,使得控制器为坏的子网络分配低概率,为好的子网络分配高概率。

与[71]使用强化规则[66]更新控制器不同,我们使用学习率为0.00035的近端策略优化(PPO)[51],因为使用PPO进行训练更快、更稳定。为了鼓励探索,我们还使用了权重为0.00001的熵惩罚。在我们的实现中,基线函数是以前奖励的指数移动平均值,权重为0.95。控制器的权重在-0.1和0.1之间均匀初始化。

A.3. Training of the Controller

对于分布式训练,我们使用一个工作队列系统,将从控制器RNN生成的所有样本添加到全局工作队列中。分布式工作池中的空闲“子”工作进程向控制器请求全局工作队列中的新工作。一旦子网络的训练完成,就计算出保持有效集的精度并将其报告给控制器RNN。在我们的实验中,我们使用了一个450的童工池(child worker pool ),这意味着有450个网络在450 gpu上同时接受训练。

在收到足够的子模型训练结果后,控制器RNN将使用PPO对其权重进行梯度更新,然后对进入全局工作队列的另一批体系结构进行采样。这个过程一直持续到预定数量的体系结构被采样为止。在我们的实验中,这个预定的架构数目是20000,这意味着在20000个子模型被训练之后,搜索过程终止。此外,我们用20个体系结构的小批量更新控制器RNN。搜索结束后,将选择前250个体系结构进行训练,直到在CIFAR-10上收敛,以确定最佳体系结构。

A.4. Details of architecture search space

我们进行了初步的实验,以确定一个灵活的,有表现力的搜索空间,为神经架构学习有效。一般来说,我们的初步实验策略包括小规模的探索,以确定如何运行大规模的架构搜索。

所有的卷积都采用ReLU非线性。用ELU非线性[10]进行的实验表明,这种方法的效果很小。

为了确保卷积单元中的形状始终匹配,需要插入1x1卷积。

所有depthwise可分离卷积不在depthwise和pointwise操作之间使用Batch Normalization和/或ReLU。

所有卷积遵循 ReLU, convolution operation and Batch Normalization的顺序。

ation和/或ReLU。

所有卷积遵循 ReLU, convolution operation and Batch Normalization的顺序。

当模型结构选择一个可分离卷积作为操作时,可分离卷积被两次应用于隐藏状态。我们从经验上发现这可以提高整体性能。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值