定义
Neural Architecture Search(NAS):找到最优的神经网络结构使得其在验证集上的准确率最大化。
指定搜索空间
搜索完成后得到每一层的最优超参数值(卷积核数量、卷积核大小、步长大小)
搜索方法
- Random Search(baseline)
- RNN+RL(2017)
思想:RNN依次预测第N层的卷积核数量、卷积核大小、步长大小。得到a_1到a_60 60个超参数
相同任务可以共用一个Embedding参数,比如a_1 -> x_1 、a_4 -> x_4 ,他们都是预测卷积核的数量,Embedding的参数可以在相同任务中重复利用!
问题:无法根据反向传播来更新Controller RNN。
解决方法:使用强化学习来训练Controller RNN。(需要收集大量的奖励)
Π学习RNN的参数,Π输出一个[0,1]
- 可微架构搜索:Darts
流程:
Super-net:每一层都由9个候选模块并联而成,
9个模块的f 加权平均得到z
- 如何计算计算量
提前计算好每一个模块的latencies