ENAS--Efficient Neural Architecture Search via Parameter Sharing(论文笔记)

谷歌提出的Efficient Neural Architecture Search(ENAS),是对NAS的改进版。使用生成的网络结构NASNet,在PTB数据集取得了55.8%的测试错误率,在cifar10上取得了2.89%的测试错误率。同时训练速度相比NAS提升了1000倍,只使用一个1080Ti,小于16小时训练成功。

ENAS包括一个基于RNN的控制端网络结构和一个由控制端的组合方式生成的真实网络结构。通过真实网络结构得到RNN控制端的反馈。训练中固定RNN控制端,多次迭代真实子网络,待收敛后,再固定子网络,迭代RNN控制端。

Research Objective 作者的研究目标
设计一种快速有效且耗费资源低的用于自动化网络模型设计的方法。主要贡献是基于NAS方法提升计算效率,使得各个子网络模型共享权重,从而避免低效率的从头训练。

Problem Statement 问题陈述,要解决什么问题?
本文提出的方法是对NAS的改进。NAS存在的问题是它的计算瓶颈,因为NAS是每次将一个子网络训练到收敛,之后得到相应的reward,再将这个reward反馈给RNN controller。但是在下一轮训练子网络时,是从头开始训练,而上一轮的子网络的训练结果并没有利用起来。

另外NAS虽然在每个节点上的operation设计灵活度较高,但是固定了网络的拓扑结构为二叉树。所以ENAS对于网络拓扑结构的设计做了改进,有了更高的灵活性。

本小节介绍如何训练ENAS以及如何从ENAS的controller中生成框架结构
controller网络是含有100个隐藏节点的LSTM。LSTM通过softmax分类器做出选择。另外在第一步时controller会接收一个空的embedding作为输入。

在ENAS中共有两组可学习的参数:
子网络模型的共享参数,用w表示。
controller网络(即LSTM网络参数),用θ表示。
而训练ENAS的步骤主要包含两个交叉阶段:第一部训练子网络的共享参数w
;第二个阶段是训练controller的参数θ。这两个阶段在ENAS的训练过程中交替进行,具体介绍如下:
ENAS--Efficient Neural Architecture Search via Parameter Sharing(论文笔记)_第1张图片
ENAS--Efficient Neural Architecture Search via Parameter Sharing(论文笔记)_第2张图片
ENAS--Efficient Neural Architecture Search via Parameter Sharing(论文笔记)_第3张图片ENAS--Efficient Neural Architecture Search via Parameter Sharing(论文笔记)_第4张图片ENAS--Efficient Neural Architecture Search via Parameter Sharing(论文笔记)_第5张图片

你可能感兴趣的:(NAS)