This course aims to give students a very clear intuition behind the most essential Machine Learning methods. Therefore, we will practice implementing some of the key algorithms (like decision trees, backprop, bagging tree) in machine learning, so that it can be done if the need arises. We will discuss and gain practical experience with `sklearn` library. We will build an understanding as to when some algorithms should be preferred to other algorithms.
As a prerequisite to taking this course, the students are expected to be able to program in Python and be familiar with NumPy and Pandas Python libraries. LTAT.03.001 Programming provides sufficient background. It is also worth reviewing Probability, Calculus, and Linear Algebra.
- The course starts on September 6, 2021
- Monday 10:15 - 12:00, only online (via [log into courses to see link] )
- Practice Sessions:
- Group 1: Monday 12:15 - 14:00, Narva mnt 18, room 1019 and (log into courses to see link) (Dmytro)
- Group 2: Monday 12:15 - 14:00, Narva mnt 18, room 2034 and Zoom (log into courses to see link) (Tetiana Rabiichuk)
- Group 3: Tuesday 16:15 - 18:00, Narva mnt 18, room 2034 and Zoom (log into courses to see link) (Tetiana Shtym)
- Group 4: Tuesday 16:15 - 18:00, Narva mnt 18, room 2045 and Zoom (log into courses to see link) (Mohammed Ali)
- Group 5: Wednesday 16:15 - 18:00, Narva mnt 18, room 2034 and Zoom (log into courses to see link) (Victor)
- Group 6: Wednesday 16:15 - 18:00, Narva mnt 18, room 1022 and Zoom (log into courses to see link) (Taavi Luik)
- Dmytro Fishman (email@example.com)
- Teaching Assistants:
- Mohammed Ali (firstname.lastname@example.org)
- Victor Pinheiro (email@example.com)
- Tetiana Shtym (firstname.lastname@example.org)
- Tetiana Rabiichuk (email@example.com)
- Taavi Luik (firstname.lastname@example.org)
Forum and discussions will be held in Campuswire. All the registered students will be enrolled by the instructors (you need to confirm your enrollment) or you can add yourself to the Campuswire yourself using the following link (log into courses to see link) . If you encounter any problems, then please let us know!
Grading and requirements:
The grade is calculated from the total number of points (max 100). The points can be earned as follows:
- Homeworks (60 points): there will be 6 homeworks, each worth 10 points;
- Paper summary (15 points);
- Project completed in teams (25 points);
In order to pass the course, the student must have at least 51 point (grade E) in total and get at least 50% from regular exercises and project (30 homeworks points from the regular exercises and 12 points from the project).
There will be no exam. The final grade is calculated as explained above.
Attendance of both lectures and practice sessions is not compulsory. But we encourage students to participate physically if there is a possibility. Please, note the number of students present in a room must not exceed 30, so, please, do not voluntarily attend to other practice sessions, which you are not registered to.
All deadlines in the course, are strict deadlines. Students have 6 late days in total per semester. Late days will be automatically taken away once the student submits an assignment after the deadline. Generally, 1 minute after the deadline means 1 late day. After the late days are exhausted, each additional late day is -20% from the assignment total.
All homeworks are checked for plagiarism. If caught first time, we will subtract points for the exercise(s) from the homework total. If caught the second time, formal notification to the Dean's office will be filed.
The course performance will be published using pseudonyms. You can find your pseudonym here.
Course programming language:
Homeworks are required to be solved using Python version 3. Practice sessions, examples and support is given only for that language. We will be using Google Colab during the practice sessions, so it is recommended to get familiar with Colab and also make sure you have Google account.