Implementing from scratch an easy-to-use Deep Learning library and experimenting with the internal neural networks pipeline
García Romera, Abel
Lumbreras Ruiz, Felipe, dir. (Universitat Autònoma de Barcelona. Departament de Ciències de la Computació)
Universitat Autònoma de Barcelona. Escola d'Enginyeria

Additional title: Implementación desde cero de una librería de Deep Learning fácil de usar y experimentos internos con redes neuronales
Additional title: Implementació des de zero d'una llibreria de Deep Learning fàcil de fer servir i experiments interns amb xarxes neuronals
Date: 2021
Abstract: Deep Learning (DL) is acquiring more and more applications in the industry, but not all professionals who need it have knowledge on the topic. For this reason, I have developed my own DL library for Python that includes multilayer perceptrons and convolutional neural networks, completely from scratch and with the aim of being easy to use, as I have shown when it has been used by some students from my old high school. Furthermore, keeping this objective in mind, I have also developed an evolutionary meta-learning algorithm to automatically find the optimal combination of hyperparameters for the input data, which achieves better results than the RandomSearch and GridSearch techniques. On the other hand, taking advantage of the fact that I implement neural networks from scratch, this article explains its foundations at a theoretical and mathematical level, as well as some interesting comments about its real implementation. Finally, some internal experiments are included that could not be easily performed with high-level libraries, such as the technique that I propose for standardization of values between layers, which allows using high learning rate values without the inconveniences that this usually implies.
Abstract: El Deep Learning (DL) está siendo cada vez más usado en la industria, pero no todos los profesionales que lo necesitan tienen conocimientos sobre el tema. Por ello, he desarrollado mi propia librería de DL para Python que incluye perceptrones multicapa y redes neuronales convolucionales, completamente desde cero y con el objetivo de que sea fácil de usar, como he demostrado cuando la han utilizado algunos alumnos de secundaria de mi antiguo instituto. Además, manteniendo en mente este objetivo, he desarrollado también un algoritmo evolutivo de meta-aprendizaje para encontrar automáticamente la combinación de hiperparámetros óptima para los datos de entrada, y que consigue resultados mejores que las técnicas de RandomSearch y GridSearch analizadas. Por otro lado, aprovechando que implemento las redes neuronales desde cero, este artículo repasa sus fundamentos a nivel teórico y matemático, así como algunos comentarios interesantes sobre su implementación real. Finalmente, se incluyen algunos experimentos internos que no podrían ser fácilmente realizados con librerías de alto nivel, como la técnica que propongo de estandarización de valores entre capas, que permite utilizar tasas de aprendizaje elevadas sin los inconvenientes que esto suele implicar.
Abstract: El Deep Learning (DL) està sent cada vegada més utilitzat a la indústria, però no tots els professionals que ho necessiten tenen coneixements sobre el tema. Per això, he desenvolupat la meva pròpia llibreria de DL per a Python que inclou perceptrons multicapa i xarxes neuronals convolucionals, completament des de zero i amb l'objectiu que sigui fàcil d'usar, com he demostrat quan l'han fet servir alguns alumnes de secundària del meu antic institut. A més, mantenint en ment aquest objectiu, he desenvolupat també un algorisme evolutiu de meta-aprenentatge per trobar automàticament la combinació d'hiperparàmetres òptima per a les dades d'entrada, i que aconsegueix resultats millors que les tècniques de RandomSearch i GridSearch analitzades. D'altra banda, aprofitant que implemento les xarxes neuronals des de zero, aquest article repassa els seus fonaments a nivell teòric i matemàtic, així com alguns comentaris interessants sobre la seva implementació real. Finalment, s'hi inclouen alguns experiments interns que no es podrien realitzar fàcilment amb llibreries d'alt nivell, com la tècnica que proposo d'estandardització de valors entre capes, que permet utilitzar taxes d'aprenentatge elevades sense els inconvenients que això sol implicar.
Rights: Aquest document està subjecte a una llicència d'ús Creative Commons. Es permet la reproducció total o parcial, la comunicació pública de l'obra i la creació d'obres derivades, sempre que no sigui amb finalitats comercials i que es distribueixin sota la mateixa llicència que regula l'obra original. Cal que es reconegui l'autoria de l'obra original. Creative Commons
Language: Anglès
Studies: Grau en Enginyeria Informàtica [2502441]
Study plan: Enginyeria Informàtica [958]
Document: Treball final de grau ; Text
Subject area: Menció Computació
Subject: Aprenentatge automàtic ; Aprenentatge computacional ; Aprenentatge profund ; AutoML ; Classificació d'imatges ; Metaaprenentatge ; Perceptró multicapa ; Python ; Visió per computador ; Xarxa neuronal artificial ; Xarxa neuronal convolucional ; Aprendizaje automático ; Aprendizaje computacional ; Aprendizaje profundo ; Clasificación de imágenes ; Metaaprendizaje ; Perceptrón multicapa ; Red neuronal artificial ; Red neuronal convolucional ; Visión por computador ; Artificial neural networks ; Automated machine learning ; Computer vision ; Convolutional neural network ; Deep learning ; Image classification ; Machine learning ; Meta learning ; Multilayer perceptron



15 p, 1.3 MB

The record appears in these collections:
Research literature > Bachelor's degree final project > School of Engineering. TFG

 Record created 2022-04-06, last modified 2023-07-22



   Favorit i Compartir