Apprentissage profond

DeepLearning
Abstract

L'apprentissage profond (Deep Learning) est une nouvelle approche de l'apprentissage automatique qui permet de construire des modèles qui ont montré des performances supérieures pour un large éventail d'applications, en particulier la vision par ordinateur et le traitement du langage naturel. Grâce à la disponibilité conjointe de grands corpus de données et d'une puissance de traitement abordable, l'apprentissage profond a relancé l'ancien domaine des réseaux de neurones artificiels et provoqué la « Renaissance » de l'intelligence artificielle (IA). L'objectif de ce cours est de fournir un aperçu approfondi du domaine de l'apprentissage profond, en commençant par les architectures de réseaux de neurones simples et en poursuivant avec les pratiques contemporaines et les modèles de l'état de l'art. Le cours est organisé en une combinaison de cours où la théorie est exposée et discutée, et des sessions de travaux pratiques où les expérimentations sont effectuées pour mettre en pratique les concepts théoriques.

Modalités pédagogiques : Cours magistraux et séances de travaux pratiques.

Règles du cours :  La présence à tous les cours est obligatoire.

Bibliography
  • Livre : GOODFELLOW I., BENGIO Y., COURVILLE A. Deep Learning. MIT Press, 2016, 800p.
  • Livre : DENG L., YU D. Deep Learning: Methods and Applications. Now Publishers Inc, 2014, 212p.
  • Publication : BENGIO Y., LECUN Y., HINTON G. Deep Learning. Nature. 521: 436-444. doi:10.1038/nature14539, 2015.

Requirements

Connaissances de base en Data Science

Description

Le cours vise à exposer les étudiants aux développements récents dans le domaine des Réseaux de Neurones Artificiels Profonds (Deep Artificial Neural Networks - DANN). Il commencera par un bref rappel sur la théorie des réseaux de neurones et passera ensuite à la présentation de l'évolution des DANN introduits ces dernières années.

L'étude débutera avec l'architecture perceptron multicouche (Multilayer Perceptron) et le célèbre algorithme de rétropropagation ainsi que ses divers paramètres et variantes car ils constituent la base des avancées les plus récentes.

Ensuite, le cours explorera les problèmes spécifiques aux réseaux profonds, et quelques-unes des solutions proposées pour les surmonter, telles que l'élagage (drop-Out) et les ReLU (Unité linéaire rectifiée). Cela comprend aussi une approche non supervisée utilisant des auto-encodeurs. Ensuite les architectures spécifiques impliquées dans les réseaux profonds, comme les réseaux de neurones convolutifs (Convolutional Neural Networks - CNN) pour le traitement d'images, les réseaux résiduels qui permettent des réseaux très profonds, les réseaux de neurones récurrents (Recurrent Neural Networks - RNN) pour la modélisation du langage et les réseaux avec mémoire à long-court terme (Long Short Term Memory - LSTM) pour l'apprentissage de dépendance à long terme, seront décrites.

Le cours présentera et détaillera les techniques spécifiques impliquées dans leurs applications, telles que l'apprentissage par transfert et le raffinement des réseaux profonds, la rétropropagation à travers le temps, ainsi que les questions qui apparaissent dans leur mise en œuvre et leur utilisation pratique.

Tout au long du cours, les applications des différentes topologies de réseau sont discutées afin d'illustrer leur utilisation. Certains des environnements de développement pour l'apprentissage profond, tels que Caffe et Tensorflow, seront utilisés pour les sessions de travaux pratiques.

Objectifs d'apprentissage : 

  • Connaitre les problèmes clefs actuels dans le domaine des réseaux de neurones et de l'apprentissage profond.
  • Maitriser les différentes étapes relatives à la définition, l'apprentissage et l'utilisation des réseaux de neurones profonds.

Evaluation :

  • Rapports de travaux pratiques,
  • Examen écrit.