Contenu du cours

L'objectif de ce cours est de présenter le cadre de l'apprentissage machine ainsi que les concepts fondamentaux qui y sont liés : les données et les hypothèses formulées, avant d'aborder différents algorithmes classiques d'apprentissage supervisé dans différents contextes.

Une première séance sera consacrée à la présentation de l'importance des données et des problématiques en apprentissage : apprendre un bon modèle capable de bien généraliser sur de nouvelles données. Cette étude là sera abordée sur le plan théorique et pratique (bornes et cross-validation) afin de poser les bases d'un protocol expérimental en abordant les notions de fonctions de pertes, de risque ou encore de mesures de performances. Nous présenterons ensuite quelques algorithmes classiques en Supervised Machine Learning (k-NN, SVM, Régression linéaire ou logistique, arbres de décisions et réseaux de neurones). Il conviendra également de comprendre comment tels modèles sont appris, ainsi quelques rappels en optimisation seront effectuées pour comprendre le fonctionnement des solveurs. Enfin, nous finirons cette étude algorithmes par la présentation de méthodes ensemblistes (bagging et boosting) avec quelques algorithmes emblématiques comme les random forest, adaboost ou plus généralement le gradient boosting.

Les séances de TD auront à coeur de mettre en application ces différents algorithmes à travers la mise en place de protocoles expérimentaux concis et précis pour la comparaison d'algorithmes. Nous étudierons également une méthode permettant d'établir une borne en généralisation pour un algorithme.

Cours

Vous y trouver les différents slides ainsi qu'un polycopié reprenant toutes les notions vues en cours mais de façon plus détaillées.

Exercices

Une fiche de TD est disponible afin de vous faire effectuer quelques exercices d'applications sur les algorithmes de Machine Learning présentés en classe.
Un deuxième fichier contient un travail vous proposant de construire une borne en généralisation pour l'algorithme du SVM.

Travaux Pratiques

Le lien ci-dessous vous permettra de télécharger des jeux de données que vous pourrez utiliser lors de votre séance pratique. Il s'agit uniquement de jeux de données permettant de faire de la classification binaire.

Vous pourrez ensuite télécharger les deux fichiers python que l'on trouve ci-dessous afin de vous permettre de travailler pendant la séance pratique

Devoir Maison

Cette section contient les sujets des devoirs maisons des années précédentes et de l'année en cours.

Examen

Cette section contient les sujets d'examen des années précédentes.