Lectures are Mondays and Wednesdays, 4:30pm to 6pm. Attendance is not required. Recordings will be posted after each lecture in case you are unable the attend the scheduled time.

We will hold lectures remotely over Zoom for the first few weeks. See Canvas for the Zoom meeting information.

Some lectures have reading drawn from the course notes of Stanford CS 231n, written by Andrej Karpathy.

Some lectures have optional reading from the book Deep Learning by Ian Goodfellow, Yoshua Bengio, and Aaron Courville (GBC for short). The entire text of the book is available for free online so you don’t need to buy a copy.

Event Date Description Course Materials
Lecture 1
[Remote]
Wednesday
January 5
Course Introduction
Computer vision overview
Historical context
Course logistics
[slides]
[video (UMich only)]
[FA2019 video (public)]
[Python tutorial]
[GBC Sec 1.2]
[GBC Sec 6.6]
Lecture 2
[Remote]
Monday
January 10
Image Classification
Data-driven approach
K-Nearest Neighbor
Hyperparameters
Cross-validation
[slides]
[video (UMich only)]
[FA2019 video (public)]
[231n Image Classification]
Lecture 3
[Remote]
Wednesday
January 12
Linear Classifiers
Algebraic / Visual / Geometric viewpoints
Softmax / SVM classifiers
[slides]
[video (UMich only)]
[FA2019 video (public)]
[231n Linear Classification]
A1 Due Friday
January 14
Assignment 1 Due
PyTorch warmup
kNN Classifier
[Assignment 1]
Monday
January 17
No class
MLK Day
Lecture 4
[Remote]
Wednesday
January 19
Regularization + Optimization
Regularization
Weight decay
Stochastic Gradient Descent
Momentum, AdaGrad, Adam
Second-order optimizers
[slides]
[video (UMich only)]
[FA2019 video (public)]
[CS231n Optimization]
[GBC Sec. 8.1 to 8.6]
Lecture 5
[Remote]
Monday
January 24
Neural Networks
Feature transforms
Fully-connected networks
Universal approximation
Convexity
[slides]
[video (UMich only)]
[FA2019 video (public)]
[231n Neural Networks]
[GBC Sec. 6.1 to 6.4]
[Nielsen on Universal Approximation]
Lecture 6
[Remote]
Wednesday
January 26
Backpropagation
Computational Graphs
Backpropagation
Matrix multiplication example
[slides]
[video (UMich only)]
[FA2019 video (public)]
[Backprop for matrix multiply]
[231n Backpropagation]
[Olah on Backprop]
[Nielsen on Backprop]
A2 Due Friday
January 28
Assignment 2 Due
Linear classifiers
Two-layer network
[Assignment 2]
Lecture 7
[Remote]
Monday
January 31
Convolutional Networks
Convolution
Pooling
Batch Normalization
[slides]
[video (UMich only)]
[FA2019 video (public)]
[CS231n ConvNets]
[GBC Chapter 9]
Lecture 8
[Remote]
Wednesday
February 2
CNN Architectures I
BatchNorm, AlexNet, VGG, ResNet
Size vs Accuracy
[slides]
[video (UMich only)]
[FA2019 video (public)]
[AlexNet]
[VGG]
[GoogLeNet]
[ResNet]
[ResNeXt]
Lecture 9
[Remote]
Monday
February 7
Training Neural Networks I
Activation functions
Data preprocessing
Weight initialization
[slides]
[video (UMich only)]
[FA2019 video (public)]
[CS231n Training I]
Lecture 10
[Remote]
Wednesday
February 9
Training Neural Networks II
Data augmentation
Regularization (Dropout, etc)
Learning rate schedules
Hyperparameter optimization
Model ensembles
[slides]
[video (UMich only)]
[FA2019 video (public)]
[CS231n Training II]
[Karpathy "Recipe for Training"]
A3 Due Friday
February 11
Assignment 3 Due
Modular API
Convolutional Networks
Batch Normalization
Autograd
[Assignment 3]
Lecture 11
[Remote]
Monday
February 14
CNN Architectures II
Grouped and Separable Convolution
ResNeXt
Squeeze-and-Excite
MobileNets / ShufleNets
Neural Architecture Search
EfficientNets
NFNets
Revisting ResNets
RegNets
[slides]
[video (UMich only)]
Lecture 12
[Remote]
Wednesday
February 16
Deep Learning Software
Dynamic vs Static graphs
PyTorch, TensorFlow
[slides]
[video (UMich only)]
[FA2019 video (public)]
Monday
February 21
No class
President's Day
Midterm Wednesday
February 23
Midterm Exam
Details TBD
Monday
February 28
No class
Spring break
Wednesday
March 3
No Class
Spring break
Lecture 13
[Remote]
Monday
March 7
Object Detection
Transfer learning
Object detection task
R-CNN detector
Non-Max Suppression (NMS)
Mean Average Precision (mAP)
[slides]
[video (UMich only)]
[FA2019 video (public)]
[R-CNN paper]
Lecture 14
[Remote]
Wednesday
March 9
Object Detectors
Single-stage vs two-stage detectors
Region Proposal Networks (RPN), Anchor Boxes
Two-Stage Detectors: Fast R-CNN, Faster R-CNN
Feature Pyramid Networks
[slides]
[video (UMich only)]
[Girshick, Object Detection as a ML Problem]
[Fast R-CNN paper]
[Faster R-CNN paper]
[RetinaNet paper]
[FCOS paper]
Lecture 15
[Remote]
Monday
March 14
Image Segmentation
Single-Stage Detectors: RetinaNet, FCOS
Semantic segmentation
Instance segmentation
Keypoint estimation
[slides]
[video (UMich only)]
[FA2019 video (public)]
Lecture 16
[Remote]
Wednesday
March 16
Recurrent Networks
RNN, LSTM, GRU
Language modeling
Sequence-to-sequence
Image captioning
[slides]
[video (UMich only)]
[FA2019 video (public)]
[Karpathy "Unreasonable Effectiveness"]
Lecture 17
[Remote]
Monday
March 21
Attention
Multimodal attention
Self-Attention
Transformers
[slides]
[video (UMich only)]
[FA2019 video (public)]
[Bloem "Transformers from Scratch"]
[Alammar "The Illustrated Transformer"]
Lecture 18
[Remote]
Wednesday
March 23
Vision Transformers
ViT, DeiT
Swin, MViT
DETR
MLP-like architectures
[slides]
[video (UMich only)]
Lecture 19
[Remote]
Monday
March 28
Generative Models I
Supervised vs Unsupervised learning
Discriminative vs Generative models
Autoregressive models
Variational Autoencoders
[slides]
[video (UMich only);]
[FA2019 video (public)]
A4 due Tuesday
March 29
Assignment 4 Due
Object detection
[Assignment 4]
Lecture 20
[Remote]
Wednesday
March 30
Generative Models II
More Variational Autoencoders
Generative Adversarial Networks
Normalizing Flows and Diffusion models (maybe)
[slides]
[video (UMich only)]
[FA2019 video (public)]
Lecture 21
[Remote]
Monday
April 4
Visualizing Models and Generating Images
Feature visualization
Adversarial examples
DeepDream, Style transfer
[slides]
[video (UMich only)]
[FA2019 video (public)]
[Distill "Feature Visualization"]
[Distill "Building Blocks of Interpretability"]
[DeepDream]
[neural-style]
Lecture 22
[Remote]
Wednesday
April 6
Self-Supervised Learning
Colorization, inpainting
Contrastive learning
Masked autoencoding
Learning from language
[slides]
[video (UMich only)]
Lecture 23
[Remote]
Monday
April 11
3D vision
3D shape representations
Depth estimation
3D shape prediction
Voxels, Pointclouds, SDFs, Meshes
Implicit functions, NeRF
[slides]
[video (UMich only)]
[FA2019 video (public)]
A5 Due Tuesday
April 12
Assignment 5 Due
RNNs
Image captioning
Transformers
[Assignment 5]
Lecture 24
[Remote]
Wednesday
April 13
Videos
Video classification
Early / Late fusion
3D CNNs
Two-stream networks
Transformer-based models
[slides]
[video (UMich only)]
[FA2019 video (public)]
Lecture 25
[Remote]
Monday
April 18
Conclusion
Course recap
The future of computer vision
[slides]
[video (UMich only)]
[FA2019 video (public)]
Mini-project due Monday
April 25
Mini-Project
TBA
[Mini-Project]
A6 due Tuesday
April 26
Assignment 6 Due
Variational Autoencoders
Generative Adversarial Networks
Style Transfer
Feature visualization
[Assignment 6]