Détails des UEs de M1

Introduction à la science des données (M1)

Objectifs de l’UE

L’objectif principal de l’UE est de sensibiliser et familiariser l’étudiant avec les idées, les algorithmes, les protocoles de base de la science de données.

Nous y traiterons ainsi des approches incontournables pour visualiser les données, réduire leurs dimensions, les analyser par des approches de regroupement et de régression, et les utiliser pour établir des modèles prédictifs (classification). Pour environner ces approches dans un cadre expérimental, nous parcourrons les principales métriques d’évaluation des estimations faites et leurs modes de calcul ; ceci permettra de définir des cadres expérimentaux cohérents pour la mise en oeuvre de sélection automatique de modèles.

La plupart des concepts abordés seront illustrés sur la base de données artificielles et de données réelles.

A l’issue de cette UE, tout étudiant sera en capacité de réaliser un chaîne complète de visualisation et traitements de données en avec des méthodes simples.

 

Programme détaillé

Chapitre 1 : Visualiser les données (ACP, résumés statistiques type histogrammes), principes de normalisation et de standardisation.

Chapitre 2 : Le regroupement de données (clustering) : méthode des k-moyennes, méthodes hiérarchiques, impact du choix de la distance, découverte de la notion de stabilité  

Chapitre 3 : La prédiction par régression (linéaire et polynomiale), introduction à la causalité

Chapitre 4 : Critères de performances (erreur, précision, ROC, etc.) et modes d’estimation (hold-out, validation croisée). Principes de la sélection de modèles. Définir un protocole expérimental solide.

Chapitre 5 : La classification à travers les méthodes (a) des  k plus proches voisins, et (b) des arbres de décision ; étude de l’impact des hyper-paramètres

Les TP et TD seront des ateliers de pratique du cours, à partir de données benchmark de l’UCI pour se familiariser avec les concepts de la science des données. Ils seront réalisés en python, en se familiarisant avec les packages numpy, sklearn, et pandas. A partir du 3ème TD/TP, un projet sera travaillé sur des données visuelles (images numérisées).

 

Équipe enseignante

Cécile Capponi (responsable)

Hachem Kadri

Thomas Schatz

 


Introduction au traitement automatique des langues (M1)

Objectifs de l’UE

Le but de ce cours est de familiariser les étudiants avec les représentations vectorielles et avec les modèles de séquence pour le traitement automatique du langage naturel (TAL). À l’issue de ce cours, un étudiant doit maîtriser ce modèle et être capable de l’appliquer à des tâches d’étiquetage de séquences telles que la traduction automatique.

 

Programme détaillé

Les séances TP permettent de réaliser le projet de manière incrémentale. À l’issue du dernier TP, les étudiants auront implémenté un traducteur automatique mot-à-mot fondé sur un modèle d’étiquetage de séquences (HMM). Le contenu des CM et des TD permet d’acquérir les notions théoriques nécessaires à la réalisation du projet.

Séance 1 – Représentation de textes

CM+TD: Encodage de textes, tokénisation, word embeddings, opérations vectorielles

TP: tokénisation de textes

Séance 2 – Modèles à n-grammes

CM+TD: Rappel probabilités, estimation de probabilités pour chaînes de markov

TP: Apprentissage d’un modèle de n-grammes à partir d’un texte

Séance 3 – Modèles d’étiquetage de séquences

CM+TD: Estimation de probabilités pour HMM, algorithme forward, perplexité

TP: Calcul de la perplexité

Séance 4 – Décodage avec modèles de markov

CM+TD: log-probabilités, algorithme de Viterbi

TP: Traduction automatique avec décodage Viterbi

Séance 5 – Alignement lexical

CM+TD: apprentissage d’alignements sur données incomplètes (algorithme EM)

TP: Alignement lexical de corpus parallèles pour la traduction

 

Équipe enseignante

Frédéric Béchet (responsable)

Alexis Nasr


 

Introduction à l’apprentissage artificiel (M1)

Objectifs de l’UE

