The final research project is aimed to give you an idea of what a deep learning research project entails, and hopefully, get you excited about doing research in this field. It requires critical thinking that you will develop by learning the material and doing assignments during the semester.
At the end of the semester, you will share your work with your peers through presentations and writing a report. This type of project-based exercise will help you in developing skills to perform independent research like:
Please read this handout in its entirety. It contains all the information, forms, and deadlines you'll need to know about!
Students will complete final projects in groups of 2-4 people. These projects are an opportunity for you to apply the knowledge you’ve gained in class to a topic or area of interest. Your group will create its own novel project. The time commitment per student should be approximately equal regardless of the group size, thus larger groups should justify their group size by taking on more ambitious projects.
You will be graded on completion of goals, punctuality with which you meet your deadlines, and professionalism in reports and presentations.
We do not expect you to build a magical model that solves all of the world’s problems. What we do expect is concentrated and well thought out effort into solving a problem: Rather than reporting a single number using a certain metric and showing your model just “works”, we expect you to perform quantitative ablation studies (e.g. show us what architectural changes, hyper parameters, and regularization techniques you tried and what are helpful, explain why you think so) to analyze your models, along with qualitative evaluation (e.g. visualizations) to illustrate what the model learns and how it might fail. You might want to check Prof. Bill Freeman’s awesome talk on “How to Write a Good CVPR Paper” (video, slides). Of course, we do not expect you to finish a project at “top AI conference” level within a semester, but the general high-level principles are helpful.
Do not be afraid of negative results! Some of the most interesting and well-received presentations from past years were ones that failed to produce “successful” results!
NO Late Days may be used for the final submission date, but if you absolutely need an extra day or two for earlier checkpoints, talk to your TA; they will approve this at their own discretion.
The project is “open-ended,” meaning it’s open to interpretation. Above all, you should do a project that you love! We expect your team to apply what you have learned from the course to solve a new problem, concretely:
You can do this using whatever deep learning methods you can find that get the job done. Ideally, the project would involve more than one major topic we covered in the class (CNNs, RNNs or Transformers, Generative models, Fairness and model interpretability, and Reinforcement Learning). You are encouraged to implement your project “from scratch”, but can also use open-source deep learning projects as a component in your framework. Example use of open-source projects that are permitted:
Example uses that are not permitted:
In short, by "new" we focus on the creativity you demonstrate in the project (e.g. you don't need to artificially create a problem that nobody worked on before) and the amount of work required to realize your idea (namely, your model design doesn't need to be "novel" for its own sake. Implementing an existing technique that is not covered in the lectures, but is natural to be applied for your problem, and brings valuable insights, is greatly appreciated.)
Please cite all the open-source frameworks you used in the final report, and check with your mentor TA if they are okay with your proposal.
You can check out the projects in the previous Deep Learning Day (2021, 2022, 2023), CSCI 2952-N or Stanford CS231n to draw some inspiration, but your project needs to differentiate from previous projects in meaningful ways. Please note that some of the Deep Learning Day projects may not meet our required scope, since they were for 1470 students.
We recommend a project that can run on your desktop or department machines. Please check with the course staff if your project proposal might require excessive compute resources than we can provide. Remember that you will not be judged for the absolute performance (e.g. you get the best numbers in the world on some benchmark), but the creativity of ideas, quality of code and documents, as well as thoroughness of the ablation experiments.
If you really want to take on a very ambitious project that requires several GPUs with large memories, please ensure that you have obtained the computational resources before you start with the project. Example resources:
As you will experience in mini project #2, it becomes increasingly easy to utilize powerful deep learning models in your project by importing them from huggingface or calling their public APIs. You may use these models in your project after consulting with the instructors (e.g. on Ed or via email). Since these models operate as big black boxes with natural language as interface, the instructors would like to ensure that your proposed project still validates your knowledge on deep learning, as opposed to being a software engineering oriented project.
Due: Thursday October 24th, 2024 6PM EST
With your team members, decide a team name, and submit your final project idea by filling out the form here! Only one person from your group needs to submit the form for everyone. If you are trying to solve something new, please describe the problem and your plan of action. We will approve all that are appropriate.
The purpose of having your project description is to provide a quick feedback on your project scope and its feasibility. You may (ideally after consulting the TAs or the instructors) change the project topic, untill the project check-in.
Please note that if you do not submit your proposals by the deadline, you will receive a 5% deduction on grade for this project. This deadline cannot be extended and is not a valid use of late days except for in extenuating circumstances.
Due: Thursday November 26th, 2024
You will write a one-page reflection on your progress so far. We expect you are wrapping up the implementation and performing final experiments. If you have questions, please contact the course staff, or post questions on Ed. You'll submit this reflection on gradescope.
For this checkin, we also require you to write up a reflection including the following:
Date: Tuesday Decemeber 10th, 2024
This is a chance to show off your teams awesome project and see all of the great work your peers have done! More logistical details about the event and participation will be shared as we get closer to the event.
Students should prepare a 5-minute presentations describing their project using slides.
Your slides must contain the following information:
Due: Thursday December 12th, 2024 6PM EST
You will need three final deliverables submitted through gradescope (note this is a hard deadline):
Along with your Devpost submission, provide a final write up/reflection of the final project.
Please be sure to include:
Your Final Report should contain the following:
A project submission is considered complete if the written report, presentation, AND code are all submitted. An incomplete project receives zero grade. A complete project will be graded as:
(Special permission might be granted by the instructor to students who have to attend the deep learning day remotely, without being penalized for the participation grade.)