Welcome to Deep Learning!
Over the past few years, Deep Learning has become a popular area, with deep neural network methods obtaining state-of-the-art results on applications in computer vision (Self-Driving Cars), natural language processing (Google Translate), and reinforcement learning (AlphaGo). These technologies are having transformative effects on our society, including some undesirable ones (e.g. deep fakes).
This course is there to give students a practical understanding of how Deep Learning works, how to implement neural networks, and how to apply them ethically. We introduce students to the core concepts of deep neural networks and survey the techniques used to model complex processes within the contexts of computer vision and natural language processing.
Throughout the course, we emphasize and require students to think critically about potential ethical pitfalls that can result from mis-application of these powerful models. The course is taught using the Tensorflow deep learning framework.
The Latest
Lectures
Week 1-4 | Deep Learning Basics | ||
1/24 | Welcome to Deep Learning | ||
1/26 | Intro to Machine Learning | ||
1/29 | Perceptron and MNIST | ||
1/31 | Perceptron (continued) and Loss Functions | ||
2/2 | Optimization and Backpropagation | ||
2/5 | Backpropagation (continued) | ||
2/7 | Autodiff | ||
2/9 | Matrix representation of NNs + GPUs + Intro to Tensorflow | ||
2/12 | Multi-layer NNs and Activation Functions | ||
2/14 | Multi-layer NNs (contd.) + Intro to CNNs | ||
Week 4-6 | CNNs | ||
2/16 | CNNs | ||
2/21 | Multi-layer CNNs | ||
2/23 | Overfitting and regularization | ||
2/26 | Language Models and Word Embeddings | ||
Week 6-9 | Language Models | ||
2/28 | Feedforward language models | ||
3/1 | Recurrent neural networks | ||
3/4 | LSTMs + GRUs | ||
3/6 | Machine Translation | ||
3/8 | Attention | ||
3/11 | Transformers | ||
3/13 | Transformers (continued) and scaling deep learning systems | ||
3/15 | Scaling deep learning systems | ||
3/18 | Model Interpretability | ||
Week 9 | Interpretation | ||
3/20 | Interpretability and Unsupervised Learning | ||
Week 10-11 | Probabilistic Models | ||
4/1 | Unsupervised learning, Autoencoders | ||
4/3 | CLIP (guest lecture by Michal) | ||
4/5 | VAEs contd. and Generative adversarial networks | ||
4/8 | VAE and GANs contd + Deepfakes | ||
4/10 | Diffusion (guest lecture by Calvin Luo) | ||
4/12 | Diffusion continued (guest lecture by Calvin Luo) | ||
Week 12-13 | Reinforcement Learning | ||
4/15 | Introduction to reinforcement learning | ||
4/17 | Value Iteration | ||
4/19 | Deep Q learning | ||
4/22 | RL: Deep Q Learning + REINFORCE | ||
4/24 | Actor-critic methods | ||
Week 13 | GNNs | ||
4/26 | Graph neural networks |
Assignments
Assignment | Out | Due | |
---|---|---|---|
0C | Math Review | Wednesday 1/24 | Friday 2/2 |
0P | Setup | Wednesday 1/24 | Friday 2/2 |
1C | Beras Part 1: Conceptual | Wednesday 1/31 | Friday 2/9 |
1P | Beras Part 1: Programming | Wednesday 1/31 | Wednesday 2/14 |
2C | Beras Part 2: Conceptual | Wednesday 2/14 | Friday 2/23 |
2P | Beras Part 2: Programming | Wednesday 2/14 | Wednesday 2/28 |
3C | CNNs: Conceptual | Wednesday 2/28 | Monday 3/4 |
3P | CNNs: Programming | Wednesday 2/28 | Friday 3/8 |
4C | LMs: Conceptual | Monday 3/11 | Monday 3/18 |
4P | LMs: Programming | Monday 3/11 | Friday 3/22 |
5C | Image Captioning: Conceptual | Monday 4/1 | Monday 4/8 |
5P | Image Captioning: Programming | Wednesday 4/3 | Sunday 4/14 |
6C | Variational Autoencoders: Conceptual | Friday 4/12 | Friday 4/19 |
6P | Variational Autoencoders: Programming | Friday 4/12 | Friday 4/26 |
Final Project
See the handout for full detailsDeliverable | Date/Due |
---|---|
Project Check-in 1 | Week beginning 3/4 |
Project Proposal | Friday 3/15 6:00pm ET |
Project Check-in 2 | Week beginning 4/8 |
Project Check-in 3 | Week beginning 4/22 |
Final Check-in (Optional) | Week beginning 4/29 |
Deep Learning Day | Monday 5/6 & Tuesday 5/7 |
Final Projects Due | Friday 5/10 6:00pm ET |
Labs
Lab | From | Until | |
---|---|---|---|
0 | Introduction to NumPy - No Checkoff | Wednesday 1/24 | Monday 1/29 |
1 | Introduction to Machine Learning | Wednesday 1/31 | Tuesday 2/6 |
2 | Optimizers | Wednesday 2/7 | Tuesday 2/13 |
3 | TensorFlow | Wednesday 2/14 | Friday 2/16 or Tuesday 2/27* |
4 | CNNs | Wednesday 2/21 | Tuesday 2/27 |
5 | Debiasing | Wednesday 3/6 | Tuesday 3/12 |
6 | LIME | Wednesday 3/20 | Tuesday 4/2 or Sunday 4/7** |
7 | Autoencoders | Wednesday 4/3 | Tuesday 4/9 |
8 | GANs | Wednesday 4/10 | Tuesday 4/16 |
9 | Reinforcement Learning | Wednesday 4/17 | Tuesday 4/23 |