L’apprentissage artificiel (ou automatique) est une discipline à l’intersection entre la science des données et l’intelligence artificiel. Nous introduisons cette discipline aujourd’hui majeure par le biais de la notion de classification. L’objectif est que les étudiants se familiarisent avec la plupart des concepts et résultats majeurs de la classification supervisée, qui sont essentiels pour aborder d’autres cadres de l’apprentissage artificiel. Une introduction au cadre statistique de l’apprentissage sera présentée, dans l’objectif que la propriété essentielle de généralisation soit acquise et contextualisée. Sur cette base, les approches de classification linéaire (SVM et perceptron) seront traitées — avec une extension vers les méthodes non-linéaire via la notion de fonction noyau –. Le focus sur les SVM permettra notamment de sensibiliser les étudiants à la notion de régularisation, majeure en apprentissage artificiel. Enfin, la classification supervisée sera abordée à travers l’étude d’ensemble de classifieurs (modèles additifs de classification et bootstraping).

 

Programme détaillé

  • Chapitre 1.  Les fondamentaux de l’apprentissage artificiel (propriétés d’un échantillon, minimisation du risque, généralisation, espace d’hypothèse, biais et variance des estimateurs, règle majoritaire et règle de Bayes) : définition formelle du cas de le la classification supervisée
  • Chapitre 2. Classification supervisée linéaire : perceptron et SVM
  • Chapitre 3. Classification supervisée non-linéaire : perceptron et SVM à noyaux, principe de la régularisation
  • Chapitre 4. Méthodes ensemblistes (bagging, boosting)

Les TP et TD seront des ateliers de pratique du cours, à partir de données artificielles (contrôlées) et réelles, avec visualisation des effets de la transformation des données par méthodes à noyaux. Un effort de programmation d’algorithmes d’apprentissage en python sera notamment demandé. Très rapidement, nous proposerons la participation des étudiants à un challenge de la plate-forme ENS Challenge Data, sur des données réelles et difficiles, par exemple le challenge Reminiz.

Bibliographie:

Apprentissage Artificiel (A. Cornuéjols, L. Miclet, 2ème édition, Eyrolles)

 

Équipe enseignante

Cécile Capponi (responsable)


 

Modélisation et résolution pour la décision (M1)

Objectifs de l’UE

Les formalismes CSP (Problème de Satisfaction de Contraintes) et SAT (problème de satisfiabilité en logique propositionnelle) permettent d’exprimer aisément des problèmes de décision en mettant en relation des variables à l’aide de contraintes ou de clauses.

Ils offrent un cadre relativement puissant permettant de représenter de nombreux problèmes industriels et académiques (problème d’allocation de fréquence, ordonnancement, cryptographie, bioinformatique, etc.)  tout en disposant d’outils efficaces (solveurs) pour leur résolution.

Pour chaque formalisme, l’étudiant devra appréhender les techniques de résolution et surtout être capable de modéliser de nouveaux problèmes. Différentes modélisations étant envisageables, il devra être en mesure d’orienter ses choix en tenant compte des spécificités des solveurs employés.

 

Programme détaillé

Plan du cours :

  • Cours 1 / TD 1 (5h) : CSP (formalisme et résolution)
  • Cours 2 / TD 2 (5h) : SAT (formalisme et résolution)

 

Équipe enseignante

Djamal Habet

Cyril Terrioux


 

Méthodes numériques pour l’informatique (M1)

Objectifs de l’UE

L’objectif de ce cours est de donner les bases mathématiques nécessaires pour suivre les cours des parcours IMD? , Géométrie Informatique Graphique (GIG) et Intelligence Artificielle et Apprentissage Automatique (IAAA). Les différentes notions seront abordées à la fois par leurs aspects théoriques et pratiques. En prenant comme base commune l’algèbre linéaire, ce cours présentera des notions de calculs vectoriels et matriciels, les bases pour la résolution de systèmes d’équations linéaires pour aller vers l’optimisation numérique…

 

Programme détaillé

