Поиск нейронной архитектуры (NAS) обозначает автоматизированный процесс оптимизации архитектур нейронных сетей в пределах заданного пространства поиска с помощью алгоритмических методов поиска.
Формально NAS можно описать как задачу биуровневой оптимизации:
\[ \min_{\alpha \in \mathcal{A}} \mathcal{L}_{val}(w^{*}(\alpha), \alpha) \quad \text{mit} \quad w^{*}(\alpha) = \arg\min_{w} \mathcal{L}_{train}(w, \alpha) \]
Здесь \( \alpha \) обозначает параметры архитектуры в пространстве поиска \( \mathcal{A} \), а \( w \) — веса сети. Цель — найти архитектуру \( \alpha \), которая минимизирует ошибку на валидационных данных \( \mathcal{L}_{val} \), при этом веса \( w^{*} \) оптимально обучены на тренировочных данных \( \mathcal{L}_{train} \).
Методы NAS включают поиск на основе обучения с подкреплением (например, Zoph & Le, 2017), эволюционные алгоритмы (Real et al., 2019) и дифференцируемый NAS, такой как DARTS (Liu et al., 2019), которые делают процесс поиска дифференцируемым.
Эти методы привели к созданию эффективных архитектур, применяемых в таких областях, как классификация изображений, обработка речи и другие.
Определение:
«Поиск нейронной архитектуры — это автоматизированный процесс оптимизации, направленный на нахождение оптимальной структуры нейронной сети в пределах пространства поиска для максимизации производительности и эффективности модели.»
Источник:
Zoph, B., & Le, Q. V. (2017). Neural Architecture Search with Reinforcement Learning. arXiv preprint arXiv:1611.01578.