Evolución de redes neuronales mediante topologías aumentadas

Coto Guardo, Félix. “Evolución de redes neuronales mediante topologías aumentadas.” Bachelor’s thesis, 2019.
URL1 URL2

Este Trabajo Fin de Grado consiste en estudiar los sistemas de redes neuronales desde un punto de vista evolutivo. Estos sistemas son extremadamente flexibles, es decir, se adaptan correctamente a distintos problemas. El inconveniente principal ocurre a la hora de elegir la estructura de estos sistemas para cada problema. Por ello, existen diversos enfoques e ideas para tratar con dicho inconveniente, partiendo desde el más básico, que consistiría en “ensayo y error”, esto es, ir probando manualmente distintas estructuras y parámetros de la red neuronal hasta dar con un resultado satisfactorio. Puede intuirse que realizar dicha tarea puede llegar a ser tediosa, dependiendo del tamaño del sistema. Es por ello por lo que aparecieron algoritmos para automatizar este proceso, siendo NEAT (NeuroEvolution of Augmenting Topologies) uno de los más conocidos, desarrollado en 2002 por Ken Stanley. NEAT no es el primer intento de aproximarse a sistemas de redes desde el punto de vista evolutivo. Sin embargo, su popularidad se debe a que ofrece soluciones a problemas que sistemas más antiguos presentaban. Por ejemplo, uno de los objetivos de NEAT es garantizar que la estructura de las redes se mantenga lo más simple posible. Otro objetivo es evitar que una solución predomine, por medio de la especiación. Esto es, separar las redes en especies según su estructura, para permitir que el sistema explore varios tipos de posibles soluciones a la vez. Además de las redes neuronales, NEAT utiliza otro elemento común del campo del Aprendizaje Automático, como son los algoritmos genéticos. La idea principal consiste en tratar a las redes neuronales como individuos, codificarlas como genes, y evaluarlas a través de dicho algoritmo genético. Las redes neuronales que arrojen mejores resultados tendrán más probabilidad de ir pasando su información genética a sus descendientes, hasta llegar a una red que se considere lo suficientemente buena para el problema planteado. El contenido de este trabajo gira en torno al estudio e implementación de NEAT, así como la discusión de sus ventajas y desventajas, y, por último, la aplicación de NEAT en diversos problemas, para comprobar cómo se comporta y ver si realmente es un algoritmo efectivo frente a otras estrategias.

Related articles