Topic outline

  • Objectives
    A main component of this course is an individual student project. The student project lets you
    • practice the modelling of a real-life application as a machine learning problem
    • apply basic ML methods discussed in the lectures and assignments
    • practice the writing of a scientific report ("paper")
    • practice the ultimate tool of science: peer review


    You can choose to do the project in pairs or individuallyIf you are doing the project in a pair, one member of your pair needs to register your group members by completing the "Project group registration" questionnaire.


    Project report
    The project report will be completed incrementally in two stages (47 points in total), to provide you with the opportunity to receive feedback about your project and practise giving feedback to others. The report outline describes which parts of the report you are expected to complete for each submission.


    Project deadlines


    Stage 1
    Problem formulation +
    One ML method (10 points)
    Stage 2
    Full report (37 points)
    Submission points
    7 points 26 points
    Peer review points
    3 points 11 points
    Submission opens
    Wed, 14 Sept, 12:00
    Wed, 28 Sept, 12:00
    Submission closes
    Fri, 23 Sept, 23:59
    Sun, 9 Oct, 23:59
    Late submission closes
    Mon, 26 Sept, 23:59
    Mon, 10 Oct, 23:59
    Peer review opens
    Tue, 27 Sept, 00:15
    Tue, 11 Oct, 00:15
    Peer review closes
    Fri, 30 Sept, 23:59
    Fri, 14 Oct, 23:59
    Report page limit (excluding references and appendices) 3 pages  4 pages
    Grading criteria
    Click here
    Last updated 8 Sep
    Click here
    Last updated 6 Sep

    The points achieved during each stage consist of two components

    1. quality of your report, assessed by peer graders (students or course staff)
    2. quality of your review (e.g., gradings are well-justified)

    NOTE! To get maximum points you must complete all the peer evaluations that will be assigned to you. 


    Project support
    The best way to seek help is by attending our weekly project support sessions or asking questions in the Project channel on Slack. There are weekly sessions on Wednesdays at 8:15-10:00 am (starting week 37) that will be held both in person and online where you can come and ask the project TAs questions about the project. You can choose to join the offline sessions in R017/182 Maari B or the online sessions via Zoom at https://aalto.zoom.us/j/67694470428. 

    Project TAs: Sophie Wharrie (sophie.wharrie@aalto.fi), Caglar Hizli (caglar.hizli@aalto.fi), Marko Ikävalko (marko.ikavalko@aalto.fi)


    Adding your code to the report
    You are expected to include your code as an appendix in your stage 1 and 2 submissions. Please choose one from the following two methods.
    1. Attach as an appendix in your report in pdf format
    1. Create a new notebook on https://jupyter.cs.aalto.fi/
    2. Start coding there, or open and paste your code there
    3. Click File -> Download as -> PDF via LaTeX (.pdf)
    4. Export your written report as PDF, join these two PDF files together (first written report, then code)
    2. Github and Kaggle notebook
    Do not choose this option if your identity is obvious based on your username or profile.
    Make your code available on Github or Kaggle notebook, and include the link to the repository/notebook in your report. Make sure that the repository/notebook is public, so that any reviewers can have access to it.

    Scope

    You can freely choose a topic or domain of interest, however, the dataset you choose must have multidimensional input (i.e. more than one feature variable). Your project topic could be related to your favourite hobby (reading, music, sports). You are also welcome to work on a topic related to your current studies, research or even (Bsc, Msc, or Phd) thesis. 

    However, for the ML methods that you are going to use to solve the problem, you must choose from the list of ML methods here. This restriction of ML methods is meant to support the peer-grading process (peer graders should have a sufficient level of expertise).


    Peer-Grading
    • You must justify your grading for each grading criterion. Unjustified peer gradings will be penalized. 
    • You are welcome to contact course staff if you consider the received peer grading to be inappropriate. 

    Tips for getting started
    • Read through what is required for stages 1 and 2 of the project, as you will be expected to use the same project for both stages
    • Select a dataset (see ideas below) and check that it is suitable for machine learning - e.g. see this checklist
    • Familiarise yourself with each step of a machine learning project - e.g. see this Jupyter notebook for how to structure an end-to-end machine learning project
    • Once you've selected a dataset, start by exploring the data, cleaning the data, and creating features for your chosen modeling methods - e.g. see this guide to creating features for your model
    • If you have any questions about any step of a machine learning project, ask in the course Slack (Project channel) or at the weekly project sessions

    Sources of data
    Here are a few places to start if you are unsure about where to find data. However, you are encouraged to use any data that you can get your hands on through legitimate means. If you are collecting data for a research/thesis, we encourage you to use it for this project.

    Please let us know if you have further suggestions on other great sources of data!

    Student reports from the Spring 2022 course
    We have compiled a selection of projects submitted during the Spring 2022 course that you can view as examples for how to format a project report. These projects have been selected to showcase the variety of projects that are possible!

    View student projects


    Originality

      Other resources

      Tips for Good Writing: click me

      Tips for Good Reviewing: reviewer guide of ICLR conference; criticizing with kindness; mistakes of reviewers; last-minute reviewing advice