NAS论文阅读笔记(NAS)

Neural Architecture Search With Reinforcement Learning

论文连接:https://arxiv.org/abs/1611.01578

用一个循环网络生成模型描述,并且用强化学习训练这个RNN以在测试集上最大化生成网络的期望精度。
在这里插入图片描述

一个神经网络的连接和结构可以用变长的序列描述,所以可以用一个循环网络(controller)去生成这样的序列,在validation set上训练此网络,可以得到accuracy,将accuracy视作回馈信号,就可以计算policy gradient来更新这个controller。在下一次迭代中,the controller将会给高accuracies的架构更高的概率。
1、Generate Model Descriptions with A Controller Recurrent Neural Network
用一个RNN controller产生神经网络架构的超参
在这里插入图片描述
当层数超过一个特定的值时停止,停止后,一个此架构的神经网络将被建立并且训练,并且它的accuracy也会被记录,controller的参数θ将会被优化。
2、Training With Reinforce
运用强化学习的方法,将RNN controller的预测视为动作,将accuracy视作回报,目的是使controller最大化期望回报
在这里插入图片描述
因为回报是不可微的所以需要用policy gradient方法迭代更新参数θ
在这里插入图片描述
简化上式子:
在这里插入图片描述
m代表着controller在一个batch中采样的不同架构的数量,T代表着controller需要预测的超参的数量,Rk是第k个神经网络架构训练之后的validation accuracy
Accelerate Training with Parallelism and Asynchronous Updates:
采用distributed training 和 asynchronous parameter updates加速训练
在这里插入图片描述
神经结构搜索的分布式训练。使用一组S个Parameter Server来存储参数并将参数发送给K个Controller Replica。然后每个Controller Replica对m个体系结构进行采样,并并行地运行多个子模型。记录每个子模型的精度对θc计算梯度,然后发送回Parameter Server。
3、Increase Architecture Complexity with Skip Connections And Other Layer Types
skip connection 的方法
在第N层,添加一个具有N-1个基于内容的sigmoid的锚点,以指示需要连接的前一层,每个sigmoid是controller当前隐藏状态和前N-1个锚点之间隐藏状态的函数:
在这里插入图片描述
hj为第j层controller在第j层锚点的隐藏状态,j取值范围为0~N-1.
在这里插入图片描述
skip connection需要注意以下问题:
1.若一个层没有连接到任何输入,那么图像将被用作输入层。
2.在最有一层,获取所有未连接的层的输出,并在将最终隐藏状态发送给分类器之前将它们concatenate起来。
3.如果要连接的输入层大小不同,则用0填充小层,使得连接的层有相同的大小。
另外,需要添加额外的步骤去预测层类型和与其有关的超参(lr、pooling、local contrast normalization、batchnorm)
4、Generate Recurent Cell Architectures
在这里插入图片描述
基本RNN和LSTM单元的计算可以概括为以xt和ht - 1为输入,以ht为最终输出的步骤树。控制器RNN需要使用组合方法(加法、elementwise乘法等)和激活函数(tanh、sigmoid等)来标记树中的每个节点,以合并两个输入并产生一个输出。然后将两个输出作为输入提供给树中的下一个节点。为了使控制器RNN能够选择这些方法和函数,对树中的节点按顺序进行索引,这样控制器RNN就可以逐个访问每个节点,并标记所需的超参数。
受LSTM单元构造的启发(Hochreiter Schmidhuber, 1997),还需要单元变量ct−1和ct来表示内存状态。为了合并这些变量,需要控制器RNN来预测树中的哪些节点将这两个变量连接到。这些预测可以在控制器RNN的最后两个块中完成。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值