Mathématiques | Informatique
Sébastien Stragiotti, 2006 | Charrat, VS
Ce travail explore les différentes facettes des réseaux neuronaux, par une approche mathématique puis expérimentale. D’abord, nous établissons les fondements mathématiques nécessaires à la compréhension des réseaux en présentant notamment des notions d’algèbre linéaire et de calcul différentiel. Ensuite, la partie expérimentale est divisée en trois catégories de modèles : les Multilayer Perceptron (MLP), les Convolutional Neural Network (CNN) et les Generative Adversarial Network (GAN). Les modèles sont présentés théoriquement puis entraînés et évalués sur des bases de données telles que MNIST, CIFAR ou CELEB-A. Lors de cette phase pratique, plusieurs techniques sont appliquées pour améliorer les performances des réseaux neuronaux.
Problématique
Le but de ce projet est de plonger au cœur du deep learning de l’intelligence artificielle, plus particulièrement des réseaux neuronaux ; une technologie qui est aujourd’hui tant crainte que plébiscitée et souvent appliquée comme une «boîte noire». Pour y remédier, un approfondissement tant sur le plan théorique que pratique doit être fourni. Il s’agit d’expliquer les concepts mathématiques sous-jacents, de les appliquer, puis de comprendre leur application au travers de différentes expériences.
Méthodologie
Le travail s’appuie sur deux axes principaux :
1) Approche mathématique: Exposition des principales notions mathématiques relatives à la construction d’un réseau et à son entraînement.
2) Expérimentations : Étude de trois catégories de réseau neuronal : MLP et CNN pour la classification d’images et GAN pour la génération d’images. Pour se faire, la méthodologie suivante est utilisée :
a) Type de réseau : Explication des différentes spécificités relatives à l’architecture et à l’entraînement.
b) Base de données et objectifs : Analyse de la base de données choisie afin d’établir les objectifs à atteindre.
c) Phase d’entraînement : Programmation du modèle en langage Python à l’aide de la libraire PyTorch puis démarrage de l’entraînement.
d) Évaluation : Analyse des résultats (graphiques pour les MLP et CNN, images pour les GAN).
e) Solutions : Si les objectifs de performance établis ne sont pas atteints, plusieurs solutions sont proposées en s’appuyant sur l’analyse des résultats, puis appliquées seules ou de manière combinée jusqu’à atteindre l’objectif.
Résultats
Multilayer Perceptron (MLP) : Pour la tâche de reconnaissance de chiffre manuscrit (MNIST), nous obtenons un taux de reconnaissance de 98.26%, la baseline de référence étant de 99.87%.
Convolutional Neural Network (CNN) : Pour la tâche de reconnaissance d’objet sur image (CIFAR-10 et CIFAR-100), nous atteignons respectivement des performances plus limitées (87.5% et 73%) en raison de la complexité des données, la baseline de référence étant de 99.5%.
Generative Adversarial Network (GAN) : Pour la tâche de génération d’image de chiffre manuscrit (MNIST-GAN), nous obtenons des images réalistes après plusieurs époques d’entraînement, tandis que la génération d’image de visage (Celeb-A) montre des résultats prometteurs mais reste sensible aux paramètres du modèle et demanderait un temps d’entraînement plus long.
Discussion
La plupart des modèles proposés atteignent des résultats à la hauteur des “state-of-the-art models” (SoA) considérant les moyens que nous avions à disposition. Les expériences montrent l’importance du choix des hyperparamètres (taux d’apprentissage, nombre d’époques, taille du batch, etc.) et de l’architecture sur la qualité des résultats. Elles mettent également en évidence des problèmes liés à l’entraînement tel que le surapprentissage (overfitting). Une augmentation du volume des données d’entraînement et une optimisation des architectures pourraient améliorer les résultats des modèles. De plus, les tâches de classification et de génération abordées au travers des MLP, des CNN et des GAN mettent en lumière les différences de ces modèles d’apprentissage.
Conclusions
Ce projet a permis d’effleurer l’immense domaine du deep learning, sous-domaine de l’intelligence artificielle. L’étude des réseaux neuronaux, théorique et pratique, a éclairci les principaux concepts mathématiques sous-jacents pour permettre une meilleure compréhension globale du sujet. Cependant, le domaine est très vaste et une multitude d’aspects théoriques, pratiques ou même éthiques liés à l’intelligence artificielle et aux réseaux de neurones reste à considérer. Pour aller plus loin, plusieurs types de réseaux neuronaux ont été développés dans des domaines tels que le Natural Language Processing ou la Computer Vision.
Appréciation de l’experte
Dr. Sandrine Tornay
Dans un contexte où l’intelligence artificielle est de plus en plus utilisée comme un processus automatisé et invisible, Monsieur Stragiotti a su mettre en lumière les principes fondamentaux du deep learning, en articulant les concepts mathématiques sous-jacents, leurs applications concrètes et leurs implémentations. Son approche intégrative fait de ce travail un support didactique complet. En effet, son travail témoigne d’une maîtrise remarquable de la synthèse entre mathématiques et programmation, ainsi que d’un intérêt profond à rendre ces connaissances accessibles et compréhensibles.
Mention:
très bien
Lycée-Collège de l’Abbaye, St-Maurice
Enseignant: Jan Schönbächler