"FBNet: Hardware-Aware Efficient ConvNet Design via Differentiable Neural Architecture Search"
Paper Link: https://arxiv.org/abs/1812.03443
Github (PyTorch): https://github.com/AnnaAraslanova/FBNet
Introduction

Search Space
- DARTS、AdaBert等方法:
- 以Cell为基本搜索单元、且重复堆叠;
- 着重cell内部结构的搜索;但Cell结构通常较为复杂、实际执行效率相对较低;
- 相同Cell结构的重复堆叠也限制了多样性;且内存消耗过大,也不利于搜索空间的扩展;
- AdaBert参考:https://arxiv.org/abs/2001.04246
- AdaBert可在Cell-level与Layer-level执行可微分搜索:
- 搜索方法为DARTS+Gumbel Softmax;
- 基本算子为一维卷积,AdaBert的Cell结构如下 (不同GLUE基准任务的搜索结果):

- 为了提升搜索效率、并兼顾实际的执行效率,FBNetV1采用Layer-wise的搜索方式、构建Search space;每个Layer可选择不同的Building block;
- Layer-wise的搜索方式,相对而言搜索成本更低,但搜索空间无疑受到了限制;
- Micro-architecture search space:
- Building block结构参考了MobileNet-V2、ShuffleNet-V2的做法,有助于保证执行效率:


Latency-aware Loss Function
- 为了实现Hardware-aware搜索,以及精度、与Latency之间的有效折中,引入如下Loss:
- 其中Latency采用Look-up Table方式确定;


The Search Algorithm
- 每个Layer按Gumbel softmax分布,从Candidate blocks选择合适的Building block:
- 相比于Argmax,Softmax能够确保mask分布变量到结构参数之间、存在可微的反向传播路径;
- Gumbel softmax采样具有随机性,可确保搜索的泛化能力;
- 温度系数逐渐衰减,概率分布或mask分布会越来越尖锐;


Experiments

"FBNetV2: Differentiable Neural Architecture Search for Spatial and Channel Dimensions"
Paper Link:https://arxiv.org/abs/2004.05565
Introduction


Search Space
- 不同的DNAS方法,在搜索空间扩展方面的劣势:
- DARTS内存消耗较大,不利于搜索空间的扩展;
- Proxyless NAS在超网络训练阶段,每步迭代只更新一条Network path,尽管搜索空间可以扩展,但训练收敛需要的时间成本也相对更大;
- FBNetV1采用Layer-wise方式执行搜索,也限制了搜索空间的扩展;
- FBNetV2提出了DMasking NAS,通过权重共享、Feature Map共享方式,可增加Channel与Spatial维度的搜索空间
- Weight-Sharing Channel Selection:




|