神经架构搜索研究指南 -5

  1. 系列文章:《神经架构搜索研究指南 -1
  2. 系列文章:《神经架构搜索研究指南 -2
  3. 系列文章:《神经架构搜索研究指南 -3
  4. 系列文章:《神经架构搜索研究指南 -4

9. SNAS:随机神经结构搜索

ICLR 2019:SNAS: Stochastic Neural Architecture Search

这篇论文的作者提出了随机神经结构搜索 (SNAS)。SNAS 是 NAS 的端到端解决方案,在同一轮的反向传播中同时训练神经算子参数和体系结构分布参数。在此过程中,它维护了 NAS 流程的完整性和可微性。

作者将 NAS 重新表述为单元中搜索空间的联合分布参数的优化问题。搜索梯度被用于,利用梯度信息进行泛化的可微损失的体系结构搜索。这种搜索梯度与基于增强学习的 NAS 优化了相同的目标,但为结构决策分配分数时效率更高。

如下所示,搜索空间使用一个有向无环图 (DAG) 表示,称为父图。在图中,节点 xi 代表隐式表示。边 (i, j) 表示要在节点之间选择的信息流和操作。

A conceptual visualization for a forward pass within SNAS.
A conceptual visualization for a forward pass within SNAS.

以下是 CIFAR-10 上 SNAS 和最先进的图像分类器的分类错误:

Classification errors of SNAS and state-of-the-art image classifiers on CIFAR-10.
Classification errors of SNAS and state-of-the-art image classifiers on CIFAR-10.

10. DARTS:可微结构搜索

ICLR 2019:DARTS: Differentiable Architecture Search

这篇论文以可微的方式构造任务,解决了结构搜索的可伸缩性问题。

本文没有在一组离散的候选结构上进行搜索,而是将搜索空间放宽为连续的。因此,可以通过梯度下降,对体系结构的验证集性能进行优化。基于梯度优化的数据效率提升,使得 DARTS 能够使用更少的计算资源获得出色的性能。该模型的性能也优于 ENAS。DARTS 既适用于卷积网络,也适用于递归网络。

作者寻找一种计算单元作为最终架构的构建模块。通过递归连接,学习单元可以被堆叠成卷积网络或递归网络。一个单元是由 N 个节点的有序序列组成的有向无环图。每个节点都是一个隐式的表示——例如一个特征图——并且每条有向边都与转换节点的一些操作相关联。一个单元格被假定为有两个输入节点和一个输出节点。卷积单元的输入节点定义为前两层的单元输出。最近文献里提到的卷积单元里,它们的输入节点被定义为当前步骤的输入和上一步所携带的状态。对所有中间节点应用缩减操作(例如 concatenation 操作)来生成输出单元。

 An overview of DARTS
An overview of DARTS.

该模型与 CIFAR-10 上最先进的图像分类器的比较如下:

Comparison with state-of-the-art image classifiers on CIFAR-10.
Comparison with state-of-the-art image classifiers on CIFAR-10.

——》本系列文章完《——