Le cours se décompose en trois parties :

  1. Rappel d’algèbre linéaire (vecteurs, matrices), espace de Hilbert, normes, distances, calcul matriciel, matrices classiques (rotation, permutation…), fonctions (gradient, dérivé).
  2. Résolution de systèmes d’équations linéaires, méthode de Newton, méthode du gradient conjugué, méthode des moindres carrés.
  3. Optimisation non-linéaire, descente de gradient, KKT, contraintes

Les cours seront accompagnés de TD et TP où seront proposés des exemples concrets des notions et méthodes présentées. Les TP seront effectués en Python.

 

Équipe enseignante

Valentin Emyia

Alexandra Bac



 

Détails des UEs de M2

 

Maths pour l’intelligence artificielle (M2)

Objectifs de l’UE

L’objectif de cette UE est de donner les outils mathématiques pour comprendre le fonctionnement des outils utilisés pour l’intelligence artificielle. Le cours commencera par l’introduction des outils statistiques et probabiliste nécessaire pour la compréhension des problématiques induite par l’IA. Ensuite seront abordé les outils d’optimisation numérique pour la minimisation de fonction continue ou discrète. Il sera aussi abordé les développements récents pour l’amélioration de ces méthodes.

 

Programme détaillé

  1. Introduction à la statistique et aux probabilités pour l’IA (3h CM 6h TD).
  2. Algèbre linéaire avancée (3h CM 6h TD).
  3. Calcul différentiel et optimisation numérique (3h CM 6h TD).

Bibliographie :

 

Équipe enseignante

Thomas Schatz


 

Science des données (M2)

Objectifs de l’UE

L’objectif de ce cours est de former les étudiants à pouvoir répondre à une compétition Kaggle quelle qu’elle soit avec des méthodes avancées de machine learning. Le cours dresse un panorama avancé de l’apprentissage automatique qu’il s’agisse des paradigmes d’apprentissage (supervisé, non supervisé, semi-supervisé, actif, transductif…), des tâches (classification, régression, ranking, metric learning, prédiction structurée, classification multilabel, multi-instances ou multitaches) ou des méthodes.

Programme détaillé

1. Rappels et généralités

  • Contexte et enjeux
  • Introduction à l’apprentissage automatique supervisé 
  • Mise au point d’un système par apprentissage automatique (évaluation, Grid-Search, Validation croisée)

2. Panorama des méthodes de classification supervisée

  • kPPV, Arbres de décision
  • SVM et méthodes à noyaux
  • Régression logistique

3. Généralisation

  • Minimisation du risque structurel
  • Borne de généralisation
  • Sélection de variables

4. Apprentissage et données sociales

  • Filtrage collaboratif, recommandation et ranking
  • Inférence dans les graphes (réseaux sociaux)

5. Apprentissage non supervisé

  • Clustering et méthodes à variables latentes (LSA, LDA, Topic models, etc)

6. Autres cadres d’apprentissage

  • Apprentissage semi-supervisé et transductif
  • Adaptation de domaine et transfert
  • Few shot learning

 

Équipe enseignante

Thierry Artières (responsable)

Hachem Kadri

Valentin Emiya


 

Traitement du langage naturel et linguistique (M2)

Objectifs de l’UE

Le traitement automatique du langage naturel est à la confluence de nombreuses disciplines, dont la linguistique, l’apprentissage automatique, l’intelligence artificielle…

L’objectif de cette UE est de présenter d’une part un certain nombre de tâches linguistiques, tel que l’analyse morphologique, syntaxique, sémantique et discursive et, d’autre part, la manière de les formaliser dans le but de les automatiser. On mettra en particulier l’accent sur la prédiction d’arbres et de graphes qui sont utilisées pour l’analyse syntaxique et sémantique.

Programme détaillé

  • Représentation des structures syntaxiques, sémantiques et discursive pour le langage naturel.
  • Prédiction de structures par exploration complète de l’espace de recherche
  • Prédiction gloutonne de structures

Bibliographie:

  • Dependency Parsing, Sandra Kübler, Ryan McDonald, Joakim Nivre, Morgan Claypool, 2009
  • Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics and Speech Recognition, Daniel Jurafsky, James Martin, Pearson Intrernational Edition, 2008

