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

Période(s) du cours

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)


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)


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,...