Instructor
Danna Gurari (first name pronounced “dah-nah”, similar to “Donna”; last name rhymes with Ferrari)
If easier, feel free to just call me Dr. G.
Course Support
Teaching Assistants
– Everley Tseng: Yu-Yun.Tseng@colorado.edu
– Nick Cooper: Nicholas.Cooper-1@colorado.edu
Grader
– Sruthi Sampath Kumar
Syllabus
You can find more details about the course in the syllabus.
Textbooks
The recommended readings for this course are freely available online and are as follows:
– Deep Learning by Ian Goodfellow, Yoshua Bengio, and Aaron Courville
– Deep Learning for NLP and Speech Recognition by Uday Kamath, John Liu, and James Whitaker (can be downloaded for free when connected to the CU network or VPN)
Office Hours
Below are the available time slots for office hours. To attend, please sign-up on the spreadsheet shared in Canvas.
– Mondays: 11am-12pm
– Tuesdays: 8-9am
– Wednesdays: 11am-12pm
– Thursdays: 9:30-11am
– Fridays at 9:30-11am
Acknowledgements
We are fortunate to receive the generous support of a Google Cloud Education Grant to provide us with state-of-the-art computing resources.
Date | Topics (lecture slides hyperlinked) | Assigned Readings (due prior to class) | Assignments (due prior to class and posted on Canvas) |
---|---|---|---|
Wed, Jan 17 | Course Introduction | ||
Mon, Jan 22 | Artificial Neurons | Ch. 1 of Goodfellow book; Ch. 1-2.5 and 4-4.2 of Kamath book | |
Wed, Jan 24 | Feedforward Neural Networks | Ch. 6-6.4 of Goodfellow book | |
Mon, Jan 29 | Neural Network Training: Bottom-Up Perspective | Ch. 4-5.1, 5.9-5.10, and 6.5-6.6 of Goodfellow book; Ch. 4.3-4.42 of Kamath book | Problem Set 1 |
Wed, Jan 31 | Neural Network Training: Top-Down Perspective | Ch. 5.2-5.6 of Goodfellow book | |
Mon, Feb 5 | Neural Network Training: Implementation | Ch. 8-8.6 of Goodfellow book; Ch. 4.4.3 of Kamath book | |
Wed, Feb 7 | Regularization | Ch. 7 of Goodfellow book; Ch. 4.5 of Kamath book | Lab Assignment 1 |
Mon, Feb 12 | Convolutional Neural Networks | Ch. 9-9.5 and 9.10-9.11 of Goodfellow book; (Optional) Ch. 6-6.3 of Kamath book | |
Wed, Feb 14 | Introduction to Computer Vision, Image Classification | Ch. 12.2 of Goodfellow book; Ch. 6.5-6.6 of Kamath book | Problem Set 2 |
Mon, Feb 19 | Image Classification Continued, Representation Learning, and Fine-Tuning (Guest Lecturer: Everley Tseng) | Ch. 12-12.1 of Goodfellow book | |
Wed, Feb 21 | Object Detection | Ch. 9.6-9.7 of Goodfellow book; Faster R-CNN | |
Mon, Feb 26 | Image-to-Image Translation, Semantic Segmentation | Fully Convolutional Networks for Semantic Segmentation | Lab Assignment 2 |
Wed, Feb 28 | Recurrent Neural Networks | Ch. 10 of Goodfellow book; (Optional) Ch. 7.1-7.4 of Kamath book | |
Mon, Mar 4 | Introduction to Natural Language Processing, Neural Word Embeddings | Ch. 12.4 of Goodfellow book; Ch. 5.1-5.5 of Kamath book | Problem Set 3 |
Wed, Mar 6 | Introduction to Attention | Ch. 7.5 and 9-9.2.5 of Kamath book | |
Mon, Mar 11 | Transformers Overview | Ch. 9.2.6-9.2.10 of Kamath book | |
Wed, Mar 13 | Popular Transformers | BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding | Lab Assignment 3 |
Mon, Mar 18 | Foundation Models and Prompts | ||
Wed, Mar 20 | Multimodal Learning | Problem Set 4 | |
Mon, Mar 25 | No Class (Spring Break) | ||
Mon, Mar 27 | No Class (Spring Break) | ||
Mon, Apr 1 | Practical Systems-Level Development Challenges | ||
Wed, Apr 3 | Self-Supervised Learning | ||
Mon, Apr 8 | Model Compression | ||
Wed, Apr 10 | Efficient Learning | Final Project Outline | |
Mon, Apr 15 | Responsible Deep Learning | ||
Wed, Apr 17 | Responsible Deep Learning | ||
Mon, Apr 22 | Deep Learning in Industry (Guest: Dr. Mehrnoosh Sameki, Responsible AI Tools Lead at Microsoft) | ||
Wed, Apr 24 | Deep Learning in Industry (Guest: Dr. Suyog Jain, Research Scientist at Meta) | ||
Mon, Apr 29 | Course Summary | Final Project Presentation | |
Wed, May 1 | Final Project Presentation | Peer Evaluation | |
Tue, May 7 | No Class (Final Exam Week) | Final Project Report |
Overview
The goal of this project is for you to develop your skills in conducting and communicating original work involving deep learning. This is an opportunity for you to enhance your expertise on a topic you feel passionate about, as it will be a self-designed project. The only requirement is that your project includes a deep learning component with analysis.
Your final project will constitute 30% of your total class grade. Your project grade will be calculated as follows:
Assignment | % of Final Project Grade |
---|---|
Project outline | 20% |
Final project presentation | 20% |
Peer evaluation | 10% |
Final project report | 50% |
Project Outline
The project outline should map out the entire project. You are strongly encouraged to work with a partner but can work alone with approval from the teaching assistant.
You will be expected to submit:
- A detailed project outline as a PDF that is 3-4 pages long (excluding references). Only one member of the group is required to submit the PDF, but both group members are welcome to submit the PDF to avoid any potential submission issues.
When choosing your topic, general guidelines are to:
- Choose a problem you have an idea for how to solve
- Choose a problem someone else cares about
- Choose a problem that is not yet solved (review current literature!)
- Choose a problem that you can objectively evaluate by tying it to a task
For the PDF submission, please create this using a latex template from a mainstream conference or journal, such as ECCV. A great latex paper editor is Overleaf. The outline should include each of the following:
- Title for your project
- [Section 1] Introduction
- Paragraph 1: Explain the motivation for your work; e.g., Why anyone should care? What are the desired benefits?
- Paragraph 2: Explain why existing solutions work is inadequate for the motivated problem; e.g., Is there a gap in the literature? Is there a weakness in existing approaches?
- Paragraph 3: Explain what you are proposing, what is new about your idea, and why you believe this solution will be better than previous solutions; e.g., Are you asking a new question, offering a greater understanding of a research problem, establishing a new methodology to solve a problem, building a new software tool, or offering greater understanding about existing methods/tools?
- [Section 2] Related Work
- Identify 2-4 related topics. Then, for each topic, cite 2-4 related papers (must include the bibliography). Finally, for each cluster of related works, give a 1-2 sentence explanation describing the key difference(s) of your proposed idea to the cluster of prior works. One way to format each topic is as follows:
Topic:
Reference 1
Reference 2
Reference 3
Reference 4
Our work is different from these works because…
- Identify 2-4 related topics. Then, for each topic, cite 2-4 related papers (must include the bibliography). Finally, for each cluster of related works, give a 1-2 sentence explanation describing the key difference(s) of your proposed idea to the cluster of prior works. One way to format each topic is as follows:
- [Section 3] Methods – describe the implementation of your proposed idea (e.g., features, algorithm(s), training overview) so that:
- A reader could reproduce your set-up
- A reader could understand why you made your design decisions
- [Section 4] Experiments – describe 1-2 experiments or analyses you plan to conduct in order to demonstrate/validate the target contribution(s) of your work. Your description should be detailed enough so that a reader could reproduce it. Your description should include the following for each experiment:
- Main purpose: 1-3 sentence high level explanation
- Evaluation Metric(s): which ones will you use and why?
- Bibliography: this must be formatted correctly.
Please note that your proposed project is not a binding contract. You will continue to update and improve it as you learn more from your readings and/or feedback.
Final Project Presentation
The final project presentation should be submitted as a zip file which include two parts:
- Text document indicating a URL to a 4 minute recorded video
- PDF document of a poster
Both deliverables should convey the following:
- Motivate the problem your work is designed to solve.
- (Very) briefly explain what other solutions are available and why they are not suitable.
- Demo your idea, approach, and key design decisions.
- Highlight key findings from your experiments and offer insights into what your work has taught us. Focus on finding 1-3 punchlines that explain why your work is exciting/valuable.
Please design your video for an audience who has not taken the class (i.e., lay audience). In other words, your mom, dad, friend, or a potential employer should be able to watch it and understand what you did and why what you did is valuable. You must submit a URL (either public or unlisted) that links to your video in your Canvas submission. To support inclusion of your presentation in our online forum, provide video links to either YouTube or Vimeo. Please verify viewing permissions are set properly before submission or your grade will be penalized.
Your poster should provide a concise framework for you to communicate about your project to a lay audience. It can be as simple as a summary of the content presented in your video in one PDF. If you would like to work from a template, the following are suggested by popular conferences for computer vision material: CVPR, NeurIPS, and ECCV.
On the last day of class, we will gather in an online forum so that students can present their work and learn about other students’ works. We will use the online platform, Gather, where every team’s video and poster will be posted. During this class session, students will be allowed to both stay in their designated spaces to present their poster/videos while answering any questions as well as to visit other students’ designated locations to learn about their work by reviewing their posters and/or videos.
Peer Evaluation
You will evaluate the presentation for one third of the projects in the course at the link shared by the course staff. The evaluations will be done during the day of the last class meeting. The evaluations that you do for other students’ projects will not affect your own grade, except that you will be penalized if you do not complete an evaluation (following the requirements) for each assigned group. You do not need to complete an evaluation for your own project.
Final Project Report
For the final project submission, you should submit a final report that is at least 7 pages long (excluding references). It should include each of the following:
- Title
- Abstract – one paragraph summary of your paper describing the motivation, problem, conducted experiments, and experimental findings
- [Section 1] Introduction (as needed, improve upon the material from your project outline)
- [Section 2] Related Work (as needed, improve upon the material from your project outline; if you have not already, you should remove the bulleted structure you used in the initial proposal and instead have a paragraph form)
- [Section 3] Methods (as needed, improve upon the material from your project outline)
- [Section 4] Experiments
- As needed, improve upon the material from your project outline
- Report the experimental results, what general trends are observed, and insights/speculations into why your results may be turning out the way they are.
- Also include at least one paragraph explaining what questions are not fully answered by your experiments and natural next steps for this direction of research.
- [Section 5] Conclusions
- Summarize in one paragraph what is the main take-away point from your work.
- Add a final paragraph discussing any potential ethical implications of your project (e.g., fairness, accountability, transparency, privacy, social impact, etc).
- [Section 6] Bibliography
This document is a revision of your project outline. Consequently you only need to expand on the content submitted from the project outline.