Scalability study of Deep Learning algorithms in high performance computer infrastructures

Deep learning algorithms base their success on building high learning capacity models with millions of parameters that are tuned in a data-driven fashion. These models are trained by processing millions of examples, so that the development of more accurate algorithms is usually limited by the throug...

Descripción completa

Detalles Bibliográficos
Autor: Sastre Cabot, Francesc
Tipo de recurso: tesis de maestría
Fecha de publicación:2017
País:España
Institución:Universitat Politècnica de Catalunya (UPC)
Repositorio:UPCommons. Portal del coneixement obert de la UPC
Idioma:inglés
OAI Identifier:oai:upcommons.upc.edu:2117/106390
Acceso en línea:https://hdl.handle.net/2117/106390
Access Level:acceso abierto
Palabra clave:Computational grids (Computer systems)
Machine learning
Neural networks (Computer science)
Sistemes paral·lels
Deep Learning
Xarxes neuronals convolucionals
Visió per computador
Unitat de processament gràfic
TensorFlow
Computadores d'altes prestacions
Minotauro
BSC
Parallel Systems
Convolutional Neural Networks
Computer Vision
Graphic Processing Unit
High Performance Computers
Computació distribuïda
Aprenentatge automàtic
Xarxes neuronals (Informàtica)
Àrees temàtiques de la UPC::Informàtica
Descripción
Sumario:Deep learning algorithms base their success on building high learning capacity models with millions of parameters that are tuned in a data-driven fashion. These models are trained by processing millions of examples, so that the development of more accurate algorithms is usually limited by the throughput of the computing devices on which they are trained. This project show how the training of a state-of-the-art neural network for computer vision can be parallelized on a distributed GPU cluster, Minotauro GPU cluster from Barcelona Supercomputing Center with the TensorFlow framework. In this project, two approaches for distributed training are used, the synchronous and the mixed-asynchronous. The effect of distributing the training process is addressed from two different points of view. First, the scalability of the task and its performance in the distributed setting are analyzed. Second, the impact of distributed training methods on the final accuracy of the models is studied. The results show an improvement for both focused areas. On one hand, the experiments show promising results in order to train a neural network faster. The training time is decreased from 106 hours to 16 hours in mixedasynchronous and 12 hours in synchronous. On the other hand we can observe how increasing the numbers of GPUs in one node rises the throughput, images per second, in a near-linear way. Moreover the accuracy can be maintained, like the one node training, in the synchronous methods.