Lectures will be Mondays and Wednesdays 4:30pm - 6pm in 1670 Beyster.

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.

Since this is the first time this course has been taught at Michigan, the schedule is subject to change as we move through the semester.

Event Date Description Course Materials
Lecture 1 Wednesday
September 4
Course Introduction
Computer vision overview
Historical context
Course logistics
[Python tutorial]
[GBC Sec 1.2]
[GBC Sec 6.6]
Lecture 2 Monday
September 9
Image Classification
Data-driven approach
K-Nearest Neighbor
[231n Image Classification]
Lecture 3 Wednesday
September 11
Linear Classifiers
Softmax / SVM classifiers
L2 regularization
[231n Linear Classification]
A1 Due Sunday
September 15
Assignment 1 Due
PyTorch warmup
kNN Classifier
[Assignment 1]
Lecture 4 Monday
September 16
Stochastic Gradient Descent
Momentum, AdaGrad, Adam
Second-order optimizers
[CS231n Optimization]
[GBC Sec. 8.1 to 8.6]
Lecture 5 Wednesday
September 18
Neural Networks
Feature transforms
Fully-connected networks
Universal approximation
[231n Neural Networks]
[GBC Sec. 6.1 to 6.4]
[Nielsen on Universal Approximation]
Lecture 6 Monday
September 23
Computational Graphs
Matrix multiplication example
[231n Backpropagation]
[Olah on Backprop]
[Nielsen on Backprop]
Lecture 7 Wednesday
September 25
Convolutional Networks
Batch Normalization
[CS231n ConvNets]
[GBC Chapter 9]
Lecture 8 Monday
September 30
CNN Architectures
AlexNet, VGG, ResNet
Size vs Accuracy
Grouped and Separable Convolutions
Neural Architecture Search
A2 Due Monday
September 30
Assignment 2 Due
Linear classifiers
Two-layer network
[Assignment 2]
Lecture 9 Wednesday
October 2
Hardware and Software
Dynamic vs Static graphs
PyTorch, TensorFlow
Lecture 10 Monday
October 7
Training Neural Networks I
Activation functions
Data preprocessing
Weight initialization
Data augmentation
Regularization (Dropout, etc)
[CS231n Training I]
Lecture 11 Wednesday
October 9
Training Neural Networks II
Learning rate schedules
Hyperparameter optimization
Model ensembles
Transfer learning
Large-batch training
[CS231n Training II]
[Karpathy "Recipe for Training"]
October 14
No Class
Fall Study Break
A3 Due Monday
October 14
Assignment 3 Due
Modular API
Convolutional Networks
Batch Normalization
[Assignment 3]
Lecture 12 Wednesday
October 16
Recurrent Networks
Language modeling
Image captioning
Visual question answering
[Karpathy "Unreasonable Effectiveness"]
Midterm Monday
October 21
In-class Midterm Exam
Location: Chrysler 220
Time: 4:30pm - 6pm
Lecture 13 Wednesday
October 23
Multimodal attention
[Bloem "Transformers from Scratch"]
[Alammar "The Illustrated Transformer"]
Guest Lecture Monday
October 28
Guest Lecture: Luowei Zhou
Vision and Language
Guest Lecture Wednesday
October 30
Guest Lecture: Prof. Atul Prakash
Adversarial attacks
Lecture 14 Monday
November 4
Visualizing and Understanding
Feature visualization
Adversarial examples
DeepDream, Style transfer
[Distill "Feature Visualization"]
[Distill "Building Blocks of Interpretability"]
Lecture 15 Wednesday
November 6
Object Detection
Single-stage detectors
Two-stage detectors
Lecture 16 Monday
November 11
Image Segmentation
Semantic segmentation
Instance segmentation
Keypoint estimation
Lecture 17 Wednesday
November 13
3D vision
3D shape representations
Depth estimation
3D shape prediction
Voxels, Pointclouds, SDFs, Meshes
A4 Due Wednesday
November 13
Assignment 4 Due
RNNs, Attention
Visualization, style transfer
[Assignment 4]
Lecture 18 Monday
November 18
Video classification
Early / Late fusion
Two-stream networks
Lecture 19 Wednesday
November 20
Generative Models I
Supervised vs Unsupervised learning
Discriminative vs Generative models
Autoregressive models
Variational Autoencoders
November 25
No class
Thanksgiving break
November 27
No Class
Thanksgiving break
Lecture 20 Monday
December 2
Generative Models II
More Variational Autoencoders
Generative Adversarial Networks
Lecture 21 Wednesday
December 4
Reinforcement Learning
RL problem setup
Bellman Equation
Policy Gradient
Lecture 22 Monday
December 9
Course recap
The future of computer vision
A5 due Monday
December 9
Assignment 5 Due
Object detection
[Assignment 5]
A6 due Tuesday
December 17
Assignment 6 Due
Variational Autoencoders
Generative Adversarial Networks
[Assignment 6]