Class time and Location: Tuesdays 11:45 AM - 1:25 PM and Thursdays 2:50 PM - 4:30 PM, Dodge Hall 173
The class meetings are in-person only.
The class is very participatory, with groups of students presenting and discussing papers on most days. On the first day of class, please fill out https://bit.ly/cs7150-roles25 to sign up.
The class will be 100% in-person.
Sign up for piazza here: https://piazza.com/northeastern/spring2025/cs715041859202530/home
Professor: David Bau davidbau@northeastern.edu
Professor Office Hours: right before class 2pm Thursdays at the lecture hall.
TAs: Vatika Tewari tewari.v@northeastern.edu
TA help hours:
To be posted.
In this course we will learn the principles and practice of deep learning methods and research.
We will cover the capabilities of deep networks, the main methods for training them effectively, and the common architectures and techniques for using a deep network to process and produce images and natural language text. In addition to getting experience using these methods, we will discuss seminal research papers, overview some of the main questions and debates that have emerged in deep learning research, and explore some current research topics. There will be a final project where you work with a partner to choose, investigate, and write a blog exploration of a deep learning research topic centered on a paper you choose.
We are planning 160 points total of course work.
Class participation: 40 points. In-class paper presentations and discussion.
Semester Overview: Throughout the semester, 15 lectures will be dedicated to discussing each one of the 15 selected research papers by a panel of 12 students that will lead the discussion with follow up questions from the audience (or questioners). These papers & their respective dates are pre-scheduled & can be seen in timeline schedule of the course structure.
Points Breakdown & To Dos (40 Points):
Roles (several students for each paper):
Format & Preparation:
- Duration: Each paper discussion will last 45 minutes
- Roles & Sign-up: Students are required to fill the role-playing sign-up form on Canvas before January 9. Here, you can indicate your role preference for each paper. While we aim to honor your preferences, please understand that adjustments might be necessary.
- Slide Deck & Materials Submission: All participants of the panel, should prepare and submit the required materials, one night before the scheduled discussion. This includes:
- Google Slides presentation only for those in designated roles (Go to the shared drive and read through instructions in 'INSTRUCTIONS: For reference purposes' File, it is detailed for every role, what particularly you have to do, where exactly and what files you have to upload)
- A question about the paper for the broader class (Nightly Questions through canvas)
- Acknowledgment of the role you're playing for that paper (If you have a role for a particular paper, within the same nightly question assignment, you can select role from the options acknowledging which role will you play for that paper)
Class Procedure (during presentation):
Homework: 40 points. Programming and calculation exercises.
These will be jupyter notebooks to be worked through by students individually, due to be submitted online every two weeks at 11AM before Monday class. Late homework submissions will be accepted but will lose points per day late, no points after a week. 10 points per homework.
Midterm: 40 points. A written exam about foundational methods. Closed-book.
Final Project: 40 points. A blog/webpage report and presentation about a research paper that you choose. Done by groups of 2 students (3 with permission). Similar to the paper-reading roleplaying exercise, except that you choose the papers, you play all the roles, and instead of putting together slides, you will assemble an illustrated blog with all your analysis. Optionally, your project may include a programming demonstration or a research extension of the concepts in the paper that you choose.
Late homework submission will be accepted. Every student has a bank of 3 free late days that can be applied without asking permission (e.g., 2 days on one homework, 1 day on another homework). Beyond the banked 3 late days, automatically 20% of the points will be penalized for each day late.
Collaboration is allowed, but you should think about the problems yourself before discussing them with others. When you do seek out help, we strongly advise you to find a fellow classmate to talk with and work together rather than copying an answer. You will all learn much more by thinking collaboratively and explaining ideas to one another. When you collaborate, you must acknowledge your collaborators by listing them explicitly.
*Starred items may be on the midterm exam.
The historical and intellectual evolution of deep network methods:
How to use deep network tools (pytorch)
How to train a model deeper than a few layers
How to improve generalization
Learning to Learn
Doing research
* Starred concepts may be on the midterm.
|
How to design effective objectives
How to input images
How to output images
How to understand and visualize a convolutional network
How to input and output text
How to understand and visualize a language model
What makes a good representation
|
(Note: we are sure to alter this schedule, likely to omit some topics or discuss others.)
Date | Note | Handout | Due | Topic | Activity | Reading |
Tuesday, January 7, 2025 |
HW1, reading signups
|
History: neurons, perceptrons, universiality, backprop. | david | https://papers.baulab.info/ | ||
Thursday, January 9, 2025 | Signups | Tensors, GPUs, Autograd, Optimizers, Modules, DataLoader | How-to-read-pytorch | Rumelhart 1986 (Backpropagation) | ||
Tuesday, January 14, 2025 | Classification and backpropagation | david | Bottou 1990 (Modules) | |||
Thursday, January 16, 2025 | Optimization and deep networks | presentation | Kingma 2015 (ADAM) | |||
Tuesday, January 21, 2025 | HW2 | HW1 | Initialization | presentation | Glorot 2010 (initialization) | |
Thursday, January 23, 2025 | Last drop day | Equivariances and convolutions | david | Lecun 1989 (LeNet) | ||
Tuesday, January 28, 2025 | Achieving Depth: residual nets, batchnorm | presentation | He 2016 (ResNet) | |||
Thursday, January 30, 2025 | David in DC | [special help day] (no lecture) | ||||
Tuesday, February 4, 2025 | HW3, project signup | HW2 | Neural Language modeling | david | Elman 1990 (RNNs) | |
Thursday, February 6, 2025 | Recurrent neural networks and gating | presentation | Cho 2014 (GRUs) | |||
Tuesday, February 11, 2025 | Transformers | presentation | Vaswani 2017 (Transformers) | |||
Thursday, February 13, 2025 | Multimodal representation learning: CLIP | presentation | Radford 2021 (CLIP) | |||
Tuesday, February 18, 2025 | HW4 | HW3 | Midterm review | david | ||
Thursday, February 20, 2025 | David in DC | Midterm | Midterm exam | midterm | ||
Tuesday, February 25, 2025 | Image generation | david | ||||
Thursday, February 27, 2025 | Project titles and teams due | Adversarial generation: GANs | presentation | Goodfellow 2014 (GAN) | ||
Tuesday, March 4, 2025 | Spring break | |||||
Thursday, March 6, 2025 | Spring break | |||||
Tuesday, March 11, 2025 | Variational Autoencoders: VAEs | presentation | Kingma 2013 (VAE) | |||
Thursday, March 13, 2025 | HW4 | Normalizing Flows | presentation | Dinh 2017 (Real NVP) | ||
Tuesday, March 18, 2025 | Diffusion Models | presentation | Sohl-Dickstein 2015 (Diffusion) | |||
Thursday, March 20, 2025 | Large language models | presentation | Brown 2020 (GPT-3) | |||
Tuesday, March 25, 2025 | RLHF and DPO | presentation | Ouyang 2022 (RLHF) | |||
Thursday, March 27, 2025 | How to do research | david | ||||
Tuesday, April 1, 2025 | Project abstracts due | Mechanistic interpretability | david | Meng 2022 (ROME) | ||
Thursday, April 3, 2025 | Mamba | guest | Sen Sharma 2024 (Mamba) | |||
Tuesday, April 8, 2025 | Project reviews due | In-context learning | guest | Todd 2024 (In-context Learning) | ||
Thursday, April 10, 2025 | Model editing | guest | Gandikota 2024 (Unlearning) | |||
Tuesday, April 15, 2025 | Poster day | final projects | ||||
Monday, April 21, 2025 | final project report due (midnight) | final projects |