Final Project
Overview
The final project is your chance to really customize this learning experience. In contrast to previous projects, you have substantially more autonomy to choose a project topic that is exciting / important / valuable to you. As a result, you will be charting your own course, exercising and practicing your independent learning skills, and potentially working with a partner.
The deliverables for this project will consist of the following.
- A project proposal detailing your learning goals for the project, your project topic, initial steps, MVP, stretch goals, and whether or not you are working with another person.
- A deliverables proposal that fleshes out the deliverables you expect to produce by the end of the project.
- A video summary that presents the main results of your project in a polished manner.
- Your project deliverables (as appropriate to your project and following the plan put forth in your deliverables proposal).
- A final reflection on the project and your contributions to it.
Please see this spreadsheet for due dates and grading percentages
Choosing a Project Topic and Possibly a Partner
On Canvas (see link in the Final Project Module), we gave you a link to the 2019 project posters. We also have some slides we’d like to go through to help introduce the final project.
The day 20 page has a link to a survey you can use to submit your project interest if you need help finding a partner.
Deliverable: Project Proposal
Project Topic
Describe the project you plan to do. As part of this discussion, make sure to explain why you’ve chosen the particular project (why it’s important). This section should be sufficiently detailed (and specific) for us to give you meaningful feedback.
Learning goals
What are your learning goals for this project? How might they relate to the broad categories of implementation, context, and theory? (Just to be clear, we are not suggesting you have to address all of these categories). Identity, in terms of percentages, in each of these three categories (they should add to 100%, because math), where your ideal project would land. We’ve also requested that your project is no more than 70% in one category.
Collaboration / Execution Plan
Discuss how you are going to get the work for this project done. This should include a definition of your best guess as to what the deliverables of your project will entail (apart from the deliverables we discuss here). For each deliverable, you may want to define your MVP (minimum viable product) as well as stretch goals. You should also identify initial steps to take to get off to a strong start (this is an area where we can help you quite a bit if you give us some details). For team-based projects you should include a discussion about how you anticipate communicating and coordinating work with your partner. For example, you could discuss your plans for synchronous versus asynchronous work, layout a specific strategy for managing / tracking tasks, and discuss your planned communication channels.
Rubric:
- 20%: The project topic is well-described and some reasoning for why you want to investigate it is given.
- 20%: Your learning goals for the project are provided and the learning goals are appropriate to the project, specific, and measurable.
- 10%: The proportion of emphasis on the themes of theory, implementation, and context and ethics is included (and explained) and no theme is more than 70% of the total work.
- 20%: Initial steps are provided and appropriate.
- 20%: For each deliverable you have specified an MVP and stretch goals.
- 10%: You have a plan for coordinate work and (if applicable) communicating with your partner, or, you have a plan to make sure you make progress if working alone
Deliverable proposal
Your projects have a lot of variability in their topics and learning goals, and we want to give you the freedom to choose deliverables that are appropriate for your project and best support your learning. We also want to make sure that you feel you are being fairly assessed and that we (your team and the teaching team) have a shared sense of what a “good” output looks like. Therefore, at some point in your project, you will propose what you think appropriate final deliverables will look like for your project, and we will discuss this together (probably via a check-in conversation).
You should be sure to read the Project Deliverables section.
This proposal should reference your learning goals. (Since what you are doing should probably support your learning goals.)
We strongly suggest that you point to some existing source to give an example of what you might model your deliverables on. For example, if you wanted to make a blog entry to give a detailed explanation of the theory behind a new method (convolutions on graphs), you might point to this example and say “I’m thinking about doing something like this: https://distill.pub/2021/understanding-gnns/”. Or, you might be focusing on implementation and context, and you could decide to point back toward your small data mini project as an example. You don’t have to find the perfect deliverable template, but showing us an example might help clarify your own thinking and also lead to a clearer conversation with us.
Video Summary
Prepare a 1-minute video that summarizes your project topic and your primary accomplishments (e.g., what you built, what you learned, etc.). Your video should be professional and polished and accessible to folks who have some familiarity with machine learning but are not experts in the particular area that you investigated. As the project unfolds, we will provide more guidance, examples, and a peer review process to help you make a great video.
We will post a detailed rubric for the video summary soon.
Project Deliverables
We’ll post an assignment on Canvas to allow you to turn in appropriate, project-specific deliverables. Depending on the project you chose, these may take on a variety of forms. Here are some other important guidelines for your project deliverables to keep in mind.
Guideline 1: Any aspect of the project that you would like us to assess should be included in your submission with clear guidance on what is what (e.g., a repository of code, Colab notebooks, a final report). Deliverable should be uploaded instead of linked (e.g., please upload a pdf of a report instead of linking to a google drive); for some deliverables, a link may be more appropriate, so chat with us if this is the case (e.g., you made a huge dataset and can’t upload it to canvas; or your code is written with a large number of function files).
Guideline 2: Your deliverables should properly frame the project and contextualize your work. This means that the deliverable should be stand-alone in the sense that someone who hasn’t been following along with your project for the last several weeks should be able to understand what you did. Additionally, your deliverables must “tell the story” of your project.
Guideline 3: In your individual final reflection you will be able to help us understand both what you got out of this project and what your general approach to the project was. This information does not need to be duplicated in the deliverables here.
Guideline 4: Please attribute to others appropriately (including a link when possible). When writing about context or theory, this means citing your sources (format of this depends on your deliverable). You do not need to write all of your own code from scratch (for many situations, it’s actually a great choice to build off of the code of others, depending on what your learning goals are). However, you should be clear about what you wrote and what was taken directly from other sources. This gets a little fuzzy in code-land, so we’ll try to provide some guidance here. You don’t need to attribute to every stackoverflow page that helped you solve a problem (even if it means you copied a few lines of code to fix something). If you are working with a kaggle dataset and used someone else’s code as a guide for your data loading and analysis, you should be sure to note this.
The two major things that we will assess your final project deliverables on are:
- Quality: Is this a high-quality project and set of deliverable appropriate to a course at this level
- Demonstration of understanding: Do the project deliverables appropriately demonstrate your understanding of the material (in such a way that it is clear to us that you understand what you did)?
The assessment will also include smaller allocation to:
- Appropriate amount of work given number of team members
- Intellectual difficulty of work (challenge given course)
- Deliverable clarity / communication
- Completeness and submission of work agreed upon in Deliverables Proposal
- Ability of work to standalone and tell the story
- Appropriate attribution
- Wow factor (only a bonus, no detriment for not having a wow factor, learning is more important than flashiness, this is just a place for us to use our judgement to give bonus to some notable work if that isn’t effectively captured by our rubric)
Final Event
During the final event, we will celebrate your work with a project expo. We’ll have stations setup for you to show your work to your fellow classmates (and instructors). If you’d like, you can make a poster for this event, but you can also use a laptop to show your final deliverables.
Rubric: attendance and full participation in the final will earn a 100%. If you cannot attend the final event, you must make arrangements to meet with me to go over your final project (similarly to what you would do for folks who come by our station if you were to be there for the final event).
Final Reflection
In this assignment you will reflect on the course and the project. We will give you some specific prompts. You will be assessed on completion and thoughtfulness, but not on if we agree with you or like what you say.
For you, this process of reflection is intended to help you grow and to understand more about yourself.
For us, this reflection will help us have more context about your experience in the project and the course. We acknowledge that assessments of “quality” and “demonstrating understanding” are somewhat subjective, that project work is not always distributed equally, and that people come to the class with different levels of experience. Additionally, this reflection will help us think about the class next time and grow as instructors (we went back and looked at prior final reflections when designing this project).