Búsqueda de arquitectura neuronal


La búsqueda de arquitectura neuronal (NAS) [1] [2] es una técnica para automatizar el diseño de redes neuronales artificiales (ANN), un modelo ampliamente utilizado en el campo del aprendizaje automático . NAS se ha utilizado para diseñar redes que están a la par o superan a las arquitecturas diseñadas a mano. [3] [4] Los métodos para NAS se pueden clasificar según el espacio de búsqueda, la estrategia de búsqueda y la estrategia de estimación del rendimiento utilizada: [1]

NAS está estrechamente relacionado con la optimización de hiperparámetros [5] y el metaaprendizaje [6] y es un subcampo del aprendizaje automático automatizado (AutoML). [7]

El aprendizaje por refuerzo (RL) puede respaldar una estrategia de búsqueda NAS. Zoph y col. [3] aplicó NAS con RL dirigido al conjunto de datos CIFAR-10 y logró una arquitectura de red que rivaliza con la mejor arquitectura diseñada manualmente en cuanto a precisión, con una tasa de error de 3.65, 0.09 por ciento mejor y 1.05 veces más rápido que un modelo relacionado diseñado a mano . En el conjunto de datos de Penn Treebank , ese modelo compuso una celda recurrente que supera a LSTM , alcanzando una perplejidad del conjunto de pruebas de 62.4, o 3.6 perplejidad mejor que el sistema líder anterior. En la tarea de modelado del lenguaje de caracteres de PTB, logró 1.214 bits por carácter. [3]

Aprender una arquitectura de modelo directamente en un gran conjunto de datos puede ser un proceso largo. NASNet [4] [8] abordó este problema transfiriendo un bloque de construcción diseñado para un conjunto de datos pequeño a un conjunto de datos más grande. El diseño se limitó a utilizar dos tipos de celdas convolucionales para devolver mapas de características que cumplen dos funciones principales al convolucionar un mapa de características de entrada: celdas normales que devuelven mapas de la misma extensión (alto y ancho) y celdas de reducción en las que el mapa de características devuelto la altura y el ancho se reducen en un factor de dos. Para la celda de reducción, la operación inicial aplicada a las entradas de la celda usa un paso de dos (para reducir la altura y el ancho). [4]El aspecto aprendido del diseño incluyó elementos tales como qué capa (s) inferior (es) cada capa superior tomó como entrada, las transformaciones aplicadas en esa capa y fusionar múltiples salidas en cada capa. En el ejemplo estudiado, se diseñó la mejor capa convolucional (o "celda") para el conjunto de datos CIFAR-10 y luego se aplicó al conjunto de datos ImageNet apilando copias de esta celda, cada una con sus propios parámetros. El enfoque arrojó una precisión del 82,7% entre los primeros 1 y el 96,2% entre los 5 primeros. Esto superó las mejores arquitecturas inventadas por humanos a un costo de 9 mil millones de FLOPS menos—Una reducción del 28%. El sistema siguió superando la alternativa diseñada manualmente en distintos niveles de cálculo. Las características de la imagen aprendidas de la clasificación de imágenes se pueden transferir a otros problemas de visión por computadora. Por ejemplo, para la detección de objetos, las celdas aprendidas integradas con el marco Faster-RCNN mejoraron el rendimiento en un 4.0% en el conjunto de datos COCO . [4]

En la llamada Búsqueda eficiente de arquitectura neuronal (ENAS), un controlador descubre arquitecturas aprendiendo a buscar un subgráfico óptimo dentro de un gráfico grande. El controlador está capacitado con el gradiente de políticas para seleccionar un subgráfico que maximice la recompensa esperada del conjunto de validación. El modelo correspondiente al subgrafo está entrenado para minimizar una pérdida de entropía cruzada canónica . Varios modelos secundarios comparten parámetros, ENAS requiere menos horas de GPU que otros enfoques y 1000 veces menos que el NAS "estándar". En CIFAR-10, el diseño de ENAS logró un error de prueba del 2,89%, comparable a NASNet. En Penn Treebank, el diseño de ENAS alcanzó una perplejidad de prueba de 55,8. [9]

Varios grupos emplearon algoritmos evolutivos para NAS. [10] [11] [12] Las mutaciones en el contexto de la evolución de las ANN son operaciones como agregar una capa, eliminar una capa o cambiar el tipo de una capa (por ejemplo, de convolución a agrupación). En CIFAR-10 , la evolución y el RL se comportaron de manera comparable, mientras que ambos superaron la búsqueda aleatoria . [11]