UBC CPEN 400D (2022 Winter Term 2): Deep Learning

Overview

Deep Learning has revolutionized many fields, e.g., computer vision, speech recognition, and natural language processing. It has become the vital pillar underpinning the modern machine learning and AI and is one of the most highly sought after skills in industries.

In this course, we will study the fundamentals of deep learning, including architectures (e.g., MLPs, CNNs, RNNs, Transformers, and GNNs) and learning algorithms under different paradigms (supervised / unsupervised / reinforcement learning), with an emphasis on motivating applications, design principles, and practical and or theoretical limitations.


Course Information

Instructor Renjie Liao
TA Qi Yan, Sadegh Mahdavi, Jiahe Liu
Time 12:30pm to 2:00pm, Tue. and Thu.
Location Hugh Dempster Pavilion 310
Piazza https://piazza.com/ubc.ca/winterterm22022/cpen400d
Canvas CPEN 400D 206 2022W2
Office Hour 1:00pm to 2:00pm Wed. KAIS 3047 (Ohm)
Email rjliao@ece.ubc.ca

Announcements

Pre-requisites

Grading

Important Notes

  1. All course-related questions should be sent and handled via Piazza. Canvas is only used for submitting homework, assignments, and projects. Try to avoid sending me emails directly as it is likely to be buried in my inbox.

  2. All homework, assignments, and projects must be done individually. A 20% (non-hourly based) penalty is applied to any late submission. Any submission that is later than 3 days after the deadline will not be evaluated. E.g., if your homework is late but within 3 days after the deadline, your receive 80% of the grade for the homework. If it is beyond 3 days, then you get 0 grade.

  3. UBC values academic integrity. Therefore, all students must understand the meaning and consequences of cheating, plagiarism and other academic offences under the Code of Student Conduct and Discipline.


Schedule

This is a tentative schedule, which will likely change as the course goes on. Changes will be announced on Piazza and this website.

Lecture             Dates                 Topic Slides             Suggested Readings
1 Jan. 10
Jan. 12
Jan. 17
Introduction & ML Basics & Linear Models slides 1.1
slides 1.2
Chapter 5 of DL book & Chapter 10 and 11 of PML book
Assignment 1 Jan. 13 (out)
Feb. 3 (due)
1st homework    
2 Jan. 19
Jan. 24
Jan. 26
Feb. 2
Multilayered Perceptron & Back-Propagation slides 2.1
slides 2.2
slides 2.3
Chapter 6 and 7 of DL book & Chapter 13 of PML book
3 Feb. 7 Autograd and Pytorch    
4 Feb. 9 Convolutional Neural Networks    
Assignment 2 Feb. 3 (out)
Feb. 24 (due)
1st Programming Assignment    
5 Feb. 14 Recurrent Neural Networks    
6 Feb. 16 Transformers    
Assignment 3 Feb. 24 (out)
Mar. 17 (due)
2nd Homework    
7 Feb. 28
Mar. 2
Graph Neural Networks    
8 Mar. 7
Mar. 9
Autoencoders & Denoising Autoencoders & Variation Autoencoders (VAEs)    
9 Mar. 14
Mar. 16
Deep Generative Models: Energy Based Models (EBMs)    
Assignment 4 Mar. 17 (out)
Apr. 7 (due)
2nd Programming Assignment    
10 Mar. 21
Mar. 23
Deep Generative Models: Auto-regressive & Reversible Models    
11 Mar. 28
Mar. 30
Deep Generative Models: Generative Advesarial Networks (GANs)    
12 Apr. 4
Apr. 6
Deep Reinforcement Learning    
Project Apr. 16 (due)      

FAQ

Can I audit or sit in?

I am very open to auditing guests if you are a member of the UBC community (registered student, staff, and/or faculty). I would appreciate that you first email me. If the in-person class is too full and running out of space, I would ask that you please allow registered students to attend.

Is there a textbook for this course?

While there is no required textbook, I recommend the following closely relevant ones for further reading:

I also recommend students who are self-motivated to take a look at similar courses taught at other universities:


Previous Version

UBC CPEN400D 2022 W1 Taught by Prof. Brad Quinton and Prof. Scott Chin.