Initiation pratique à l’apprentissage profond
Le Deep Learning (Apprentissage Profond en Français) a bénéficié d’une forte visibilité dans le monde de l’apprentissage automatique, grâce notamment aux progrès rapides et importants dans la reconnaissance vocale, la vision par ordinateur, et le traitement automatique du langage naturel. Cette branche du machine learning a suscité des investissements importants de la part des géants de l’internet tels que Google, Microsoft, Facebook et IBM.
C’est également en grande partie grâce à l’apprentissage profond que le programme AlphaZero a pu battre les champions de Go et les meilleurs programmes d’échecs en fin 2017.
Le Deep Learning permet de construire des modèles prédictifs hiérarchiques appelés réseaux de neurones artificiels. Grâce à leur structure, ces réseaux construisent automatiquement des représentations de plus en plus abstraites des données.
L’avènement de ces techniques a été rendu possible par le Big Data – grand volume de données pour l’apprentissage ; par la rapide croissance des capacités de calcul, notamment grâce aux GPUs ; et enfin par la meilleure compréhension des techniques d’optimisation des réseaux de neurones.
Programme
Ce cours couvre les techniques pratiques d’optimisation des réseaux de neurones profonds. Il permettra aux étudiants d’être opérationnels pour l’étude et la mise en place de modèles d’apprentissage avancés sur des données complexes, grâce à aux techniques et outils suivants:
- Bibliothèques Numpy, TensorFlow, Keras
- Techniques d’optimisation, de transfert et de régularisation
- Connaissance des architectures classiques et à l’état de l’art
En particulier les étudiants mettront en œuvre ces méthodes pour les applications suivantes :
- l’analyse de l’image grâce aux réseaux de convolution profonds ;
- l’analyse du langage par l’apprentissage non supervisé de représentations de mots et les réseaux récurrents ;
- une ouverture sur d’autres applications tels que les moteurs de recommandation, les modèles génératifs, …
Public visé et prérequis
Ce cours s’adresse aux étudiants ayant déjà étudié le Machine Learning. Il est composé de nombreux travaux pratiques sur machine (prévoir un ordinateur portable).
Les prérequis techniques sont langage python (notamment sous jupyter, notions de numpy et scikit-learn).
Compréhension générale des concepts de l'apprentissage automatique (regression linéaire et logistique, estimateur du maximum de vraisemblance, validation croisée et surapprentissage) et expérience avec les méthodes numériques pour l'algèbre linéaire et l'optimisation convexe.
Modalités de contrôle
Contrôle continu en début de session travaux pratiques, et évaluation finale sur machine.