Parallelizable training in deep learning through local and distributed approaches
Entraînement parallélisable en apprentissage profond par le biais d'approches locales et distribuées
Résumé
Recent breakthroughs in deep learning have been driven by the growth of deep neural networks, improving their ability to memorize and generalize. However, this growth requires ever-increasing computational resources to train these networks.In this thesis, we propose to improve the standard deep learning training framework, which consists of parallelized mini-batch SGD with backpropagation. By deviating from it, we can obtain more parallelizable and faster approaches. First, we study the capabilities of local learning approaches, a more parallelizable alternative to the backpropagation gradient estimation method. The model is split into sequential stages connected only by feedforward connections. We find that we can improve self-supervised local learning by removing certain data samples from the local losses computation, preventing information collapse. We also show that forward-mode automatic differentiation, which computes a directional derivative in a single forward pass, can be improved by using local gradients as tangent directions.Second, we study distributed approaches to training deep neural networks, in particular considering their communication costs. We modify synchronous data parallelism to balance the overall memory and communication overhead by shifting worker execution from simultaneous to sequential. Finally, we propose a novel highly communication-efficient distributed training approach that allows an ensemble of models to be weight-averaged at the end of training, resulting in a single ensemble-level model.
Les récentes avancées dans le domaine de l'apprentissage profond ont été poussées par la croissance des réseaux de neurones profonds, améliorant leur capacité de mémorisation et de généralisation. Cependant, cette croissance s'étend aussi aux ressources computationnelles nécessaires à leur entraînement. Dans cette thèse, nous proposons d'améliorer l'algorithme d'apprentissage standard qui consiste en de la rétropropagation parallélisée. En s'en écartant, il est possible d'obtenir des approches plus parallélisables et rapides. Tout d'abord, nous étudions les capacités des approches d'apprentissage local, une alternative plus parallélisable à la méthode standard d'estimation du gradient par rétropropagation. Le modèle est divisé en stages séquentiels reliées uniquement par des connexions de type `feedforward'. Nous améliorons l'apprentissage local auto-supervisé en supprimant certains échantillons de données des calculs locaux, ce qui permet d'éviter un effondrement de l'information. Nous montrons également que la dérivation automatique en mode direct, qui calcule une dérivée directionnelle en `feedforward', est améliorée en utilisant les gradients locaux comme directions tangentes. Deuxièmement, nous étudions les approches distribuées pour l'apprentissage profond, en particulier en tenant compte de leurs coûts de communication. Nous modifions le parallélisme de données synchrone pour équilibrer l'utilisation de la mémoire globale et des communications, en passant les calculs de simultanés à séquentiels. Enfin, nous proposons une nouvelle approche d'apprentissage distribué nécessitant peu de communications permettant à un ensemble de réseaux d'être moyenné après entraînement, donnant un modèle très performant au niveau de l'ensemble.
Origine | Version validée par le jury (STAR) |
---|