Équipe enseignante

Alexis Nasr (responsable)


 

Deep learning (M2)

Objectifs de l’UE

Le deep learning a permis des avancées majeures pour des problèmes difficiles tels que des tâches de perception (vision, audition), de traitement de la langue (traduction…). Cette technologie envahit de nombreux champs applicatifs est est intégrée dans des systèmes industriels chez de multiples acteurs y compris les plus grands (Google, Microsoft, Amazon, Facebook, etc). L’objectif du cours est de former les étudiants à l’utilisation de toolkits de deep learning et à la conception de systèmes basés sur des architectures classiques, autoencodeurs, réseaux convolutionnels, réseaux récurrents, et des idées récentes telles que les embeddings, l’adversarial learning, les mécanismes d’attention…

 

Programme détaillé

  1. Introduction aux réseaux de neurones

o Perceptrons multicouches et Autoencodeurs

o Stratégies de régularisation : L1, L2, Parcimonie, Dropout

  1. Architectures convolutionnelles

o Convolution temporelle et spatiale, couches de dilatation

o Hiérarchie de représentations. Visualisation des filtres

o Généricité des représentations apprises

  1. Optimisation de modèles profonds

o Algorithmes d’optimisation et variantes (SGD, Adam, Adagrad, RMSprop…), Local et Batch Normalization

o Augmentation des données

o Grid Searching

  1. Modèles à mémoire et mécanismes d’attention

o Memory networks, end-to-end memory networks

o Mécanismes d’attention

  1. Adversarial Learning

o GANs, Adversarial Autoencoders et Variational Autoencoders

o Variantes conditionnelles: CGANs, ICGANs, Cyclyc GANS etc

  1. Architectures très profondes et conception de systèmes

o Présentation des architectures très profondes : Vgg, Highway Networks, ResNets, Networks

o Réutilisation d’architectures existantes pour la conception d’applications

Au cours des TPs un travail en équipe sera réalisé  sur des compétitions Kaggle. Au choix (à actualiser en fonction des compétitions du moment): Plant Seedlings Classification, Dog Breed Identification, ImageNet Object Detection Challenge)

 

Équipe enseignante

Thierry Artières

Stéphane Ayache

Ronan Sicre


 

Modélisation et résolution pour l’optimisation (M2)

Objectifs de l’UE

Cette UE fait suite à l’UE Modélisation et résolution pour la décision du M1.

Parmi les problèmes réels, les problèmes d’optimisation sont en général plus fréquents que les problèmes de décision. De plus, leur résolution est souvent plus difficile que celle des problèmes de décision associés et nécessite des techniques de résolution adaptés.

Les formalismes à base de contraintes, comme COP (Problème d’Optimisation sous Contraintes), WCSP (CSP Pondérés), et Max-SAT (Satisfiabilité maximum), permettent d’exprimer aisément des problèmes d’optimisation en mettant en relation des variables à l’aide de contraintes ou de clauses.

Ils offrent un cadre relativement puissant permettant de représenter de nombreux problèmes industriels et académiques (problème d’allocation de fréquence, ordonnancement, cryptographie, bioinformatique, etc.)  tout en disposant d’outils efficaces (solveurs) pour leur résolution.

Pour chaque formalisme, l’étudiant devra appréhender les techniques de résolution et surtout être capable de modéliser de nouveaux problèmes. Différentes modélisations étant envisageables, il devra être en mesure d’orienter ses choix en tenant compte des spécificités des solveurs employés.

 

Programme détaillé

Plan du cours :

  • Cours 1 / TD 1 (2h) : COP (formalisme et résolution)
  • Cours 2 / TD 2  (3h) : WCSP (formalisme et résolution)
  • Cours 3 / TD 3 (5h) : Max-SAT (formalisme et résolution)

 

Équipe enseignante

Cyril Terrioux (responsable)

Djamal Habet


 

Apprentissage par renforcement (option M2)

Objectifs de l’UE

