[论文解读] DeepArchitect: Automatically Designing and Training Deep Architectures
一个模块化框架,通过将架构和训练超参数表示为树状结构的搜索空间,并使用随机搜索、蒙特卡洛树搜索以及 SMBO 等搜索策略,来自动设计和训练深度架构。
In deep learning, performance is strongly affected by the choice of architecture and hyperparameters. While there has been extensive work on automatic hyperparameter optimization for simple spaces, complex spaces such as the space of deep architectures remain largely unexplored. As a result, the choice of architecture is done manually by the human expert through a slow trial and error process guided mainly by intuition. In this paper we describe a framework for automatically designing and training deep models. We propose an extensible and modular language that allows the human expert to compactly represent complex search spaces over architectures and their hyperparameters. The resulting search spaces are tree-structured and therefore easy to traverse. Models can be automatically compiled to computational graphs once values for all hyperparameters have been chosen. We can leverage the structure of the search space to introduce different model search algorithms, such as random search, Monte Carlo tree search (MCTS), and sequential model-based optimization (SMBO). We present experiments comparing the different algorithms on CIFAR-10 and show that MCTS and SMBO outperform random search. In addition, these experiments show that our framework can be used effectively for model discovery, as it is possible to describe expressive search spaces and discover competitive models without much effort from the human expert. Code for our framework and experiments has been made publicly available.
研究动机与目标
- 提供一种可编程、组合性语言,以指定在深度架构与训练超参数上的表达式搜索空间。
- 使指定模型能够自动编译为计算图。
- 在该框架内评估并比较模型搜索算法(随机搜索、MCTS、SMBO)。
- 证明结构化的搜索策略在架构发现中优于随机搜索。
提出的方法
- 定义一种模块化计算模块语言,其中基本模块和复合模块组合以形成架构和训练超参数的搜索空间。
- 使用树状结构的搜索空间,通过逐步分配超参数值来遍历所有完全指定的模型。
- 提供一个编译机制,将完全指定的模块自动映射到计算图。
- 在框架内实现并比较模型搜索算法(随机搜索、蒙特卡洛树搜索、带树重组的 MCTS、SMBO)。
- 在 CIFAR-10 上进行数据增强和固定训练预算的评估,以比较搜索策略。
- 为 SMBO 使用代理建模(对模块序列的 n-gram 特征进行岭回归)以引导搜索。
实验结果
研究问题
- RQ1一个模块化、组合性的语言能否有效表达关于架构与训练超参数的丰富搜索空间?
- RQ2在 DeepArchitect 框架内,结构化搜索算法(MCTS、SMBO)是否在发现高性能架构方面优于随机搜索?
- RQ3树重组(对超参数搜索进行二等分)如何影响 MCTS 在架构搜索中的效率和效果?
- RQ4在像 CIFAR-10 这样的标准数据集上,联合优化架构和训练超参数有哪些实际收益?
主要发现
- 在测试设置中,所有搜索策略在经过 64 次评估后均能达到大约 89% 的 CIFAR-10 验证准确率。
- 随着评估次数的增加,MCTS 和 SMBO 的表现优于随机搜索,其中 MCTS(二分)在大约 32 次评估时优于随机搜索,SMBO 在大约 16 次评估时优于随机搜索。
- 在此设置中,不进行树重组的 MCTS 并不优于随机搜索,凸显对具有大取值集合的超参数进行二分的好处。
- 树重组使相关超参数值之间能够共享信息,提升对高方差架构选择的搜索效率。
- 该框架能够探索表达性搜索空间,并在有限的人力投入下发现具有竞争力的模型。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。