Liste des UEs du M1 IAAA dans les thématiques du master IAAA (Cursus complet sur le site AMU du master)


UEs obligatoires

  • Introduction à la sciences des données (3 crédits)

    Contenu : A travers trois cas d’utilisation, ce cours introduit la notion d’analyse de données, selon trois points de vue : le clustering (apprentissage non supervisé, ACP, kmeans, visualisation), la classification (apprentissage supervisé, notion d’erreur et de modèle, erreur de Bayes, kppv, généralisation et sur-apprentissage), et la régression (notion de causalité, notion d’erreur, protocoles d’évaluation). Sensibilisation aux aspects éthiques (GAFAM). L’objectif est de sensibiliser les étudiants aux techniques de base de l’analyse de données et de l’apprentissage, avec des liens vers approches probabilistes (Bayes), statistiques, et modes d’évaluation et de visualisation. On partira de données réelles, on illustrera de fait la difficulté du nettoyage de données en amont de tout le reste.

    [Plus d’infos]

    Volume horaire : 9h de CM – 9h de TD – 9h de TP

     

  • Méthodes numériques et probabilistes pour l’informatique (6 crédits).
    • Aspects probabilistes pour l’informatique  (3 crédits)

      Contenu : En cours de rédaction.

      Volume horaire : 9h de CM – 12h de TD – 6h de TP

    • Méthodes numériques pour l’informatique (3 crédits)

      Contenu : En cours de rédaction.

      Volume horaire : 9h de CM – 9h de TD – 9h de TP

      [Plus d’infos]

       

       


    UEs optionelles

  • Introduction au traitement automatique du langage (3 crédits)

    Contenu : L’objectif de ce cours est d’apporter aux étudiants des connaissances fondamentales en traitement automatique des langues (TAL). Le cours abordera des modèles de TAL statistiques classiques. Après un bref rappel de notions de probabilité appliquées aux textes, nous aborderons la représentation de documents, c.-à-d. l’encodage de textes, la tokenisation et la représentation de documents sous la forme vectorielle avec des techniques fondées sur les « sac de mots ». Nous étudierons également des modèles distributionnels pour la représentation de mots sous la forme de vecteurs, avec des applications en classification de textes et en similarité de mots. Les modèles de langage fondés sur les n-grammes s’en suivent, avec des applications à la génération de textes. Le dernier sujet abordé ce sont les étiqueteurs fondés sur des machines à état (tels que les modèles de Markov cachés) et leurs applications, par exemple en étiquetage morphosyntaxique.

    [Plus d’infos]

    Volume horaire : 10h de CM – 7h de TD – 10h de TP

  • Introduction à l’apprentissage artificiel (3 crédits)

    Contenu : L’apprentissage automatique et ses approches linéaires : techniques et limites. Autour de l’étude en profondeur de deux algorithme de séparation linéaire (le perceptron et SVM) : implémentation complète, preuves de convergence, propriétés, étude des performances sur des jeux de données, approfondissement des notions de généralisation, introduction Rademacher et Kolmogorov. Tout le long de l’UE, un cas d’étude sera mené, sur la base d’images ou de videos. La problématique de l’acquisition de données privées sera traitée, avec une mise en perspective sociétale (éthique, PI, rôle du citoyen, rôle de l’ingénieur). Mise en perspective des modèles non-linéaires.

    [Plus d’infos]

    Volume horaire : 9h de CM – 9h de TD – 9h de TP

  • Modélisation et résolution pour la décision (3 crédits)

    Contenu : Introduction aux différents aspects du raisonnement automatique, dont l’objectif est de permettre d’obtenir des solutions à tout type de problèmes uniquement à partir de leurs descriptions et grâce à des solveurs générant une preuve du résultat inspiré du raisonnement humain. Cette UE aborde les formalismes les plus simples, les problèmes SAT et CSP binaires, qui correspondent à des problèmes de décision, et étudie la façon de modéliser un problème dans ces formalismes, les méthodes de résolution arborescente (avec filtrages, heuristique de choix de variable, de valeur), et des solveurs existants (Minisat, Choco).

    [Plus d’infos]

    Volume horaire : 10h de CM – 10h de TD – 7h de TP

     


Détails des UEs


Introduction à la science des données

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

Valentin Emiya

Rémi Eyraud (responsable)

Hachem Kadri


Introduction au TAL

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 et Carlos Ramisch


Introduction à l’apprentissage artificiel

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

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 (responsable)

Cyril Terrioux


Méthodes numériques pour l’informatique

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

Jean Sequeira, responsable, (4,5 CM, 9 TD, 9 TP)

François-Xavier Dupé, (4,5 CM, 4,5 TD, 4,5 TP)

Hachem Kadri, (4,5 TD, 4,5 TP)