Neural architecture search (NAS) is a rapidly developing area of research in which the process of choosing the best architecture is automated.
At Abacus.AI, we are using NAS to both fine-tune proven deep network paradigms, and learn novel architectures for new domains. Our goal is to empower data scientists and developers to create custom, production-grade models in days, not months. See
this blog post to read about our method, BANANAS, which combines
Bayesian optimization with neural predictors to achieve state-of-the-art performance. Since making our code open-source, dozens of developers have forked our repository, and
two independent research groups have confirmed that it achieves state-of-the-art performance on NAS-Bench-101. BANANAS has even been cited in
survey papers on NAS.
We are also actively conducting fundamental research on the theory of NAS. Recently, we studied
local search for NAS - a simple yet effective approach. We showed experimentally that local search gives state-of-the-art performance on smaller benchmark NAS search spaces, but performs worse than random search on extremely large search spaces. Motivated by this stark contrast, we gave a complete theoretical characterization of local search. Our theoretical results confirm that local search performs well on smaller search spaces and when the search space exhibits locality.
Finally, we are conducting formal studies on the building blocks of NAS, including the
architecture encoding. In most NAS algorithms, the neural architectures must be passed as input to the algorithm using some encoding. For example, we might encode the neural architectures using an adjacency matrix. Our recent work shows that this encoding can have a substantial impact on the final result of the NAS algorithm. We conduct a set of experiments with eight different encodings with various NAS algorithms. Our results lay out recommendations for the best encodings to use in different settings within NAS.