Intelligence artificielle et Deep Learning

Ref: 2EL6090

Description

ADN ou ligne de code ?

Homo Sapiens est taillé pour marcher sur deux pieds, et pourtant, il lui faut apprendre un an avant de se relever. Les créatures des fonds sous-marins peuvent se déplacer dans une obscurité totale, et leurs espèces ont évolué durant des millions d’années pour atteindre ce résultat. L’adaptation à un milieu, à un problème, ou encore l’intelligence, ne sont pas des notions statiques mais le résultat d’un effort constant : l’apprentissage.

Ainsi, l’émergence de système technologiques capables de prédiction, d’expertise, pose rapidement la question de l’apprentissage. Comment un programme peut-il acquérir, assimiler, organiser des savoirs ? Sur ce point, s’inspirer du vivant est un point de départ plutôt fructueux. Comment imiter le comportement de nos neurones ? Celui de l’évolution et de la sélection naturelle ? A quels résultats s’attendre ?

Dans cet électif, vous découvrirez les grandes méthodes d’Intelligence Artificielle et leur fonctionnement. Vous pourrez prendre en main les algorithmes les plus récents sur des cas concrets, et vous aurez l’occasion de pousser l’étude sur un sujet de votre choix. À vous d’apprendre comment faire apprendre !

Highlights

Vie artificielle : automates cellulaires, réseaux de neurones, algorithmes génétiques
Deep Learning : Perceptron multicouches, réseaux de neurones convolutifs et récurrents, mécanismes d'attention, librairie PyTorch

Numéro de trimestre

SG6

Prérequis

Statistiques et apprentissage.


Syllabus

Contexte (10%)
  • Introduction à la matière
  • Mise en contexte historique.
  • Lien avec les matières du programme.

Vie artificielle (20 %)

  • Alternance théorie/pratique sous forme de cours appliqué
  • Vie Artificielle
    • Automates cellulaires et notion d’émergence
    • Algorithmes génétiques
    • Systèmes multi-agents
    • Apprentissage par renforcement

Machine Learning et Deep learning (20%)

  • Classe inversée :
    • Fondamentaux des réseaux de neurones
    • Réseaux de neurones convolutifs (CNNs) ;
    • Réseaux de neurones récurrents (RNNs) ;
  • TP Librairie d'apprentissage profond PyTorch.
  • TP CNN et RNN.
Challenge Deep Learning (50%)

  • Réalisation d'un mini projet en groupe et en séance sur l'étiquetage d'enregistrements audio pour le suivi de la pollution sonore en milieu urbain, consistant à concevoir et comparer plusieurs solutions algorithmiques pour traiter un problème donné.
  • Mise en forme en groupe du schéma d'architecture de la baseline fournie pour le projet
  • Création d'une vidéo individuelle (5 min)
  • Rédaction en groupe d'un petit article scientifique (4 pages)

Composition du cours

    • Cours présentiel (3 HEE)
    • Cours appliqué présentiel sur la Vie artificielle (9 HEE)
    • TP en présentiel (12 HEE)
    • Cours en classe inversée non présentiel (4 HEE)
    • Challenge en présentiel (9 HEE)
    • Préparation des rendus non présentiel et révision examen (23 HEE)


Notation

Note sur 20 :
QCM de connaissances théoriques sur l’IA et le Deep Learning : 7 pts
Schéma d'architecture de la baseline fournie pour le challenge : 2 pts
Video individuelle (5min) du challenge : 6 pts
Petit article scientifique en groupe (4 pages) du challenge : 6pts

Respect des deadlines et participations aux activités : +/-2 bonus pts

Compétences :
Compétence C2 validée si au moins la moitié des points au QCM
Compétence C6 validée si au moins la moitié des points au schéma d'architecture, et à la partie scientifique de la vidéo et de l'article
Compétence C7 validée si au moins la moitié des points sur les aspects communication de la vidéo et de l'article

Ressources

Equipe enseignante :
    • Catherine SOLADIE
    • Simon LEGLAIVE
Taille des cours appliqués : 30

Outils logiciels et nombre de licences nécessaires :
    • Jupyter Notebook, python, Pytorch ou équivalent (gratuit)
Salles de cours :
    • Connection WIFI, branchement des ordinateurs personnels

Résultats de l'apprentissage couverts par le cours

    • Connaitre un grand panel d’outils de machine learning et deep learning pour le traitement des données, y compris massives (C2.1, C6.3)
    • Connaitre les notions fondamentales du machine learning (C2.1)
    • Savoir lister et donner des exemples des différentes familles de machine learning (C2.1)
    • Tester, analyser et faire évoluer différents algorithmes de machine learning et de deep learning (C6.1)
    • Evaluer les performances d’un algorithme de machine learning (C2.2, C6.3)
    • Concevoir et proposer un logiciel de traitement de données illustrant un concept spécifique ou algorithme spécifique de machine learning ou deep learning (C2.1, C2.2, C6.1, C6.3)
    • Savoir communiquer des résultats scientifiques en utilisant les outils appropriés (C7.1, C7.4)


Description des compétences acquises à la fin du cours


    • C2 Jalon 2
      • C2.1 Approfondir : Approfondir l’ensemble de ses connaissances sur un domaine choisi, via les enseignements de 2A
    • C6 Jalon 2
      • C6.1 Résoudre numériquement un problème
      • C6.3 Traiter des données
    • C7 Jalon 2 Knowing how to convince

      • C7.1 On substance: Structure your ideas and your argument, be synthetic (hypotheses, objectives, expected results, approach and value created)
      • C7.4 Successfully deploy communication techniques adapted to the specific situation, including: rhetoric, storytelling, body language, space occupation, breathing, memory, visual supports, video tools, distancing, etc.

Support de cours, bibliographie

Tutoriels de Yann Lecun
Machine Learning avec Scikit-Learn - Mise en oeuvre et cas concrets, Aurélien Géron
Deep Learning with Python, Francois Chollet
Pattern Recognition and Machine LearningChristopher Bishop, Springer, 2006. The best book on Machine Learning, it covers a lot of topics! Freely available online. 
Deep LearningIan Goodfellow et al., MIT Press, 2016. A reference book on Deep Learning. Freely available online. 
Dive into Deep LearningAston Zhang et al., 2019 An interactive deep learning book with code, math,...