Angle d’Anderson
Les GPU pourraient être meilleurs, et non juste plus rapides, pour l’entraînement de réseaux de neurones profonds

Des chercheurs de Pologne et du Japon, travaillant avec Sony, ont trouvé des preuves que les systèmes d’apprentissage automatique formés sur des GPU plutôt que des CPU peuvent contenir moins d’erreurs pendant le processus d’entraînement et produire de meilleurs résultats, contredisant la compréhension commune selon laquelle les GPU effectuent simplement ces opérations plus rapidement, plutôt que mieux.
La recherche, intitulée Impact de l’incertitude du GPU sur la formation de réseaux de neurones profonds prédictifs, provient de la Faculté de psychologie et de sciences cognitives de l’Université Adam Mickiewicz et de deux universités japonaises, ainsi que des laboratoires de recherche informatique de Sony.
L’étude suggère que les ‘incertitudes’ que les réseaux de neurones profonds présentent face à diverses configurations matérielles et logicielles favorisent les unités de traitement graphique plus coûteuses (et de plus en plus rares) et ont constaté lors des tests qu’un réseau de neurones profond formé exclusivement sur CPU produisait des taux d’erreur plus élevés sur le même nombre d’époques (le nombre de fois que le système rétraite les données d’entraînement au cours d’une session).

Dans cet exemple supplémentaire de l’article, on voit (deux dernières lignes), une qualité de résultat similaire obtenue à partir de divers GPU, et (première ligne), les résultats inférieurs obtenus à partir d’une gamme de CPU autrement très capables. Source: https://arxiv.org/pdf/2109.01451.pdf
Phénomènes étranges
Ces résultats préliminaires ne s’appliquent pas uniformément à travers les algorithmes d’apprentissage automatique populaires, et dans le cas d’architectures d’auto-encodeur simples, le phénomène ne se manifeste pas.
Néanmoins, le travail suggère qu’il pourrait y avoir une sorte de « vitesse d’évasion » pour l’efficacité de la formation dans les réseaux de neurones complexes, où effectuer les mêmes opérations à une vitesse plus lente et avec des temps de formation plus longs ne permet pas d’obtenir la parité de performance que l’on attendrait de routines d’itération mathématique.
Les chercheurs suggèrent que cette disparité de performance pourrait être particulière à certains types de réseaux de neurones, et que les aspects indéterminés du traitement spécifique au GPU, souvent considérés comme un obstacle à surmonter, pourraient non seulement apporter des avantages notables, mais pourraient également être intentionnellement incorporés dans les systèmes ultérieurs. L’article suggère également que les résultats pourraient offrir des insights plus profonds dans le traitement computationnel lié au cerveau.
Identifier les particularités qui augmentent l’efficacité et la qualité des résultats de cette manière sur les GPU tient du potentiel pour obtenir une compréhension plus approfondie des architectures d’« intelligence artificielle noire » et même pour améliorer les performances des CPU – bien que les causes sous-jacentes soient actuellement évasives.
Auto-encodeur Vs. PredNet
En étudiant les anomalies, les chercheurs ont utilisé un auto-encodeur de base et également le réseau de neurones prédictif de l’Université de Harvard PredNet, une recherche de 2016 conçue pour explorer et tenter de reproduire le comportement du cortex cérébral humain.
Les deux systèmes sont des réseaux de neurones profonds conçus pour synthétiser des images appropriées par apprentissage non supervisé (avec des données dont les étiquettes ont été omises), bien que l’auto-encodeur traite de manière linéaire une image par lot, qui produirait ensuite une sortie comme l’image suivante dans un pipeline récurrent. L’auto-encodeur a été formé sur la base de données MNIST d’écriture manuscrite.

L’auto-encodeur dans les tests des chercheurs a été formé sur la base de données MNIST, qui comprend 60 000 images d’entraînement de 28×28 pixels, anti-aliasées pour l’induction de gris, ainsi que 10 000 images de test.
En revanche, PredNet évalue des entrées vidéo complexes, et dans le cas de cette recherche, a été formé sur l’ensemble de données FPSI, qui présente des séquences vidéo extensives de caméras portables d’une journée à Disney World, en Floride (Disney était l’un des associés de recherche dans l’article de 2012).

Séquences d’images de FPSI, montrant des vues en première personne d’une journée à Disney World.
Les deux architectures sont très différentes en termes de complexité. L’auto-encodeur est conçu pour reconstruire des images plutôt que de prédire des valeurs cibles. En revanche, PredNet présente quatre couches, chacune consistant en neurones de représentation utilisant la mémoire à long terme convolutionnelle (LSTM).
Les couches produisent des prédictions contextuelles qui sont ensuite comparées à une cible pour produire un terme d’erreur qui se propage dans tout le réseau. Les deux modèles utilisent l’apprentissage non supervisé.

L’architecture simple et linéaire de l’auto-encodeur, et le réseau plus labyrinthique et récursif de PredNet.
Les deux systèmes ont été testés sur une gamme de configurations matérielles et logicielles, y compris des CPU sans GPU (Intel i5-4590, i7-6800K, i5-7600K, ou AMD Ryzen-5-3600) et des CPU avec GPU (Intel i5-7600K + NVIDIA GTX-750Ti, i5-7600K + GTX-970, i7-6700K + GTX-1080, i7-7700K + GTX-1080Ti, i7-9700 + RTX-2080Ti, i5-7600K + RTX-2060 super, AMD Ryzen-5-3600 + RTX-2070 super, ou i5-9400 + Titan-RTX).
Le visualiseur de processus interactif htop a été utilisé pour s’assurer que tout l’entraînement se déroulait soit sur un seul thread (sur un Intel i7-6800K), sur quatre threads (sur un Intel i5-4590 et i5-7600K), ou six threads (sur un AMD Ryzen-5-3600).
Points de selle
Sur l’auto-encodeur, la différence moyenne sur toutes les configurations, avec et sans cuDNN, n’était pas significative. Pour PredNet, les résultats étaient plus frappants, avec des différences notables dans l’évaluation des pertes et la qualité entre la formation sur CPU et GPU.

Les résultats moyens de perte pour la formation de PredNet sur quatre CPU et huit GPU, avec le réseau formé sur 5000 cadres vidéo en 250 lots, avec la perte moyenne pour les 1000 derniers cadres (50 lots) représentée. cuDNN était désactivé.
Les chercheurs concluent que ‘Bien que le mécanisme soit peu clair, le matériel GPU semble avoir la capacité d’améliorer la formation des réseaux de neurones profonds.’
Les résultats indiquent que les GPU pourraient être meilleurs pour éviter les points de selle – les zones dans une descente de gradient qui décrivent le fond d’une pente.

Le nadir des pentes dans une descente de gradient est le « point de selle », nommé pour des raisons évidentes. Source: https://www.pinterest.com.au/pin/436849232581124086/
Les points de selle, bien qu’ils soient un obstacle, ont été largement rejetés comme étant facilement contournés dans la réflexion récente sur l’optimisation de la descente de gradient stochastique (SGD), mais le nouveau document suggère non seulement que les GPU pourraient être spécifiquement équipés pour les éviter, mais que l’influence des points de selle devrait peut-être être réexaminée.












