- Site web du cours (cette page): http://www.iro.umontreal.ca/~vincentp/ift3395
Les étudiants devraient se rendre sur cette page au moins une fois par semaine pour des informations importantes.
- Professeur: Pascal Vincent.
Consultation: après le cours ou sur rendez-vous.
Je suis notoirement très lent à répondre aux emails. Si vous avez des questions pressantes à me poser, essayez si possible de venir directement me voir. - Démos: Pierre-Antoine Manzagol et Dumitru Erhan. Rendez-vous sur la page de démos pour les documents relatifs aux séances de travaux pratique et de laboratoire. Pour nous joindre: dift3395@iro.umontreal.ca
Dernières nouvelles
- Rappels:
+ devoir 3 (dû le lundi 21 avril avant minuit)
+ EXAMEN FINAL le vendredi 25 avril à 13h30 salle 1177. Documentation papier permise.
+ Rapport de projet (et code source) dû le mercredi 30 avril avant minuit.
- dimanche 16 mars: voici les énoncés du devoir 2 (dû le lundi 31 mars avant minuit) et du devoir 3 (dû le lundi 21 avril avant minuit). Le devoir 3 est la continuation pratique du devoir 2 (implémentation du réseau de neurones). Le rapport d'étape pour le projet est quant à lui dû le lundi 7 avril avant minuit. Nous vous donnons les énoncés des devoirs 2 et 3 en même temps car on vous recommande d'essayer de faire rapidement le devoir 2, afin de pouvoir commencer le 3 le plus tôt possible (et vous pourrez ainsi vérifier en pratique que vous ne vous êtes pas trompés dans votre dérivation du devoir 2...). Ces devoirs peuvent demander pas mal de travail, mais les démos sont là pour vous aider... Bon courage!
- mercredi 12 mars: la date pour la remise de la proposition de projet est repoussée au lundi 17 mars avant minuit.
Des idées de projet sont sur la page de démos. Ne tenez pas compte dans les instructions sur le projet, de l'obligation de le faire en PLearn/C++. Mais vous devriez venir discuter de votre projet et obtenir notre OK. - mardi 17 février: EXAMEN INTRA de 13h30 à 15h30 en salle Z-220 du pavillon Claire McNicoll.
- mercredi 23 janvier: Le devoir 1 est disponible sur la page de
démos. Dû le vendredi 15 février avant minuit.
Aussi, veuillez noter que la salle pour la première heure de travaux pratiques du vendredi a changé il s'agit maintenant de AA1175. - vendredi 18 janvier: Première démo (TP en 1207 + labo au 3189). Allez voir la page de démos qui contient des pointeurs pour vous familiariser avec le langage et l'environnement R.
- mardi 8 janvier 2008: Premier cours à 13h30 en salle 1207. Bienvenue à tous!
Horaire
Mardi | 13h30 - 15h30 | Théorie | AA 1207 |
Jeudi | 10h30 - 11h30 | Théorie | AA 1207 |
Vendredi | 10h30 - 11h30 | Travaux pratiques | AA 1175 |
Vendredi | 11h30 - 12h30 | Labo | AA 3189 |
Contenu et objectifs du cours
Ce cours est une introduction aux algorithmes d'apprentissage, un champ de recherche en intelligence artificielle. Ces algorithmes ont pour objectif de permettre à la machine d'apprendre à partir d'exemples. Le focus du cours est la classification: on observe un ensemble de paires (obser- vation, classe) et on essaye de prédire la classe d'une nouvelle observation. Les applications classiques de ces algorithmes se font dans le domaine de reconnaissance des formes (caractères, parole, etc.). Dans les dernières années plusieurs nouveaux champs d'applications sont apparus: le forage des données, l'analyse statistique de données textuelles, ou la gestion quantitative de portefeuilles financiers, l'analyse des expressions génétiques, etc. La matière du cours peut être donc exploitée dans nombreux domaines de l'informatique.
Le cours couvrira les sujets suivants: notions générales (terminologie de base, généralisation, malédiction de la dimensionalité, capacité, comparaison des classifieurs), algorithmes supervisés (k plus proches voisins, classifieurs linéaires, réseaux de neurones, machines à vecteur de support, arbres de décision et régression, apprentissage des règles symboliques, boosting, processus Gaussiens), algorithmes non- supervisés (analyse des composantes principales, quantisation vectorielle, méthode de k-moyennes, cartes auto-organisatrices, méthodes spectrales), modèles graphiques.
Evaluation
Mode d'évaluation | Valeur | Date |
---|---|---|
Travaux pratiques | 24% | 3 devoirs comptant pour 8% chaque. |
Projet | 26% | Proposition: 17 mars. Rapport d'étape: 27 mars. Rapport final: fin avril |
Examen intra | 25% | Mardi 19 février (13h30-15h30, salle Z-220, pavillon C-McNicoll) |
Examen final | 25% | Vendredi 25 avril (13h30-16h30, salle 1177, André Aisenstadt) |
- Travaux pratiques: 3 devoirs comportant des parties théoriques et des parties de programmation. Ils se font individuellement.
- Projet: application des algorithmes d'apprentissage à une tâche proposée par l'étudiant (programmation, expérimentation, et comparaison de performance), en consultation avec le professeur. Proposition (environ 2 pages) pour fin février. Rapport d'étape (environ 2 pages) pour la mi-mars. Projet final (max 8 pages, style NIPS) pour la fin avril. Voir les instructions pour le projet.
- Les étudiants de premier cycle pourront effectuer le projet en équipe de 2. Le projet sera évalué sur la base des documents remis et comptera pour 26% de la note du cours.
- Pour les étudiants gradués, le projet se fera individuellement et devra comporter l'implémentation d'un nouvel algorithme d'apprentissage. Les étudiants gradués devront par ailleurs effectuer une présentation orale de leur projet (15 à 20 mn pendant les dernières semaines du cours) qui comptera pour 6% de la note du cours, alors que les documents remis (rapports) compteront pour 20%.
- Tous les étudiants devront également effectuer un certain nombre de lectures hebdomadaires (voir ci-dessous).
Examens et notes
Concernant la fraude et le plagiat ATTENTION! L'Université de Montréal a désormais une politique stricte en cas de fraude ou plagiat. Si une infraction est constaté, le professeur est tenu de faire un rapport au directeur du département. Une procédure administrative est alors automatiquement enclenchée avec les conséquences suivantes: l'infraction est notée à votre dossier, et une sanction est décidée (qui peut être grave en cas de récidive). Alors faites le travail vous-même!Pour consulter vos notes (examen, TPs, exercices pratiques, ...) vous pouvez utilser la commande notes. Pour cela vous devez avoir une fenêtre Unix ouverte sur votre compte IRO. Tapez la commande notes ift3395 ou notes ift6390 selon votre cas.
Examen intra hiver 2008: énoncé de l'examen
Distribution des notes pour les 17 personnes ayant passé l'examen:
97, 96, 95, 94, 93, 92, 90Examen final hiver 2008: énoncé de l'examen
87
70
68, 64
59, 50
48, 46, 43
31
Livre recommandé pour le cours
Aucun livre n'est obligatoire pour suivre le cours. Mais pour approfondir la matière du cours les livres suivants sont recommandés:- Bishop, Pattern Recognition and Machine Learning, Springer, 2006
- Duda, Hart and Stork, Pattern Classification, Wiley-Interscience, 2001
- Hastie, Tibshirani, Friedman, The Elements of Statistical Learning, Springer-Verlag, 2001.
- David J.C. MacKay, Information Theory, Inference, and Learning Algorithms, Cambridge University Press, 2003. On peut également le télécharger librement du site web de l'auteur.
- Christopher Bishop, Pattern recognition and Machine Learning, Springer, 2006.
- Alpaydin, Introduction to Machine Learning (Adaptive Computation and Machine Learning), MIT Press, 2004.
Contenu détaillé des cours (planifiés ou effectués), lectures, échéances et travaux
Notez que l'horaire ci-dessous est préliminaire. Le détail des thèmes de cours pour les dates futures est donné à titre indicatif seulement, et sera mis à jour et adapté au cours de l'année. De même, les liens vers les diapos utilisées pour les cours seront mis à jour au fur et à mesure.
Semaine | Date | Thème du cours | Matériel du cours | Matériel imprimable (fonds blanc, 4 écrans / page) | À lire | Échéances et travaux |
---|---|---|---|---|---|---|
1 | 8.01.2008 | Présentation du cours et introduction | introduction.pdf | |||
10.01.2008 | Terminologie de l'apprentissage supervisé. Formalisation des méthodes à base de voisinage | 2_rappel_terminologie_supervise.pdf 2_formalisation_voisinage.pdf | terminologie.pdf voisinage.pdf |
Chapitre d'introduction de ma thèse. | ||
2 | 15.01.2008 | Méthodes de type histogramme. Malédiction de la dimensionalité. Formalisation du problème de l'apprentissage. Notions de capacité et sur-apprentissage. | 3_histo_curse_capacity.pdf 3_ProblemeApprentissage.pdf |
histo_curse.pdf ProblemeApprentissage.pdf |
||
17.01.2008 | Méthodes à base de voisinage: k-NN et fenêtres de Parzen pour classification, régression et estimation de densité. | 4_kNN_Parzen.pdf | kNN_Parzen.pdf | |||
3 | 22.01.2008 | Classification multiclasse et régression multiple. Rappels de proba. Classifieur de Bayes. Classifieur de Bayes Naif. | 5_classifieur_bayes.pdf ProbabilitesBalazs.pdf |
Bayes_classif.pdf ProbaBalazs.pdf |
ProbabilityWilliams.pdf ProbabilityRoweis.pdf ProbabilityBayesMoore.pdf | |
24.01.2008 | Distributions. Gaussienne multivariée. Evaluation de la performance de généralisation. Courbes d'apprentissage. | 6_gaussienne_evalperf.pdf | Gaussienne_Evalperf.pdf | |||
4 | 29.01.2008 | Fonctions discriminantes. Modèles génératifs et méthodes paramétriques. Principe du maximum de vraisemblance. | 7_FonctionsDiscriminantes.pdf 7_MethodesParametriques.pdf |
FoctionsDiscriminantes.pdf MethodesParametriques.pdf |
||
31.01.2008 | Rappels sur principe de minimisation du risque empirique pour la classification, la régression et l'estimation de densité. Lien avec principe du maximum de vraisemblance pour l'estimaiton de densité. Dérivation de la solution de maximum de vraisemblance pour une densité paramétrique Gaussienne univariée (1d). | |||||
5 | 05.02.2008 | Fonctions discriminantes linéaires. | DiscriminantesLineaires.pdf | DiscriminantesLineaires.pdf | ||
07.02.2008 | Fonctions discriminantes linéaires (suite). | Histoire du Perceptron (papier de Kaplan) | ||||
6 | 12.02.2008 | Descente de gradient, Perceptron. | |
|||
14.02.2008 | Réseaux de Neurones. | ReseauxDeNeurones.pdf | ReseauxDeNeurones.pdf | |||
7 | 19.02.2008 | Examen intra 13h30-15h30 en Z-220 pavillon C-McNicoll | Examen intra | |||
21.02.2008 | Correction de l'intra | |||||
8 | 26.02.2008 | Réseaux de Neurones (suite) | ||||
28.03.2008 | Calcul de gradient dans les réseaux de neurones |
Voir les notes de Yoshua sur le calcul de gradient, et le devoir 2. |
|
|||
9 | 04.03.2008 | Semaine de lecture (pas de cours) | ||||
06.03.2008 | Semaine de lecture (pas de cours) | |||||
10 | 11.03.2008 | Régularization (et weight-decay dans réseaux de neurones). L'astuce du noyau. |
kernel_trick.pdf | kernel_trick.pdf (4/page) | ||
13.03.2008 |
|
|
ArbresDeDecision.pdf (4/page) |
|
||
11 | 18.03.2008 |
|
Pas de transparents pour ce cours. A vous de prendre des notes. Pour les algorithmes de partitionnement (clustering) voir le tutoriel de Matteucci. Pour la dernière partie je me baserai sur Introduction aux modèles graphiques probabilistes par Kevin Murphy |
Je donne ici en référence les
transparents de Balazs sur l'apprentissage non-supervisé, pour
référence, bien que je vais peu ou pas m'en servir
pour la partie du cours portant sur l'apprentissage non
supervisé. Bref: VENEZ ASSISTER AU COURS! ApprentissageNonSupervise.pdf ApprentissageNonSupervise2.pdf ApprentissageNonSupervise3.pdf |
||
20.03.2008 | Mélange de densités et algorithme E.M. |
Je n'ai pas de transparents pour ce cours. PRENEZ DES NOTES! |
||||
12 | 25.03.2008 | Apprentissage non supervisé: réduction de dimensionalité, modèles à variables latentes continues. | Réduction de dimensionalité, modèles à variables latentes continues. | continuous_latent_variables_print.pdf | ||
27.03.2008 | Méta algorithmes, méthodes à base d'ensemble de classifieurs: bagging, ensembles d'entraînements pondérés, introduction au boosting (AdaBoost). | Pour cette
introduction
aux méthodes d'ensembles de classifieurs, je vous invite à
consulter
le chapitre de Peter Bühlmann Bagging,
Boosting and Ensemble Methods. J'expliquerai aussi l'algorthme AdaBoost en me fondant sur les transparents de Jiri Matas et Jan Sochman. |
|
|||
13 | 01.04.2008 | Thème à déterminer Remarque sur encodage des données (continues vs catégoriques). |
|
|||
03.04.2008 | Thème à déterminer | |||||
14 | 8.04.2008 | Présentations de projets | ||||
10.04.2008 | Présentations de projets | |||||
15 | 15.04.2008 | Pas de cours (semaine d'examen) | ||||
17.04.2008 | Pas de cours (semaine d'examen) | |||||
16 | 22.04.2008 | Pas de cours (semaine d'examen) | ||||
vendredi 25.04.2008 |
Examen final 13h30-16h15 en 1177 Pavillon André-Aisenstadt | Dû: rapport de projet |
Liens utiles
- Page du cours que j'ai donné à l'Hiver 2007 (incluant les énoncés des examens)
- Page du cours donné par Balázs Kégl à l'Hiver 2006
Autres références (ouvrages plus spécialisés pour approfondir certains sujets)
- Schölkopf, Smola, Learning with Kernels,
MIT Press, 2002.
La bible des méthodes à noyau modernes. - Cristianini, Shawe-Taylor, An Introduction To
Support Vector Machines, Cambridge University Press, 2000.
Couverture simple du sujet des SVM. - Breiman, Friedman, Olshen, Stone, Classification and Regression Trees, CRC Press, 1993.
- Devroye, Györfi, Lugosi, A Probabilistic
Theory of Pattern Recognition, Springer-Verlag, 1997.
La bible de la théorie de l'apprentissage. - Vapnik, Statistical Learning Theory,
Wiley & Sons, 1998.
La théorie de l'apprentissage. - Vapnik, The Nature of Statistical Learning Theory,
Springer-Verlag, 1999.
Version plus digeste de Statistical Learning Theory. Focalise sur les principes plutot que sur les détails mathématiques.