Décrire ici l’état dans lequel on veut que l’étudiant soit après avoir suivi l’UE : ce que l’on veut lui faire comprendre, qu’il sache faire à la fin de l’UE.

L’objectif de cet UE est de fournir à l’étudiant les bases de l’apprentissage par renforcement. Les thématiques abordées seront : algorithmes de bandit, Monte Carlo Tree Search, TD-learning. Le TP et le TD seront consacrés à la réalisation d’un projet : programme de jeu de réflexion, pilotage de voiture, commande de robot.

 

Programme détaillé

Plan du cours

  • Multi-armed bandits — algorithme UCB
  • Multi-armed bandits — algorithme Thompson Sampling
  • Monte Carlo Tree search
  • Markov Decision process
  • TD Learning

Travail en binôme sur des projets.

Bibliographie (disponibles en ligne)

  • Reinforcement Learning: An Introduction, by Richard S. Sutton and Andrew G. Barto
  • Algorithms for Reinforcement learning, by Csaba Szepesvari

 

Équipe enseignante

Valentin Emiya (responsable)


 

Signal, Apprentissage et Multimédia (option M2)

Objectifs de l’UE

Cette UE fournit un bagage minimal de connaissances et compétences sur le traitement des données séquentielles telles que les signaux audio, les images, les vidéos. Elle s’adresse à un public d’informaticiens ayant vocation à traiter ces types de données et n’ayant pas suivi une formation de traitement des signaux, images et vidéo en mathématiques. Les objectifs sont:

  • d’acquérir des connaissances et compétences de base ainsi qu’une expérience dans le traitement des données multimédia (audio, image, vidéo) et les tâches d’apprentissage associées
  • de prendre du recul sur des problèmes et méthodes génériques aux différentes modalités, considérées comme des séquences, afin de pouvoir transférer ces approches d’un domaine à l’autre

 

Programme détaillé

Les notions seront introduites et illustrées de façon à favoriser d’une part une compréhension intuitive et d’autre part un formalisme approprié pour une utilisation pratique (programmation, expérimentation), en minimisant les pré-requis mathématiques nécessaires.

Plan :

  • Bases d’échantillonnage et de temps-fréquence (6h environ): définition, théorème d’échantillonnage de Shannon, notion de repliement spectral, exemples dans les images et les sons.
  • Notions de filtrage et de convolution (6h environ) : formulation, interprétation fréquentielle, exemples de filtres (lissage, dérivation, etc.) et d’application aux images et aux sons, lien avec les couches convolutives des réseaux de neurones
  • Segmentation des images et des signaux audio, extraction de caractéristiques (MFCC, etc.), notions de perception (6h environ)
  • Une application parmi plusieurs possibilités (9h environ):
    • Reconnaissance (ou synthèse) de la parole : élaboration d’un système de reconnaissance de phonème à partir de MFCC par réseaux de neurones
    • Voice activity detection, détection parole/musique/silence, classification de genres musicaux
    • Bandwidth extension en audio / Super-résolution dans les images
    • Cross-modalité: espace de représentation cross-modaux ou traduction d’une modalité en une autre.

Équipe enseignante

Valentin Emiya

Leonor Becerra-Bonache


 

Prédictions structurées pour le traitement automatique du langage naturel (option M2)

Objectifs de l’UE

Comprendre et explorer quelques modèles de prédictions structurées à l’état de l’art en traitement automatique du langage. En particulier, ce cours donne des éléments pour explorer les questions suivantes :

  • Faut-il des architectures neuronales spécifiques pour le TAL ?
  • Quel est le compromis entre stratégie de décodage et finesse de modélisation ?
  • Existe-t-il des représentations linguistiques universelles ?

Page du cours de Benoit Favre : https://pageperso.lis-lab.fr/benoit.favre/pstaln/

 

Programme détaillé

Les thèmes abordés sont :

  • Typologie de problème et modèles DL pour le TAL
  • Représentations de non contextuelles et contextuelles
  • Préapprentissage par auto-supervision

 

Équipe enseignante

Carlos Ramisch (responsable)


 

