Neural architecture search

What Is Neural Architecture Search?

Neural architecture search, abbreviated NAS, is the automated design of artificial neural network topologies. Instead of a researcher choosing the number of layers, the operations in each layer, and the connections between them by hand, a search algorithm explores a defined space of candidate architectures and selects the one that performs best on a validation objective. It sits within automated machine learning alongside hyperparameter optimization, and it differs from that neighboring problem mainly in that the object being optimized is a discrete graph rather than a vector of continuous settings.

The field is conventionally described along three axes, an organization set out in the Neural Architecture Search survey published in the Journal of Machine Learning Research by Elsken, Metzen, and Hutter: the search space, which fixes what architectures can be expressed; the search strategy, which decides how that space is explored; and the performance estimation strategy, which determines how cheaply a candidate can be scored. Nearly every published method is a particular combination of choices along these three axes.

Search Space Design

The search space encodes prior knowledge, and its design largely determines both the quality ceiling and the search cost. A chain-structured space describes a network as a sequence of layers, each parameterized by operation type, filter count, kernel size, and stride. Cell-based spaces are more common in practice: the algorithm searches for a small computational cell, typically a directed acyclic graph over a handful of nodes with operations such as separable convolution, dilated convolution, pooling, and identity on the edges, and the final network is built by stacking copies of that cell at fixed resolutions. Restricting the space this way makes search tractable and makes discovered cells transferable to larger datasets, at the cost of ruling out architectures that fall outside the template. Hardware-aware spaces add explicit constraints on latency, memory footprint, or energy so that the returned architecture is deployable on a target device.

Search Strategies

Early work treated architecture selection as a reinforcement learning problem. The influential paper Neural Architecture Search with Reinforcement Learning trained a recurrent controller to emit architecture descriptions and updated it with the validation accuracy of the trained child network as reward, producing convolutional and recurrent designs competitive with hand-built ones but at a cost of thousands of GPU days. Evolutionary approaches maintain a population of architectures and apply mutation and selection, while Bayesian optimization fits a surrogate model over architecture performance. Gradient-based methods changed the cost profile sharply: DARTS relaxes the discrete choice of operation on each edge into a continuous mixture weighted by learned coefficients, so architecture parameters and network weights are optimized together by gradient descent, reducing search to a few GPU days.

Performance Estimation

Training every candidate to convergence is the dominant expense, so most of the engineering effort goes into cheap approximations. Low-fidelity estimates train for fewer epochs, on a subset of data, or at reduced resolution and accept the resulting rank correlation error. Learning curve extrapolation predicts final accuracy from the first few epochs and terminates unpromising runs early. Weight sharing trains a single overparameterized supernet containing all candidate subnetworks, then evaluates a candidate by inheriting weights rather than retraining, which is the mechanism behind one-shot and differentiable methods. Reproducibility remains a concern, and public benchmarks that tabulate the trained accuracy of every architecture in a fixed space allow search strategies to be compared without repeating the training cost.

Applications

Neural architecture search is applied in several areas, including:

  • Computer vision, including image classification, detection, and segmentation
  • Efficient models for mobile phones, microcontrollers, and edge accelerators
  • Language modeling and sequence architecture design
  • Speech recognition and keyword spotting
  • Medical image analysis with limited labeled data
  • Hardware and neural network co-design for custom accelerators
Loading…