Logo ÉTS
Session
Cours
Responsable(s) Eric Paquette

Se connecter
 

Sauvegarde réussie
Echec de sauvegarde
Avertissement





Cours

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)

  • Présentation des types de problèmes classiques de vision par ordinateur (classification, détection, segmentation). 

  • Définition de l’apprentissage machine.

  • Contexte historique. 

  • Applications. 

  • Organisation du cours.

  • Introduction à python/numpy

2 - Réseaux de Neurones - recap (3 heures) 

  • Classification linéaire

  • Perceptron

  • Fonctions d’activation.

  • Règle Delta.

  • MLP (Perceptron multi-couche)

  • Entrainer un perceptron/MLP.

 

B - APPRENTISSAGE

 

3 - Rétropropagation  (3 heures) 

  • Descente de gradient.

  • Regle de la chain

  • Retropropagation, apprentissage en suivant le gradient.

  • Réseaux de neurones en python I (Descente de gradient)

 

4 - 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érentes optimisateurs.)

 

5 - Réseaux de neurones convolutifs : Mise en place de l'architecture  (3 heures) 

  • Notions/elements basics : convolutions, 2D/3D, pooling, padding, strided/dilated convolutions

  • Fonctions d’activations

  • Example CNN simple

  • Introduction à pyTorch et création d’une CNN simple. (ex. Classification MNIST)

 

6 - Réseaux de neurones convolutifs: Babysitting le processus d’apprentissages (3 heures)

  • Regularisation (norms L1 et L2, drop-out)

  • Normalisation par lot

  • Initialization de poids (aleatoire, zero, 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

7 - Classification: reconnaître chiens et chats (3 heures)

  • Introduction à la tâche. 

  • CNNs pour classification. 

  • Metriques d’evaluation.

  • Fonctions de coût pour la classification.

  • Défis de la tâche.

  • Étude de cas: Classification d’ImageNet  

 

8,9 - Segmentation: quoi, où et comment? (6 heures)

  • Introduction à la tâche. 

  • CNNs pour segmentation (2D/3D). 

  • Metriques d’evaluation.

  • 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. 

 

10 - Apprentissage faiblement supervisé (3 heures)

  • Apprentissage supervisé vs apprentissage faiblement supervisé.

  • À prioris (à priori axé sur la connaissance, à priori axé sur les données).

  • Modèles et optimisation.

  • Étude de cas : fonction de coût basée sur la taille.

 

11 - Apprentissage semi-supervisé (3 heures)

  • Contexte.

  • Comment utilisons-nous les données non étiquetées?

    • Pseudo-masques

    • Self-training.

    • Co-training.

  • Étude de cas: self-training avec des tâches auxiliaires.

 

12 - 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).

 

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

 

Laboratoires et travaux pratiques

Projet de session

  • Le projet de session consiste à la participation dans un challenge relié aux thèmes vus dans le cours et la présentation du travail. 
  • Ce projet devra être effectué en équipe de 3 ou 4 et une partie de la dernière séance de la session sera consacrée à vos présentations.
Projet de recherche 40 %
 Rapport 20 % 
 Présentation 10 %
 Résultats de la competition 10 %