Cette section présente le plan de cours prévu. Il est à noter que le contenu des thématiques abordées peut légèrement changer au cours du trimestre. Référez-vous au site web du cours (Moodle) pour les documents à jour.
A - INTRODUCTION
1 - Introduction (3 heures)
B - APPRENTISSAGE
2 - Rétropropagation (3 heures)
-
Descente de gradient
-
Règle de la chain
-
Rétropropagation, apprentissage en suivant le gradient
-
Réseaux de neurones en python I (Descente de gradient)
3 - Optimization (3 heures)
-
Fonction de coût
-
Optimisateurs (SGD, Momentum, Nesterov, Adam, etc.)
-
Réseaux de neurones en python (descente de gradient, descente de gradient stochastique, effet des différents optimisateurs)
4 - Réseaux de neurones convolutifs : Mise en place de l'architecture (3 heures)
-
Notions/éléments basics : convolutions, 2D/3D, pooling, padding, strided/dilated convolutions
-
Fonctions d’activations
-
Exemple CNN simple
-
Introduction à pyTorch et création d’un CNN simple. (ex. Classification MNIST)
5 - Réseaux de neurones convolutifs : Babysitting le processus d’apprentissages (3 heures)
-
Régularisation (normes L1 et L2, drop-out)
-
Normalisation par lot
-
Initialization de poids (aléatoire, zéro, Xavier)
-
Pré-traitement de données.
-
Techniques pour améliorer les réseaux de neurones (augmentation de données, hyperparameter tuning, transfer learning, ensemble)
C - APPLICATIONS
6 - Classification : reconnaître chiens et chats (3 heures)
7,8 - Segmentation : quoi, où et comment? (6 heures)
-
Introduction à la tâche
-
CNNs pour segmentation (2D/3D)
-
Métriques d’évaluation
-
Fonctions de coût pour la classification
-
Défis de la tâche
-
Étude de cas : Segmentation d’images médicales ou des images de la conduite autonome
9 - Apprentissage faiblement supervisé (3 heures)
-
Apprentissage supervisé vs apprentissage faiblement supervisé
-
A prioris (a priori axé sur la connaissance, a priori axé sur les données)
-
Modèles et optimisation
-
Étude de cas : fonction de coût basée sur la taille
10 - Apprentissage semi-supervisé (3 heures)
11 - Visualisation et interprétabilité (3 heures)
-
Visualisation des filtres
-
Visualisation des activations
-
Visualisation des features (Montée de gradient, DeepDream)
-
Exemples contradictoires (Adversarial exemples)
-
Transfert de style
-
Saliency maps
-
Cartes d'activations de la classification
Étude de cas : Interprétabilité des prédictions de classification (a.k.a., classification activation maps).
12 - Modélisation de l'incertitude (3 heures)
-
Compréhension de l'incertitude dans les prédictions
-
Fonctions de coût pour modéliser l'incertitude (perte de focalisation, lissage des étiquettes, MbLS, etc.)
-
Métriques d'évaluation.
-
Classification vs Segmentation
-
Étude de cas : Limitations de l'incertitude dans l'apprentissage - segmentation
13 - Sujets avancés (3 heures)
-
À définir avec les étudiants. Dans la séance 5 ou 6, plusieurs sujets seront présentés et les étudiants vont décider ce qu'ils préfèrent pour la dernière séance. (exemples : adaptation de domaines, apprentissage continue, estimation de l'incertitude des prédictions, distillation des connaissances, détection non-supervisé d'anomalies, etc.)
-
Présentations des travaux.