Raisonnement automatique en milieu industriel (option M2)

Objectifs de l’UE

Expliquer le schéma général de conception d’un système d’aide à la décision. L’illustrer à travers des cas concrets ayant déjà été mis en oeuvre en milieu industriel.  

 

Programme détaillé

Après avoir défini ce qu’est un système d’aide à la décision et quels sont ses composants, on expliquera comment choisir les composants en fonction du type de données qu’il faut traiter.

Ensuite, différents industriels interviendront pour présenter des cas concrets sur lesquels ils ont travaillé. Ils présenteront des problèmes industriels et étudieront comment ils ont été modélisés et résolus.  

Prérequis : l’UE “Modélisation et résolution pour la décision”.

 

Équipe enseignante

Nicolas Prcovic (responsable)

Intervenants industriels


 

Théorie de l’apprentissage et statistique non paramétrique (option M2)

Objectifs de l’UE

Ce cours présente les concepts fondamentaux de l’apprentissage automatique, y compris la description et l’analyse de plusieurs algorithmes modernes, leur base théorique et l’illustration de leurs applications. Le cours abordera les notions suivantes : capacité de généralisation, complexité de Rademacher, stabilité algorithmique, SVM, méthodes à noyau, parcimonie, online-learning.

Programme détaillé

Plan (Cours au Tableau et TD sur machine) :

Cours 1 : Introduction générale – Concepts et algorithmes (2h)

Cours 2 : Complexité de Rademacher et VC-dimension (2h)

Cours 3 : SVM et méthodes à noyau (2h)

Cours 4 : Stabilité (2h)

Cours 5 : Parcimonie (2h)

Cours 6: Apprentissage en ligne (2h)

TD 1 : Classification binaire (3h)

TD 2 : Classification multi-class (3h)

TD 3 : Régression et parcimonie (2h)

TD 4 : Apprentissage en ligne (2h)

TD 5 : TD noté et présentation d’articles

Référence :

Mohri, Mehryar, Afshin Rostamizadeh, and Ameet Talwalkar. Foundations of machine learning. MIT press, 2012.

 

Équipe enseignante

Hachem Kadri (responsable)

François-Xavier Dupé


 

Introduction aux Sciences Cognitives (option M2)

Objectifs de l’UE

L’objectif principal de l’UE est de fournir aux étudiants une connaissance approfondie de l’histoire de cette discipline scientifique récente dénommé “Sciences cognitives”, de son objet d’étude (la cognition humaine), de l’évolution des hypothèses sur la nature/ architecture cognitive sous-tendant l’esprit humain (cybernétique, cognitiviste-symbolique, connexionniste-sub-symbolique, incarnée, ancrée) ainsi que des grandes questions débattues au cours de cette évolution (par exemple, l’esprit humain utilise-t-il des symboles ? des représentations ?). Pour faciliter la compréhension de questions scientifiques quelquefois ardues, des exemples concrets issus d’études sur le langage seront étudiés, un des domaines phares dans l’évolution du cadre théorique des sciences cognitives.

 

Programme détaillé

Plan du cours

  • Qu’est-ce que les Sciences Cognitives ?
  • Les conceptions de l’architecture de l’esprit humain
  • L’exemple de l’étude du langage

Bibliographie

  • Andler, D. (éd 2004). Introduction aux sciences cognitives. Gallimard.
  • Fodor, J. (1986). La modularité de l’esprit. Les éditions de Minuit.  

 

Équipe enseignante

Pascale Colé


 

Langage et Cognition (option M2)

Objectifs de l’UE

A venir

Programme détaillé

A venir


 

Introduction à la Neurobiologie (option M2)

Objectifs de l’UE

Ce cours a pour but de donner des bases de neurobiologie et neurophysiologie.

 

Programme détaillé

  • L’organisation générale du système nerveux
  • Les signaux électriques des cellules nerveuses
  • La transmission synaptique et les neurotransmetteurs
  • Les bases des systèmes sensoriels et moteurs

 

Équipe enseignante

Laurence Casini

Franck Chaillan