nl en

Machine Learning


Admission requirements

Linear algebra
Programming with Python
Statistics for computer scientists (or taking it in parallel)


Machine learning as a subfield of artificial intelligence (AI) is the science of the design of algorithms that can learn through experience acquired from data, without being explicitly programmed. This course provides an in depth overview of various topic in machine learning and provides knowledge on the core concepts needed by AI scientists who are not only going to apply machine leanring algorithms but also design new algorithms themselves. Throughout the course, students will get familiar with the fundamental concepts in the design of effective machine learning algorithms, and different classes of machine learning models. Different groups of machine learning algorithms and their innerworkings are discussed. The course also focuses on evalution of algorithms by providing an overview of various evaluation metric and descriving how to perform statistical analysis of the resutls. The students further gain the practical skills needed to apply machine learning algorithms to new problems.

Course objectives

After this course, the students are able to:

  • Characterise and differentiate between different classes of machine learning models (e.g., geometric, probabilistic);

  • Characterise and differentiate between different classes of machine learning tasks (e.g., classification, clustering, regression);

  • Describe how different machine learning algorithms work and are implemented;

  • Evaluate and assess the performance of different machine learning algorithms;

  • Formulate new machine learning problems and apply available algorithms to solve them.


You will find the timetables for all courses and degree programmes of Leiden University in the tool MyTimetable (login). Any teaching activities that you have sucessfully registered for in MyStudyMap will automatically be displayed in MyTimeTable. Any timetables that you add manually, will be saved and automatically displayed the next time you sign in.

MyTimetable allows you to integrate your timetable with your calendar apps such as Outlook, Google Calendar, Apple Calendar and other calendar apps on your smartphone. Any timetable changes will be automatically synced with your calendar. If you wish, you can also receive an email notification of the change. You can turn notifications on in ‘Settings’ (after login).

For more information, watch the video or go the the 'help-page' in MyTimetable. Please note: Joint Degree students Leiden/Delft have to merge their two different timetables into one. This video explains how to do this.

Mode of instruction

Not applicable.

Assessment method

  • Written examination with closed questions (60%)

  • Assignments (40%)

The final grade for the course is established by determining the weighted average. However, the grade of the exam should be above the passing margin (5.5). There is an opportunity to retake the exam, but not the assignments.

The teacher will inform the students how the inspection of and follow-up discussion of the exams will take place.

Reading list

Flach, Peter., Machine learning: the art and science of algorithms that make sense of data, Cambridge University Press, 2012.


From the academic year 2022-2023 on every student has to register for courses with the new enrollment tool MyStudymap. There are two registration periods per year: registration for the fall semester opens in July and registration for the spring semester opens in December. Please see this page for more information.

Please note that it is compulsory to both preregister and confirm your participation for every exam and retake. Not being registered for a course means that you are not allowed to participate in the final exam of the course. Confirming your exam participation is possible until ten days before the exam.
Extensive FAQ on MyStudymap can be found here.


Education coordinator LIACS bachelors


Not applicable.