| Self-Supervised Learning |
Why learn without labels, the cognitive principles behind it, a taxonomy of pretext tasks, reconstructive tasks, and instance discrimination |
Open |
| Contrastive Learning Methods |
SimCLR, BYOL, DINO and DINOv2, iBOT, and weakly supervised pretraining at scale |
Open |
| Advanced SSL and JEPA Models |
Masked autoencoders and representation collapse, I-JEPA, how SSL encoders are evaluated, and V-JEPA and V-JEPA 2 for video, planning and language alignment |
Open |
| Lab 1: Self-Supervised Pretraining by Rotation |
Exercise: with only a small labelled subset of CIFAR-10, compare rotation-prediction pretraining against transfer learning and training from scratch |
Notebook Colab |
| Lab 2: SimCLR |
Contrastive pretraining on STL-10 from two augmented views of each image, then a linear probe against a random-encoder baseline |
Notebook Colab |
| Lab 3: BYOL |
Self-supervised learning without negative pairs: an online network and a slowly updated target network on STL-10, evaluated with a linear probe |
Notebook Colab |
| Lab 4: I-JEPA |
Predict the features of masked image regions instead of their pixels, with an EMA target encoder, then linear-probe the features on STL-10 against an autoencoder's |
Notebook Colab |
| Optional: Introduction to Deep Unsupervised Learning |
Supervised versus unsupervised learning, clustering with k-means, hierarchical clustering and DBSCAN, dimensionality reduction with PCA, t-SNE and UMAP, and anomaly detection |
Open |
| Optional: Custom Datasets and Image Augmentations |
Load a folder of raw images into a PyTorch Dataset, turn them into tensors, and apply torchvision transforms and augmentations |
Notebook Colab |
| Optional: Dataset Class Summary |
A reference Dataset class for each common layout: class folders, pre-split or unsplit data, CSV labels, and segmentation masks |
Notebook Colab |
| Optional: Working with Different Dataset Structures |
Exercise: inspect real datasets stored in different layouts, write a Dataset class for each, and visualise samples |
Notebook Colab |
| Optional: Working with Different Dataset Structures (Solution) |
Worked solution to the dataset structures exercise |
Notebook Colab |