Learning Transferable Architectures for Scalable Image Recognition论文简述

        本文是谷歌在2018年提出的一篇神经网络结构最优搜索的论文

        本文的核心思想是基于一篇Neural Architecture Search With Reinforcement Learning,的优化和改进。

我们知道在深度学习任务比如图像识别,图像分类中模型结构是非常关键的,比如VGG,ResNet,DenseNet等在网络结构的设计。但是,这种人为设计的结构就一定好么?不一定,因此希望能通过一个神经网络来按照一定策略学习得到最佳的网络结构。

首先,先简单说一说Neural Architecture Search With Reinforcement Learning这篇论文。

这篇文论的话,现在看来比较粗暴,用强化学习(reinforcement learning)来学习一个最优的网络结构,简单来说就是通过一个controller在搜索空间(search space)中得到一个网络结构(child network),然后用这个网络结构在数据集上训练得到准确率,再将这个准确率回传给controller,controller继续优化得到另一个网络结构,如此反复进行直到得到最佳的结果。

        很明显核心就是如何通过这个controller得到我们的网络结构,以及如何训练我们的controller。首先,如何得到我们的子网络结构,controller采用的就是RNN结构。那么为什么是RNN结构呢?因为作者观察到,神经网络的结构和连通性通常可以用一串长度可变的字符串来表示,因此可以用一个循环神经网络来生成这样的字符串。也就是如图这样

        

 

        那么如何训练呢?这里就用到了强化学习的方法。我每次选出一个子网络,得到子网络精度,这个精度就是我们的reward,而搜索空间就是我们的action空间,controller就是我们的agent,如此便可以训练我们模型了。

        接下来进入正题。

        那么本篇论文,就是基于这样的一个方法的改进。

        首先,在更新controller参数的时候采用 Proximal Policy Optimization (PPO),而不是原先的policy geadient method;同时借鉴了目前优秀网络结构(ResNet,GoogleNet)的重复堆叠思想,与上篇论文不同,这里是针对于算子(op)进行搜索的,之后会详细讲到。

        因此本文的结构为:

        通过借鉴ResNet和GooleNet中网络结构堆叠的思想,这篇论文采用的的最小堆叠单位就是convolution cell,而convlolution cell主要包含两种:第一种是不改变输入feature map的大小的卷积,也就是下图中的Normal Cell;第二种是将输入feature map的长宽各减少为原来的一半的卷积,也就是下图中的Reduction Cell。整体的网络结构就是Normal Cell与Reduction Cell相互穿插,因此当网络结构定义如图,那么本文的controller就用来预测下图中的Normal Cell和Reduction Cell。

        每一个Cell由N个block组成,每个block由5个prediction steps组成。这5个steps分别是:

Step 1. Select a hidden state from hi, hi−1 or from the set of hidden states created in previous blocks.

Step 2. Select a second hidden state from the same options as in Step 1.

Step 3. Select an operation to apply to the hidden state selected in Step 1.

Step 4. Select an operation to apply to the hidden state selected in Step 2.

Step 5. Select a method to combine the outputs of Step 3 and 4 to create a new hidden state.

        首先的两步就是选择隐藏状态,可以看下图就理解了

       而对于step3和step4来说,可选择的op有以下几种

        对于最后一步的话就只有add和concat

        作者在文中举例说明了一种搜出来的结构如图

        最后,通过实验验证NASNet的特点在于在参数数量较少的情况还还能保持较高的准确率。

        如有错误,欢迎各位批评指正!

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值