目前大多数NAS方法都是基于Differentiable Neural Architecture Search
– Liu, Simonyan, & Yang. DARTS: Differentiable Architecture Search. In ICLR, 2019. DARTS 定义的目标函数是神经网络超参数的可微函数。可以直接进行训练。
– Wu et al. FBNet: Hardware-Aware Efficient ConvNet Design via Differentiable Neural Architecture Search. In CVPR, 2019.可以认为是darts的一个特例。
基本思想:
用户需要事先定义一些候选模块:每个候选模快不同
暴力枚举不显示,使用super-net:
super – net:
每一层都由九个候选模块并联而成。
输出加权平均:权重ai也是可训练的:
训练:
上面是以最好的测试效果作为目标,但有时也要考虑计算量(部署到移动设备):
如何在NAS中考虑计算量: