Course Project Guidelines
Course Project Guidelines
NOTE: Most of the text below is a modified version of Stanford’s CS231n class project description
Collaboration
You can work in teams of up to 3 people.
Honor Code
You may consult any papers, books, online references, or publicly available implementations for ideas and code that you may want to incorporate into your strategy or algorithm, so long as you clearly cite your sources in your code and your writeup. However, under no circumstances may you look at another group’s code or incorporate their code into your project.
Project Proposal
If your project page quotes the requirement for a proposal, the project proposal should be one paragraph (200-400 words). Your project proposal should describe:
What is the problem that you will be investigating? Why is it interesting?
What reading will you examine to provide context and background?
What data will you use? If you are collecting new data, how will you do it?
What method or algorithm are you proposing? If there are existing implementations, will you use them and how? How do you plan to improve or modify such implementations? You don’t have to have an exact answer at this point, but you should have a general sense of how you will approach the problem you are working on.
How will you evaluate your results? Qualitatively, what kind of results do you expect (e.g. plots or figures)? Quantitatively, what kind of analysis will you use to evaluate and/or compare your results (e.g. what performance metrics or statistical tests)?
Submission: Please submit your proposal as a Github URL. Only one person on your team should submit. Please have this person add the rest of your team as collaborators in Github as a “Group Submission”.
Your proposal should be (conditionally) approved before you can start working on this project. Incorporate all requested changes to your proposal. You will be receiving the required changes as a Github Pull Request.
Project Report
The following is a suggested structure for your report, as well as the rubric that we will follow when evaluating reports.
Title, Author(s)
Abstract: Briefly describe your problem, approach, and key results. Should be no more than 300 words.
Introduction (10%): Describe the problem you are working on, why it’s important, and an overview of your results
Related Work (10%): Discuss published work that relates to your project. How is your approach similar or different from others?
Data (10%): Describe the data you are working with for your project. What type of data is it? Where did it come from? How much data are you working with? Did you have to do any preprocessing, filtering, or other special treatment to use this data in your project?
Methods (30%): Discuss your approach for solving the problems that you set up in the introduction. Why is your approach the right thing to do? Did you consider alternative approaches? You should demonstrate that you have applied ideas and skills built up during the quarter to tackling your problem of choice. It may be helpful to include figures, diagrams, or tables to describe your method or compare it with other methods.
Experiments (30%): Discuss the experiments that you performed to demonstrate that your approach solves the problem. The exact experiments will vary depending on the project, but you might compare with previously published methods, perform an ablation study to determine the impact of various components of your system, experiment with different hyperparameters or architectural choices, use visualization techniques to gain insight into how your model works, discuss common failure modes of your model, etc. You should include graphs, tables, or other figures to illustrate your experimental results.
Conclusion (5%) Summarize your key results - what have you learned? Suggest ideas for future extensions or new applications of your ideas.
Is your paper clearly written and nicely formatted? Writing / Formatting (5%)
Supplementary Material, not counted toward your 6-8 page limit and submitted as a separate file.
Your supplementary material might include:
- Cool videos, interactive visualizations, demos, etc.
Examples of things to not put in your supplementary material:
- The entire PyTorch/TensorFlow Github source code.
- Any code that is larger than 10 MB.
- Model checkpoints.
Submission: You will submit your final report as a markdown + img files under /docs in your Github repo, obviously together with your code and a README file that describes how anyone can run it to replicate your results. It is highly advised to author a Medium article about your work.