v2.11.0 (6082)

Enseignement spécifique des masters - CSC_5AI06_TP : Deep learning I

Descriptif

  • Enseignants : Geoffroy Peeters, Alasdair Newson (Telecom Paris, IP-Paris)
  • Abstract : Le Deep Learning (apprentissage automatique basé sur des réseaux de neurones artificiels profonds) est devenu extrêmement populaire ces dernières années en raison des très bons résultats qu'il permet d'obtenir pour des tâches telles que la régression, la classification ou la génération.
  • Objectifs: fournir une compréhension théorique et une utilisation pratique des trois principaux types de réseaux (Multi-Layer- Perceptron, Réseau de neurones récurrents et Réseau de neurones convolutifs). Le contenu de ce cours va du perceptron à la génération d'images adverses.
  • Format :
    • 6 sessions de 4 heures + examen
    • Chaque cours théorique est suivi d'un TP sur le contenu correspondant où les étudiants apprennent à implémenter ces réseaux en utilisant les trois frameworks les plus populaires : pytorch, tensorflow et keras.
  • Notation : 30% labs/quizz + 70% examen écrit

Objectifs pédagogiques

Acquis d'apprentissage
À l'issue de l'UE, l'élève sera capable de:
- expliquer la théorie sous-jacentes aux principales architectures, paradigmes d'apprentissage, optmiseur régularisation, normalisation du deep learning
- programmer ces architectures en python en utilisant les framework de deep learning pytorch et keras
- appliquer ces architectures à des problèmes typiques de vision par ordinateur, de NLP ou d'audio tels que la classification, la régression ou la génération.

Compétences de rattachement (et justification)
- BC5.2 – Concevoir un système de traitement de données, d’intelligence artificielle, d’apprentissage machine dans un objectif d’aide à la décision ou de recherche automatique d’information; Justification : A l'issu de l'UE, l'étudiant.e sera en mesure de choisir l'architecture, l'entrainement, les paramètres d'optimisation (choix de la loss, de l'optimiseur, normalisation, régularisation) d'un système de deep learning le plus adéquat pour un problème donné; et de le programmer dans le langage pytorch ou keras
- BC5.4 – Tester, gérer un système de traitement de données, d’intelligence artificielle, d’apprentissage machine dans un objectif d’aide à la décision ou de recherche automatique d’information; Justification : A l'issu de l'UE, l'étudiant.e sera en mesure de tester un système de deep learning en mesurant ses performances sur les sous-ensemble de train/valid/test et d'en déduire la généralisation (biais/variance).

Format des notes

Numérique sur 20

Littérale/grade européen

Pour les étudiants du diplôme AUDITEURS_IP Paris

Pour les étudiants du diplôme Diplôme d'Ingénieur de l'Ecole Nationale Supérieure de Techniques Avancées

Le rattrapage est autorisé (Max entre les deux notes écrêté à une note seuil)
  • le rattrapage est obligatoire si :
    Note initiale < 6
  • le rattrapage peut être demandé par l'étudiant si :
    6 ≤ note initiale < 10
L'UE est acquise si Note finale >= 10
  • Crédits ECTS acquis : 2 ECTS

Programme détaillé

  • Cours 1 : du perceptron au perceptron multicouche, y compris la rétropropagation, les algorithmes d'optimisation (SGD, Momentum, ADAM), la régularisation (L1, L2, DropOout), la normalisation.
  • Labo 1 : implémentation d'un MLP dans pytorch
  • Cours 2 : des réseaux neuronaux récurrents aux transformateurs, y compris la rétropropagation à travers le temps, LSTM, applications au NLP -** TP 2** : implémentation de RNN dans keras
  • Cours 3 : Réseaux neuronaux convolutifs, y compris la rétropropagation, la mise en commun, les réseaux les plus connus, les visualisations, les exemples contradictoires.
  • Lab 3 : implémentation de CNN dans pytorch

Mots clés

machine learning, deep learning, artificial neural networks

Méthodes pédagogiques

L'UE est organisée
- en 3 cours magistraux de 4h (portant chacun sur un type d'architecture)
- chaque cours est suivi d'une séance de TPs lors desquels les étudiant.e.s mettent en application les différentes architectures abordées (MLP, CNN et RNN) dans le language pytorch ou keras.
Veuillez patienter