[论文解读] Towards modular and programmable architecture search
本文提出了一种形式化、模块化且可编程的语言,用于在神经架构搜索中定义通用计算图上的搜索空间。通过使用一致的接口将搜索空间定义与搜索算法解耦,该框架实现了可组合、可重用且可扩展的实验,支持多种搜索空间与算法的组合——通过极低的实现开销,高效地对最先进架构和搜索方法进行基准测试。
Neural architecture search methods are able to find high performance deep learning architectures with minimal effort from an expert. However, current systems focus on specific use-cases (e.g. convolutional image classifiers and recurrent language models), making them unsuitable for general use-cases that an expert might wish to write. Hyperparameter optimization systems are general-purpose but lack the constructs needed for easy application to architecture search. In this work, we propose a formal language for encoding search spaces over general computational graphs. The language constructs allow us to write modular, composable, and reusable search space encodings and to reason about search space design. We use our language to encode search spaces from the architecture search literature. The language allows us to decouple the implementations of the search space and the search algorithm, allowing us to expose search spaces to search algorithms through a consistent interface. Our experiments show the ease with which we can experiment with different combinations of search spaces and search algorithms without having to implement each combination from scratch. We release an implementation of our language with this paper.
研究动机与目标
- 解决现有神经架构搜索系统中缺乏可编程性和模块化的问题。
- 使专家能够以结构化、可重用的方式定义和组合通用计算图上的搜索空间。
- 通过将搜索空间实现与搜索算法实现解耦,提升灵活性和可扩展性。
- 支持对多样化搜索空间与算法组合的系统性基准测试,而无需从头重写代码。
- 提供一个通用框架,支持既有的和新型的架构搜索工作流。
提出的方法
- 提出一种形式化语言,将搜索空间编码为具有模块化组件和超参数的计算图。
- 采用分层递归结构,其中每个节点代表一个具有可配置超参数的搜索空间组件。
- 引入一致的接口,将搜索空间暴露给任意搜索算法,抽象出实现细节。
- 采用有状态的搜索框架,通过 `sample` 和 `update` 接口更新搜索器状态,实现与算法无关的搜索空间遍历。
- 使用 `random_specify` 为独立超参数分配值,生成用于评估的终端架构。
- 支持条件和独立的超参数空间,实现复杂、结构化的搜索空间定义。
实验结果
研究问题
- RQ1能否设计一种形式化语言,以模块化和可组合的方式表达多样化的神经架构搜索空间?
- RQ2通过一致接口,搜索空间与搜索算法的实现能在多大程度上实现解耦?
- RQ3研究人员使用该框架实验新组合的搜索空间与算法时,效率如何?
- RQ4该框架能否以极低的投入支持从文献中编码和基准测试真实世界搜索空间?
- RQ5该语言是否能实现可重用、可扩展且可维护的神经架构搜索研究工作流?
主要发现
- 该框架成功以极少的代码重复量编码了文献中的多个基准搜索空间,包括 Nasbench、Nasnet 和遗传搜索空间。
- 解耦的接口使得多种搜索算法(随机搜索、MCTS、SMBO 和正则化进化)能够无缝集成,而无需修改搜索空间实现。
- 网格搜索实验表明,使用 Nasbench 搜索空间时,搜索阶段找到的最佳架构在 CIFAR-10 上达到 94.59% 的测试准确率,优于其他配置。
- 搜索算法比较显示,SMBO 和正则化进化在 600 个 epoch 时分别达到 92.85% 和 92.21% 的平均验证准确率,优于随机搜索(92.29%)和 MCTS(92.08%)。
- 该框架显著降低了实现开销,实现了新搜索空间与算法组合的快速原型设计与基准测试。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。