Welcome to our brand-new course! As this is its first iteration, please be aware that the course is actively being developed. This means the complete list of topics, practice sessions, homework, and projects are still in the works. We'll be incorporating guest lectures and adapting the course dynamically to ensure a rich learning experience. Your patience and feedback during this evolving process are invaluable. We are committed to making this an outstanding educational journey for you!
Course content:
From recognising number plates to detecting highly invasive renal masses, computer vision algorithms have become a key driving force behind many areas vital for modern society, including transportation, medicine, e-commerce, art, and entertainment. Deep neural networks are at the heart of this progress. This course will dive into the core computer vision tasks such as image classification, object detection, and segmentation from the perspective of deep neural networks. We will review the main architectures, training pipelines, and performance metrics used in these tasks. Additionally, we will explore more advanced computer vision topics, such as image generation, attention and transformers, and self-supervised and weakly supervised learning. Students will gain the practical skills necessary to complete a real-life computer vision project.
Course prerequisites
MTAT.03.227 Machine Learning course is highly desirable prerequisite for this course. In general, we expect students to be proficient with Python, the main libraries (such as NumPy, Matplotlib and Pandas).
Course schedule:
- The course starts on February 14, 2024
- The final class is on May 29, 2024 - pizza and feedback!
- Lectures:
- Wednesday 10:15 - 12:00 in Narva mnt 18, room 1007 and in [log into courses to see link] .
- Practice Sessions:
- Wednesday 12:15 - 14:00, Narva mnt 18, room 1007 and (log into courses to see link) .
Course instructors:
- Dmytro (aka Dima) Fishman (dmytro.fishman@ut.ee) - also responsible for the course;
- Joonas Ariva (joonas.ariva@ut.ee);
- Pasha Chizhov (pavel.chizhov@ut.ee);
- Dzvinka Yarish (dzvenymyra-marta.yarish@ut.ee);
Course forum:
Forum and discussions will be held in Slack (Machine Learning and Computer Vision courses @ UT). Please, use the following [log into courses to see link] add yourself to our slack. Being part of course slack is absolutely critical to pass the course because this is where all the course-related communication is held.
Grading and requirements:
The grade is calculated from the total number of points (max 100). The points approximately will be structured as follows:
- Homeworks (60 points);
- Project completed in teams (40 points);
Bonus points
Homeworks will include optional exercises that can be done for bonus points. We expect excellent solutions that go beyond what is asked in the exercise in terms of written presentation to earn these points.
Passing criteria
In order to pass the course, the student must have at least 51 point (grade E) in total and at least attempt the project.
Exam
There will be no exam. The final grade is calculated as explained above.
Attendance
Attendance of both lectures and practice sessions is not compulsory. But we encourage students to participate physically if there is a possibility.
Deadlines
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% of the assignment total (i.e. if homework is 10 points, the penalty is 2 points per additional late day used).
Plagiarism
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. You are allowed to discuss your assignments in groups, but not to copy the exact solutions. If you worked in a group, please list all the other students of your study group at the top of your colab notebook.
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 and PyTorch. Practice sessions, examples and support is given only for these languages. 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.