Projects
Practical work is an essential part of learning. We offer you an opportunity to test your newly acquired machine learning skills against real-life problems. Please, read this page carefully and only then ask questions (in Slack, #projects).
Key dates:
- Team formation (team size is 2 - 4 students), until October 7
- Project plan, deadline October 21 (2 points out of 25 points)
- Intermediate presentations November 18 - 20 (5 points out of 25 points)
- Final presentations and team evaluation December 16 - 18 (18 points out of 25 points)
Choosing a project
The first step is to find a project that is aligned with your interests. Below are several options:
From the partners:
Read carefully a list of projects proposed by our partners from this document. When choosing a project from a partner, consider not only a topic and the description of an idea, but also if the data is readily available and if the project's complexity is reasonable and aligns well with your expectations. You take full responsibility of working on this project, so be mindful. Also, when you sign up for a project from the partner, make sure that your team does not exceed the limit on the number of teams that they are willing to supervise (this is indicated in the separate field). If you choose a project from one of the partners, we will connect you with the company/person who has proposed a project so that you can get data and some guidance. Note that extra time and care must be invested in communicating with a project owner and meeting their expectations. Project owners will be invited to the final presentations and given an opportunity to influence the final assessment.
From Kaggle.com:
You can do a project by participating in one of the Kaggle.com competitions (e.g. Machine Unlearning or Predicting AI model runtime) or working on some Kaggle dataset (e.g. solar power generation dataset). Kaggle challenges and the datasets are usually supported by 'kernels' where people document and publish their analysis code. You must declare all kernels that you use in your project and convince instructors (during presentations) that what you have done is different from the existing solutions and constitutes a sufficient amount of work worth 25 points.
Come up with a project yourself:
If neither option above is of interest to you, feel free to propose your own project, for example, you may decide to analyze some publicly available data (from here, here, here, here or here). Make sure there is a very explicit machine learning component in your project - you can consult with instructors if in doubt. If you already have a team, describe your project and the team in the project document. If you don’t have a team, you can advertise your project in Slack in the #ml-projects channel and try to attract team members.
Team formation (deadline: Oct 7)
After you have chosen a project (or came up with it yourself), you need to assemble a team or join the existing one. You can either advertise your project in the #ml-projects channel or comment on someone else's post, letting them know you want to join. Remember that the team size should be between 2 and 4 people. If someone has already formed a team, get their approval before adding your name to the existing team in the project document. By the deadline on Oct 7 at 23:59 - Each team must add their project by specifying the title (this is obligatory deadline!), project type (from partners, kaggle, or your own), project description, and team members into the project document. Follow the template in the beginning and check out our example project. If you plan to work on a project that a partner proposed, please, in the project type section, specify the project identifier (e.g., based on P01 - P01 - Rexplorer solar energy ML development). Also specify which day (Monday, Tuesday, or Wednesday) you want to make your intermediate and final presentation. This would determine which practice session instructors will be grading your presentations.
Project plan: Oct 21 (2 points out of 25 points)
Fill in and submit the project plan by copying the provided project plan template. As said in the file, we recommend taking enough time to get to know the data and the problem domain before writing it up, so plan time for some research before finalizing this. We also recommend reading (or asking ChatGPT) the main principles of managing your team and time, e.g., regular weekly meetings should be a must, dividing clear tasks, checking what is done, and planning every week. These activities also take time and energy but help to keep the project on track. We provide you with a very simple project management spreadsheet that you can copy to yourself (and modify in any way) to keep track of your progress and plans, it would be good to fill this every week (not graded, but we really encourage this). Or you can make your own or use any other tool.
Intermediate presentation: Nov 18 - 20 (5 points out of 25 points)
Find the order of presentations here: https://docs.google.com/spreadsheets/d/1i5W3Q05JJMHl3t7TI3lE0GLXLZGhmq32. General guidelines for intermediate presentations:
- Please, do all attend the presentation, if one person is presenting the rest of the team should support in QA. There is a possibility to present online.
- Make sure to fit your presentation into 5 minutes (with slides), if you go over time, we will penalise your team;
- Add your google slides (and only!) to the corresponding google folder: here for Monday, here for Tuesday and here for Wednesday.
- in the presentation make sure to introduce your team and project owner (if applicable);
- briefly describe the problem you are trying to solve (say why it needs to be solved);
- mention progress you have managed so far;
- tell about your blockers/problems;
- Please, specify who in your team is responsible for which part of the work;
- lastly, say a few words about future steps (what you will accomplish for the final presentation).
Intermediate presentations are compulsory to proceed to the final presentations!
Final presentation: Dec 16 - 18 (15 points out of 25 points)
- Please, do all attend the presentation, if one person is presenting the rest of the team should support in QA. There is a possibility to present online.
- As intermediate presentations, the final presentation will be held offline (+ over Zoom if necessary) with two practice session leaders grading the presentations.
- You have up to 5 minutes to make the final presentation.
- Add your google slides (and only!) to the corresponding google folder: TBA..
- in the presentation, make sure to introduce your team and project owner (if applicable);
- briefly remind us of the problem you are trying to solve (say why it needs to be solved);
- explain what was your approach to the problem (your methods);
- detail results you have obtained and how they match the initial expectations;
- Please specify who in your team is responsible for which part of the work.
- Lastly, describe a few lessons you learned while working on the project.
Add a link to your repository to your presentation. If you have a private repository, give access to the course instructors. The order of teams and the schedule is the same as was for intermediate presentations and available here.
Team evaluation: Dec 16 - 18 (3 points out of 25 points)
After you have finished the project and done the final presentation, you need to fill in a questionnaire about your each of your teammates separately. This will involve questions about the teammate's contribution. Mostly in terms of if the person did what they promised to do, attend meetings, upheld their part of the bargain etc. Your score will be comibed by averaging the scores that your teammates give you, so it can be different for every member of the group.
Grading
Your grade will be composed of the project plan grade (2 points), intermediate presentation (5 points), final presentation (15 points) and the team evaluation (3 points). The presentations will be graded based on roughly the following criteria:
- amount and complexity of work performed (40%),
- quality of presentation (30%),
- degree to which you have completed the initial task (25%),
- being on time (5%).
Project plan and presentation points are assigned to each team member equally unless there is a good reason to believe that some team members have done significantly less or more work than others. Both intermediate and final presentations are to be done during practice sessions (exceptions could be Monday presentations). Each project will be graded by at least two instructors independently, the final grade will be their average. There is no written report for the project. The only thing we will ask you to submit is a link to your project GitHub and presentation (in PDF).
Short summary of what you have to do:
- Choose a project a) from a partner b) from Kaggle.com or c) come up with a project idea yourself.
- By October 7, form a team (2 - 4 people including you) using Slack channel #ml-projects or your contacts in the course and describe your project + team here.
- By October 21, submit your project plan (the template is here).
- Deliver an intermediate presentation on the week of Nov 18 - 20 during a chosen practice session (either on Monday, Tuesday or Wednesday).
- Deliver a final presentation on Dec 18 - 20 during your chosen practice session.
- Fill out the team evaluation questionnaire after you are done with the final presentation.