Schedule and Syllabus

Lectures are held at WTS A30 (Watson Center) from 9:00am to 11:15m on Monday (starting on Jan 13, 2020). The second lecture is from 9:00am to 11:15am on Friday (Jan 17, 2020).

Instructors: Dr. Martin Renqiang Min and Prof. Mark Gerstein.

A detailed list of topics to be covered is here.

Technical sections: Friday 9:00am - 10:00am DL 120 (Dunham Laboratory).

Teaching Fellow: Yitan Wang.

Textbook: There is no required textbook for this course, but there are several freely available online textbooks for your reference.
1. Deep Learning.
2. Dive into Deep Learning.
3. Neural Networks and Deep Learning.
4. Pattern Recognition and Machine Learning [pdf].

A closely related course focusing on computer vision was offered at Stanford (cs231n).

All the listed future dates didn't consider spring break and will be finalized soon.

Event TypeDateDescriptionCourse Materials
Lecture 1 Monday
Jan 13
Course Introduction
Introduction to neural networks,
backpropagation, and deep learning
Course logistics
[slides]
Required Reading:
[backpropagation]
Deep Learning Review Paper [Nature]

Optional Reading:
[backprop notes]
[Efficient BackProp]
related: [1], [2], [3]
Lecture 2 Friday
Jan 17
Supervised Deep Learning
Activation functions, Convoutional Neural Networks
Image Classification, AlexNet, VGG, ResNet
pretraining, naive transfer learning
network visualization, deep dream, style transfer
[slides]
Required Reading:
Deep Learning Review Paper [Nature]
AlexNet

Optional Reading:
[python/numpy tutorial]
[image classification notes]
[linear classification notes]
VGGNet, GoogLeNet, ResNet
Technical Section Friday
Jan 24
Python/numpy/Deep Learning Hardware/Software [Numpy notebook]
[PyTorch notebook]
Stanford cs231n 2017 YouTube Lecture 8
Lecture 3 Monday
Jan 27
Optimization, Regularization, and Robustness
Optimization and regularization methods
Adversarial examples and robust optimization
Attack and defense methods
[slides]

Optional Reading:
SGD by Leon Bottou
[cs231n optimization note 1]
[cs231n optimization note 2]
[cs231n optimization note 3]
Robust optimization against adversarial
A1 Posted Wednesday
Jan 29
Assignment 1
perceptron, backpropagation, optimization
programming: experimenting with activation
functions, different layers, loss functions,
gradient vanishing, and optimization methods
[A1 Written Part]
Technical Section Friday
Jan 31
PyTorch and CNN Filter Visualization
PyTorch tutorials on Autograd
Training a simple CNN and a classifier
CNN filter visualization
DeepDream and Style Transfer
Neural Network in PyTorch
Classifier in PyTorch
Stanford 2017 cs231n YouTube Lecture 12
Lecture 4 Monday
Feb 3
Recurrent Neural Networks
LSTM, GRU
[slides]

Optional Reading:
DL book RNN chapter
min-char-rnn
Project Topics Thursday
Feb 6
Some possible project topics [Some Topics]
Technical Section Friday
Feb 7
Adversarial Examples [Stanford 2017 cs231n YouTube Lecture 16]
A1 Coding Part Saturday
Feb 8
A1 Coding Posted
experimenting with activation functions,
shallow and deep architectures, dropout,
gradient vanishing, and optimization methods
[A1 Coding Part]
[A1 Starter Code]
Lecture 5 Monday
Feb 10
Deep Autoencoder
RBM, Autoencoder
[slides]
Required Reading:
Dimensionality Reduction Application
Denoising Autoencoder

Optional Reading:
Ladder Network
tips/tricks: [1], [2]
Proposal Title due Monday
Feb 10
Project abstract and team formation due [Stanford 2017 cs231n proposal description]
Lecture 6 Monday
Feb 17
Deep Encoder-Decoder Networks and Applications
Word embedding
Machine translation
Image and video captioning
[slides]
Required Reading:
Seq2Seq

Optional Reading:
[Stanford 2017 cs231n YouTube Lecture 11]
Word2Vec
Lecture 7 Monday
Feb 24
Attention Mechanisms and Applications
Neural Machine Translation
Question Answering
Transformer and BERT
[slides]
Required Reading:
NMT with Attention

Optional Reading:
Transformer
BERT
Interactive QA
A2 Posted Thursday
Feb 27
Assignment #2 posted
Understand exploding and vanishing gradient
of vanilla RNN, understand RBM and autoencoder
PyTorch with DNN, CNN, vanilla RNN, LSTM/GRU
[Assignment #2]
[Starter Code (163M)]
Lecture 8 Monday
Mar 2
Deep Probabilistic Generative Models: Variational Inference and Variational Autoencoder
(Reweighted) Wake-Sleep Algo
(Neural) VI, VAE, PixelCNN
[slides]
Required Reading:
VAE

Optional Reading:
Neural VI
Lecture 9 (Zoom) Monday
Mar 23
Deep Generative Models: Generative Adversarial Networks
GAN, Conditional GAN
CycleGAN, Domain Adaptation
Wasserstein distance, WGAN
Video Generation, Text2Video
[slides]
Required Reading:
GAN

Optional Reading:
Wasserstein GAN
Text2Video
CycleGAN
[Stanford 2017 cs231n YouTube Lecture 13]
A2 Due Friday
Mar 27
Assignment #2 due
Understand exploding and vanishing gradient
of vanilla RNN, understand RBM and autoencoder
PyTorch with DNN, CNN, vanilla RNN, LSTM/GRU
[Assignment #2]
A3 Posted Saturday
Mar 28
Assignment #3 posted
Understand issues of VAE and GAN
Train VAE or GAN on MNIST
[Assignment #3]
Lecture 10 (Zoom) Monday
Mar 30
Deep Reinforcement Learning
Deep Q-Learning
Policy Gradient, Actor-Critic
[Part1] [Part2]
Required Reading:
AlphaGO

Optional Reading:
Stanford cs231n 2017 Lecture 14
AlphaZero
ICML 2017 DRL Tutorial
Lecture 11 Monday
Apr 6
Biomedical Application Case Study I
[slides]
Lecture 12 Monday
Apr 13
Biomedical Application Case Study II
[Part1] [Part2]
Guest Lecture by Renjie Liao Friday
Apr 17
Graph Neural Networks Renjie Liao
Lecture 13 Monday
Apr 20
Biomedical Application Case Study III
[slides]
Guest Lecture by Dr. Asim Kadav Friday
Apr 24
Video Understanding [Slides]
A3 Due Monday
Apr 27
Assignment #3 due
Understand issues of VAE and GAN
Train VAE or GAN on MNIST
[Assignment #3]
Paper Summary Due Thursday
Apr 30
Paper Summary due
10 Required Papers
Final Project Paper Due Thursday
7 May
Project Paper due
Presentation Video Due 7 May Video No More Than 5 Minutes