Grading

Component Weight Description
Homework 1 15% Setup the codebase and implement DDPM
Homework 2 15% Implement flow matching and choose your path
Homework 3 20% Implement your chosen baselines on the your chosen path
Homework 4 20% Level up on your path and beat your baselines (and your classmates)
In-Class Quizzes 15% Seven 10-minute quizzes (lowest two will be dropped, 3% each)
Final Presentation 15% Present your final system

Homework Assignments (70% total)

The goal of the assignments in this class is to build a complete, working image generative model system with the functionality of your choice. Think of it as leveling up in a game — we all start by learning the basic controls in the beginner’s village, and as we progress, we get to choose different paths in the skill tree to specialize in. By the end of the training, we’ll all become the seasoned warriors, mages, or assassins we aspire to be!

Therefore, the homework assignments are cumulative: we’ll all start with the same codebase and implement two fundamental algorithms in the first two homeworks — that’s like learning the basics in the beginner’s village. In the later two assignments, you’ll get to choose one of three specialization paths:

  • Fidelity: improve image quality as much as possible.

  • Controllability: make the model controllable by users.

  • Speed: make inference as fast as possible without sacrificing too much quality.

Everyone will use the same dataset, and each path will have a shared evaluation criteria. You should be as creative with your solutions as possible, and to facilitate your creativity, all assignments will be open-internet, open-GitHub, and open-ChatGPT. Feel free to use any pre-trained models, open-sourced code and AI coding assistants, as long as you provide proper citations! However, you should implement your assignments alone and your resulting model must be novel, i.e. you can’t just replicate existing work. To receive full credit, your project should demonstrate originality and should simply, work.

You will have 6 late days in total and each assignment can use up to 2 late days.

In-Class Quizzes (15% total)

There will be seven short (<= 10 minutes) in-class quizzes. The lowest two scores will be dropped, and each quiz counts for 3% of your total grade. There won’t be any trick questions – the quizzes are designed to check your basic understanding of the topics we cover in class.

All quizzes will be closed-book and closed-internet, and you should complete each one on your own. Attendance outside of quizzes and the final presentation week is not mandatory, i.e. feel free to take the quiz, then leave and watch the recording at your own pace if that works better for you.

Final Presentation (15%)

Show off your completed image generative models and check out your classmates’ projects during the final week of class! You’ll need to both present your own work and attend both final presentation sessions to receive full credit.

Detailed logistics will be announced later.

Course Policies

As we have mentioned before, the majority of this class is open-everything and ChatGPT-friendly. Therefore,

You may:

  • Use open-source repositories and code as references
  • Use any available pre-trained models in your development
  • Read research papers, textbooks, and tutorials for inspiration
  • Use generative AI tools (ChatGPT, Cursor, Copilot, etc.) in your assignments
  • Discuss with classmates

You should:

  • Complete each assignment independently
  • Cite all resources and references used (including AI tools)
  • Clearly indicate which code is yours vs. adapted from other humans or AIs

Please don’t:

  • Copy code directly from classmates
  • Claim other humans’ or AIs’ work as your own
  • Plagiarize from any source without attribution

Violations will result in course failure.

This syllabus is subject to change.