Dans ces cours, nous discuterons de l'apprentissage auto-supervisé. Nous discuterons de la manière de créer une représentation au-delà du paradigme de la pré-formation supervisée, et nous verrons comment des tâches de prétexte efficaces peuvent être conçues et comment s'entraîner avec des objectifs contrastés.
Slides:
Video de cours ( 15/04/2024 )
Reference:
Doersch, Carl, Abhinav Gupta, and Alexei A. Efros. "Unsupervised visual representation learning by context prediction." CVPR (2015).
Gidaris, Spyros, Praveer Singh, and Nikos Komodakis. "Unsupervised representation learning by predicting image rotations." ICLR (2018).
Wu, Zhirong, et al. "Unsupervised feature learning via non-parametric instance discrimination." CVPR (2018).
He, Kaiming, et al. "Momentum contrast for unsupervised visual representation learning." CVPR (2020).
Chen, Ting, et al. "Big self-supervised models are strong semi-supervised learners." (2020).
Grill, Jean-Bastien, et al. "Bootstrap your own latent: A new approach to self-supervised learning." NeurIPS (2020).
Remarque : Cette conférence a lieu de 9h30 à 11h30, le jeudi 6 avril 2023.
Exceptionnellement, la conférence sera en anglais.
Le cours sera 100% virtuel.
=========================================================================
COURS RENVERSÉ -- VEUILLEZ REGARDER LA VIDÉO AVANT LE COURS
Une grande partie des progrès récents sur de nombreuses tâches d'IA a été rendue possible en partie par la disponibilité de grandes quantités de données étiquetées. Pourtant, les humains sont capables d'apprendre des concepts à partir d'aussi peu qu'une poignée d'exemples. Le méta-apprentissage (meta-learning) est un cadre très prometteur pour résoudre le problème de la généralisation à partir de petites quantités de données, connu sous le nom d'apprentissage en quelques coups. En méta-apprentissage, notre modèle est lui-même un algorithme d'apprentissage : il prend en entrée un ensemble d'apprentissage et en sortie un classifieur. Pour l'apprentissage en quelques coups, il est (méta-)entraîné directement pour produire des classificateurs avec de bonnes performances de généralisation pour les problèmes avec très peu de données étiquetées. Dans cette conférence, Hugo présentera un aperçu des recherches récentes qui ont fait des progrès passionnants sur ce sujet (y compris les miens) et, si le temps le permet, discutera des défis ainsi que des opportunités de recherche qui restent.
Video: Hugo's Lecture (à regarder avant le cours du 09/04/2024)
Slides: Meta-Learning slides
Cette semaine, nous parlerons de la modélisation générative basée sur la diffusion.
Slides:
Diffusion
Les diapositives sont *très* légèrement modifiées à partir des diapositives originales du tutoriel CVPR 2022 de Karsten Kreis, Ruiqi Gao et Arash Vahdat et de quelques diapositives de Mateusz Malinowski.
Videos des cours ( 03/04/2024, 10/04/2024)
References: Les liens sont disponibles dans les diapositives.
Dans ce cours, nous discuterons des réseaux antagonistes (adversariels) génératifs (GAN). Les GAN sont un paradigme de modèle génératif récent et très populaire. Nous aborderons le formalisme GAN, quelques considérations théoriques et pratiques.
Slides:
Videos des cours ( 27/03/2024 , 03/04/2024)
Reference: (* = you are responsible for this material)
*Sections 20.10.4 of the Deep Learning textbook.
*Generative Adversarial Networks by Ian Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville, Yoshua Bengio (NIPS 2014).
*f-GAN: Training Generative Neural Samplers using Variational Divergence Minimization by Sebastian Nowozin, Botond Cseke and Ryota Tomioka (NIPS 2016).
NIPS 2016 Tutorial: Generative Adversarial Networks by Ian Goodfellow, arXiv:1701.00160v1, 2016
Adversarially Learned Inference by Vincent Dumoulin , Ishmael Belghazi , Ben Poole, Olivier Mastropietro, Alex Lamb, Martin Arjovsky and Aaron Courville (ICLR 2017).
Many others refs in the slides.
Dans ce cours, nous discuterons d'une famille de modèles de variables latentes connue sous le nom d'auto-encodeurs variationnels (VAE). Nous verrons comment un modèle gaussien latent profond peut être vu comme un auto-encodeur via une inférence variationnelle amortie, et comment un tel auto-encodeur peut être utilisé comme modèle génératif. À la fin, nous verrons des variantes de VAE et différentes façons d'améliorer l'inférence.
Slides:
Vidéo:
Vidéo du cours 1 (date d'origine 20/03/2023)
Vidéo du cours 2 (date d'origine 22/03/2023)
Vidéo du cours 3 (date d'origine 27/03/2023)
Reference: (* = you are responsible for this material)
*Chapter 20.10.3 of the Deep Learning textbook.
*Chapter 2 of An Introduction to Variational Autoencoders by Kingma and Welling
Inference Suboptimality in Variational Autoencoders by Chris Cremer (ICML 2018)
Importance Weighted Autoencoders by Yuri Burda (ICLR 2016)
Variational Inference, lecture note by David Blei. Section 1-6.
Blog post Variational Autoencoder Explained by Goker Erdogan
Blog post Families of Generative Models by Andre Cianflone
Dans ce cours, nous aurons un cours accéléré sur la normalisation des flux et verrons comment ils peuvent être utilisés comme modèle génératif en inversant la transformation de la distribution des données en une distribution a priori.
Slides: Normalizing Flows
Videos des cours ( 25/03/2024, 27/03/2024 )
Reference: (* = you are responsible for this material)
*Chapter 20.10.2 of the Deep Learning textbook.
*Chapter 1-2 (for the core idea) and Chapter 6 (for applications) Normalizing Flows for Probabilistic Modeling and Inference by George Papamakarios and friends.
Dans ces cours, nous examinerons de plus près une forme de réseau de neurones connue sous le nom d'Autoencoder. Nous commencerons également notre regard sur les modèles génératifs avec les modèles autorégressifs.
Slides:
Videos des cours ( 18/02/2024, 20/03/2024, 25/03/2024 )
Reference: (* = you are responsible for this material)
*Chapter 13-14 of the Deep Learning textbook.
*Sections 20.10.5-20.10.10 of the Deep Learning textbook.
The Neural Autoregressive Distribution Estimator by Hugo Larochelle and Iain Murray (AISTAT2011) -- this is just a suggestion, we don't cover NADE in class.
MADE: Masked Autoencoder for Distribution Estimation by Mathieu Germain, Karol Gregor, Iain Murray, Hugo Larochelle (ICML2015).
Pixel Recurrent Neural Networks by Aaron van den Oord, Nal Kalchbrenner, Koray Kavukcuoglu (ICML2016)
*Conditional Image Generation with PixelCNN Decoders by Aaron van den Oord, Nal Kalchbrenner, Oriol Vinyals, Lasse Espeholt, Alex Graves, Koray Kavukcuoglu (NIPS2016)
Medium Post by Jessica Dafflon on PixelCNN's blindspot and how to fix it.
Dans ce cours, nous examinerons l'auto-attention et le modèle du transformateur. Nous verrons comment ils fonctionnent, les approfondirons, verrons leurs analyses et leurs performances, et leurs applications principalement dans le traitement du langage naturel. Nous verrons comment certains modèles de langage, basés sur l'architecture des transformateurs, ont dépassé les performances humaines sur certaines tâches de compréhension du langage, et nous discuterons également de leurs lacunes.
Slides:
Self-Attention and Transformer (slides par Arian Hosseini et Aaron Courville).
RLHF par A. Hosseini (et autres).
LoRA par A. Hosseini (et autres).
Videos des cours (19/02/2024, 21/02/2024, 26/02/2024, 28/02/2024, 11/03/2024, 13/03/2024, 18/03/2024)
Reference: (plus the works mentioned in the slides)
Dans ce cours, nous présentons les réseaux neuronaux récurrents et les modèles associés.
cours RNNs (slides de Hugo Larochelle)
Videos des cours (07/02/2024, 12/02/2024, 14/02/2024)
Reference: (* = you are responsible for this material)
*Chapter 10 of the Deep Learning textbook (sections. 10.1-10.11, we will cover the material in 10.12 later).
Blog post on Understanding LSTM Networks by Chris Olah.
Dans ces cours, nous aurons une discussion assez détaillée des méthodes de régularisation et de leur interprétation.
Slides:
Videos des cours (05/01/2024, 07/02/2024)
Reference: (* = you are responsible for this material)
*Chapter 7 of the Deep Learning textbook.
Understanding deep learning requires rethinking generalization (ICLR 2017) par Chiyuan Zhang, Samy Bengio, Moritz Hardt, Benjamin Recht, Oriol Vinyals
Dans ce cours, nous discuterons des méthodes d'optimisation de premier ordre populaires et pratiques. Nous n'en discuterons pas, mais je fournis des diapositives pour certaines méthodes de second ordre et leur interprétation.
Slides:
Optimization I: First-Order Methods (et méthodes de normalisation)
Optimization II: Second-Order Methods (optional)
Videos des cours (31/01/2024, 05/02/2024)
Reference: (* = vous êtes responsable de ce matériel)
*Chapter 8 of the Deep Learning textbook.
Why Momentum Really Works. Gabriel Goh, Distill 2017.
Dans ce cours, nous terminons notre discussion sur l'appentissage des réseaux de neurones et nous introduisons les réseaux de neurones convolutifs.
Cours CNNs (diapositives modifiées à partir des notes de cours d'Hugo Larochelle)
videos des cours (22/01/2024, 24/01/2024, 29/01/2024)
Backprop in CNNs (Slides de Hiroshi Kuwajima’s Memo on Backpropagation in Convolutional Neural Networks.) -- nous n'en parlerons pas en classe, mais elles sont obligatoires et vous en êtes responsable. (pourrait être sur les devoirs et l'examen)
Reference: (* = you are responsible for all of this material)
*Chapter 9 of the Deep Learning textbook, Sections 9.10 and 9.11 are optional.
Andrej Karpathy’s excellent tutorial on CNNs.
Paper on convolution arithmetic by Vincent Dumoulin and Francesco Visin.
WaveNet Blog presenting dilated convolutions animation and samples.
Blog on Deconvolution and Checkerboard Artifacts by Augustus Odena, Vincent Dumoulin and Chris Olah.
Ce cours est un tutoriel d'introduction sur PyTorch par Jerry Huang. Nous vous encourageons à suivre Colab.
Un notebook Colab pour le tutoriel est disponible sur le lien suivant :
https://colab.research.google.com/drive/1Yt5Oyujw-l_F1EI96BiUL55490VPAdJG?usp=sharing
video de cour (10/01/2024)
Nous couvrons:
la classe torch.Tensor, et les attributs et opérations importants
différenciation automatique dans pytorch
modules torch.nn et torch.optim
former les MLP et les ConvNets sur le MNIST
https://www.dropbox.com/scl/fi/n3m72uvjax4ojzjk4otho/02_NN_training.pdf?rlkey=7s8kw4dqets1mzujwl6egsh28&dl=0Dans ces cours, nous poursuivons notre introduction aux réseaux de neurones et nous discuterons de la façon d'entraîner des réseaux de neurones : c'est-à-dire l'algorithme de rétropropagation (Backpropagation Algorithm)
Lecture 02 training NNs (diapositives construites sur les diapositives d'Hugo Larochelle)
Machine learning problems (slides from Hugo Larochelle's CIFAR DLSS 2019 lectures)
videos des cours (08/01/2024, 15/01/2024, 17/01/2024)
Référence: (vous êtes responsable de tout ce matériel)
Chapitres 6 du manuel Deep Learning (par Ian Goodfellow, Yoshua Bengio et Aaron Courville).
Nous discutons du plan de cours et de la méthode pédagogique choisie. Dans ce cours, nous commencerons également notre introduction détaillée aux réseaux de neurones.
Cours 01 neurones artificiels (diapositives construites sur les diapositives d'Hugo Larochelle)
Référence: (vous êtes responsable de tout ce matériel)
Chapitres 6 du manuel Deep Learning (par Ian Goodfellow, Yoshua Bengio et Aaron Courville).
Le premier cours est le 8 janvier 2024. Aperçu de certains documents de base, couvrant l'algèbre linéaire, le calcul et les bases de l'apprentissage automatique.
Cours 00 slides (diapositives construites sur les diapositives d'Hugo Larochelle)
Référence: (vous êtes responsable de tout ce matériel)
Chapitres 1 à 5 du manuel Deep Learning (par Ian Goodfellow, Yoshua Bengio et Aaron Courville).