Construcción de Arquitecturas Neuronales Profundas utilizando Programación Genética Guiada por Gramáticas y Algoritmos de Estimación de Distribución

Hoz Galiana, David de la (2020). Construcción de Arquitecturas Neuronales Profundas utilizando Programación Genética Guiada por Gramáticas y Algoritmos de Estimación de Distribución. Thesis (Master thesis), E.T.S. de Ingenieros Informáticos (UPM).

Description

Title: Construcción de Arquitecturas Neuronales Profundas utilizando Programación Genética Guiada por Gramáticas y Algoritmos de Estimación de Distribución
Author/s:
  • Hoz Galiana, David de la
Contributor/s:
  • Ramos Criado, Pablo
  • Manrique Gamo, Daniel
Item Type: Thesis (Master thesis)
Masters title: Inteligencia Artificial
Date: July 2020
Subjects:
Faculty: E.T.S. de Ingenieros Informáticos (UPM)
Department: Inteligencia Artificial
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[img]
Preview
PDF - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (3MB) | Preview

Abstract

En la actualidad, el aprendizaje profundo (deep learning) es una de las disciplinas más relevantes dentro del aprendizaje automático. Esta técnica ha demostrado buenos resultados en multitud de tareas. Sin embargo, presenta la dificultad de tener que ajustar los hiperparámetros del algoritmo para cada problema a resolver. Hay una línea de investigación enfocada a reducir este problema, denominada NAS (Neural Architecture Search). En ella, se buscan soluciones que sean capaces de obtener no solo la arquitectura neuronal que resuelve un problema, sino también otros hiperparámetros, de manera automática. La computación evolutiva es una de las técnicas utilizadas para ello. Dentro de los diferentes algoritmos evolutivos que se pueden utilizar para este fin, destacan los: algoritmos genéticos, que presentan limitaciones en la codificación de las soluciones; la Programación Genética Guiada por Gramáticas (GGGP) con el cruce de Whigham (WX), que es muy explorativo; y los algoritmos de estimación de distribución aplicados a programación genética guiada por gramáticas (EDA-GGGP), que tienen gran capacidad de búsqueda local. Recientemente, se ha desarrollado una nueva técnica, nunca probada en la búsqueda de arquitecturas neuronales, que consiste en un EDA con un factor de suavizado (SEDA) que, aplicado a GGGP, ha dado buenos resultados en problemas complejos que requieren el manejo de árboles de mucha profundidad: el tipo de problema que supone la obtención de la arquitectura de una red de neuronas profunda. En este trabajo de fin de máster se estudia el rendimiento de SEDA-GGGP en la búsqueda de arquitecturas neuronales que permitan ajustar un conjunto de datos y comparar los resultados con WX y EDA-GGGP; dos algoritmos totalmente contrapuestos en sus capacidades de exploración y explotación. Para ello, el trabajo se estructura en tres fases. En la primera fase, se busca la mejor configuración de hiperparámetros para cada algoritmo. En la segunda fase, se comprueba si esos hiperparámetros son adecuados en diferentes problemas que involucran árboles de diferente profundidad. Finalmente, en la tercera fase, se comprueba la calidad de las arquitecturas obtenidas sobre un problema concreto de clasificación. Los resultados obtenidos no permiten identificar a un algoritmo claramente superior al resto. GGGP con el operador de cruce Whigham es altamente explorativo, por lo que permite encontrar soluciones relativamente buenas independientemente de la población inicial. EDA-GGGP es capaz de encontrar las mejores soluciones posibles siempre y cuando la población inicial este orientada hacia el óptimo ya que realiza una búsqueda local a partir de la población inicial. Finalmente, SEDA-GGGP consigue, mediante su factor de suavizado, obtener un equilibrio entre exploración y explotación. Un suavizado de 0.01 es adecuado para resolver problemas de manera general. Si se toman valores más altos (0.1), el algoritmo se hace más explorativo, por lo que es capaz de escapar con mayor facilidad de los óptimos locales, lo que le permite encontrar soluciones adecuadas con mayor frecuencia. Por otra parte, si la tasa de suavizado toma valores más bajos (0.001 ó 0.0001) se potencia su capacidad de búsqueda local, lo que le permite obtener mejores soluciones, siempre y cuando la población inicial esté lo suficientemente cerca del óptimo global. En condiciones ideales (una población inicial bien distribuida), los valores más bajos de suavizado permiten obtener mejores soluciones que los valores más altos. Este trabajo muestra capacidad de SEDA-GGGP en la resolución de problemas de búsqueda complejos, como es la obtención de arquitecturas neuronales. Como consecuencia de la realización de este trabajo, se plantea la posibilidad de usar este algoritmo evolutivo para búsqueda de redes de neuronas con más hiperparámetros, como las redes convolucionales. También se plantea estudiar el uso de un factor de suavizado dinámico que tome valores elevados en las primeras generaciones y disminuya conforme avance el proceso evolutivo.---ABSTRACT---Deep learning is currently one of the most relevant disciplines in machine learning. This technique has proven good results in many tasks. However, it presents the difficulty of having to adjust the hyperparameters of the algorithm for each problem to solve. There is a line of research focused on overcoming this problem called NAS (Neural Architecture Search). This discipline searches for approaches capable of obtaining the neural architecture that solves a problem and other hyperparameters automatically. Evolutionary computing is one of the techniques used for this purpose. The essential evolutionary algorithms that can be applied for this purpose are genetic algorithms, which present limitations in the encoding scheme; Grammar-Guided Genetic Programming (GGGP) with the Whigham’s crossover (WX), which is very explorative; and estimation of distribution algorithms applied to grammar-guided genetic programming (EDA-GGGP), which have an excellent capacity for local search. Recently, a new technique, never tested in the search for neural architectures, has been developed. It consists of an EDA with a smoothing factor (SEDA) applied to GGGP. This algorithm has reported excellent results in complex problems that require dealing with very deep derivation trees: the type of problem that involves obtaining the architecture of a deep neural network. This master’s final project studies the performance of SEDA-GGGP in the search for neuronal architectures that fit a dataset and compares the results with WX and EDAGGGP; two algorithms opposed in their exploration and exploitation capacities. The work is structured in three phases. The first phase seeks for the best configuration of hyperparameters for each algorithm. The second phase checks whether the hyperparameters found are suitable for problems involving different tree sizes. Finally, the third stage investigates the quality of the architectures obtained for a specific classification task. The results achieved do not permit to identify an algorithm superior to the rest. GGGP with the Wigham’s crossover operator is highly explorative, allowing it to find moderately good solutions regardless of the initial population. EDA-GGGP can find the best possible solutions if the initial population is near the optimum since it performs a local search from the initial population. Finally, SEDA-GGGP achieves, through its smoothing factor, a balance between exploration and exploitation. A smoothing factor of 0.01 is suitable for general problem-solving. Taking high values (0.1) makes the algorithm more explorative. Therefore, it can escape the local optima easily, allowing it to find suitable solutions more often. On the contrary, if the smoothing rate takes low values (0.001 or 0.0001), it enhances its local search capability. This way, SEDAGGGP can locate better solutions, as long as the initial population is near enough the optimum. If the population is well distributed, low smoothing factor values allow the evolutionary algorithm to achieve better solutions than the higher ones. This work shows the capacity of SEDA-GGGP to solve complex search problems, including obtaining neural architectures. Consequently, it raises the possibility of using this evolutionary algorithm to search for neuronal networks with more hyperparameters, such as convolutional networks. This work also proposes studying a dynamic smoothing factor that takes high values in the first generations and decreases as the evolutionary process moves forward.

More information

Item ID: 63690
DC Identifier: http://oa.upm.es/63690/
OAI Identifier: oai:oa.upm.es:63690
Deposited by: Biblioteca Facultad de Informatica
Deposited on: 09 Sep 2020 11:08
Last Modified: 09 Sep 2020 11:08
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM