第三章:神经网络架构搜索
摘要
在过去的几年中,深度学习已在各种任务(例如图像识别,语音识别和机器翻译)上取得了显着进步。这种进步的一个关键方面是新颖的神经网络架构。当前采用的架构大多数是由人类专家手动开发的,这是一个耗时且容易出错的过程。因此,人们对自动化神经网络架构搜索方法的兴趣日益浓厚。我们提供了该研究领域中现有工作的概述,并根据三个维度对它们进行了分类:搜索空间,搜索策略和性能评估策略。
简介
深度学习在感知任务中的成功很大程度上归功于其对特征工程过程的自动化:层次化特征提取器是从数据中以端到端的方式学习的,而不是人工设计的。然而,伴随着这一成功的是,对架构工程的需求不断增长,因为需要手动设计越来越复杂的神经体系结构。因此自动化架构工程的过程 - 神经网络架构搜索(NAS)理所当然是自动化机器学习的下一步。NAS 可以看作是 AutoML 的子领域,并且与超参数优化和元学习(分别在本书的第 1 章和第 2 章中进行了介绍)有很多重叠。我们根据以下三个维度对 NAS 的方法进行分类:搜索空间,搜索策略和性能评估策略:
-
搜索空间:搜索空间定义了原则上可以表示的架构。结合有关非常适合任务的属性的现有知识可以减少搜索空间的大小并简化搜索。但是,这也引入了人为的偏好,这可能会妨碍寻找超出当前人类认知范围之外的新颖的架构。
-
搜索策略:搜索策略详细说明了如何探索搜索空间,它涵盖了经典的探索与利用困境,因为一方面希望快速找到性能良好的架构,另一方面又要避免过早地收敛到次优架构的区域。
-
性能评估策略:NAS 的目标通常是找到在未见数据上有高预测性能的架构。性能评估是指评估这种性能的过程:最简单的选择是对架构在数据上进行标准的训练和验证,但是 不幸的是,这在计算上是昂贵的,并且限制了可以探索的架构的数量。因此,许多新近研究集中在开发减少这些性能评估成本的方法上。
我们参考图 3.1 进行说明。 本章也通过三个方面组织结构:我们首先在第 3.2 节中讨论搜索空间,在第 3.3 节中讨论收敛的搜索策略,并在第 3.4 节中概述性能评估的方法。最后,我们在第 3.5 节中对未来方向进行了展望。
搜索空间
搜索空间定义了 NAS 方法原则上可能发现的神经网络架构。现在,我们讨论最新工作中的常见搜索空间。
相对简单的搜索空间是链状结构神经网络的空间,如图 3.2(左)所示。链式结构神经网络架构 AAA 可以被写为一个 nnn 层的序列,其中第 iii 层 LiL_iLi 从第 i−1i-1i−1 层接收其输入,其输出用作第 i+1i + 1i+1 层的输入,即 A=Ln∘…L1∘L0A =L_n \circ \ldots L_1 \circ L_0A=Ln∘…L1∘L0 。然后通过以下方式对搜索空间进行参数化:(i)(最大)层数 nnn (可能无界); (ii) 每层可以执行的操作类型,例如池化,卷积或更高级的层类型,例如深度可分离的卷积[13]或空洞卷积[68];(iii) 与操作相关的超参数,例如卷积层[4,10,59]的过滤器数量,内核大小和步幅,或者全连接网络的单元数量[41]。注意,来自(iii)的参数以(ii)为条件,因此搜索空间的参数化不是固定长度的,而是条件空间。
NAS 的最新工作[9,11,21,22,49,75]结合了人工架构中已知的现代设计元素,例如跳跃连接,可以建立复杂的多分支网络,如图 3.2(右)所示。在这种情况下, iii 层的输入可以被形式化地描述为结合之前层输出的函数 gi(Li−1out,…,L0out)g_i(L_{i-1}^{out}, \ldots, L_0^{out})gi(Li−1out,…,L

本文概述了近年来神经网络架构搜索(NAS)领域的进展,包括搜索空间的设计、搜索策略的探索(如随机搜索、贝叶斯优化、进化和强化学习)以及性能评估方法(如早期终止和网络态射)。研究着重于分类这三个关键维度,并讨论了未来研究方向,如跨领域应用和更通用搜索空间的探索。
最低0.47元/天 解锁文章
144

被折叠的 条评论
为什么被折叠?



