Studiegids

nl en

Recommender Systems

Vak
2025-2026

Admission requirements

It is recommended to have experience with programming in Python.

Description

AI-driven recommender systems have become integral to everyday decision-making, assisting users with choices from product purchases to movie selections and dining experiences. Powered by advanced AI algorithms and big data machine learning (ML), these systems analyze user behaviors, preferences, and product ratings to suggest personalized items or options.

This course provides an in-depth introduction to recommender systems, a key component in various online services such as e-commerce, social media, and content streaming platforms. Students will explore the theoretical foundations and practical applications of recommender systems, learning about various algorithms, evaluation metrics, and current trends in the field. The course will combine theoretical lectures with hands-on assignments to develop practical skills in designing and implementing recommender systems.

Course objectives

At the end of the course, students are able to:

  • explain basic concepts of recommender systems.

  • describe technical details of recommendation algorithms, including collaborative filtering, content-based filtering, sequential recommendation, session-based recommendation, and deep learning-based recommendation algorithms.

  • implement models for a recommendation task using machine learning algorithms and text data

  • evaluate and report on given data, the developed models and methods

  • investigate and discuss recent trends and challenges about advanced topics in recommender systems, such as large language models for recommendations and trustworthiness in recommender systems.

  • explain and apply different evaluation metrics and benchmarks of recommender systems.

Timetable

The most recent timetable can be found at the Computer Science (MSc) student website.

In MyTimetable, you can find all course and programme schedules, allowing you to create your personal timetable. Activities for which you have enrolled via MyStudyMap will automatically appear in your timetable.

Additionally, you can easily link MyTimetable to a calendar app on your phone, and schedule changes will be automatically updated in your calendar. You can also choose to receive email notifications about schedule changes. You can enable notifications in Settings after logging in.

Questions? Watch the video, read the instructions, or contact the ISSC helpdesk.

Note: Joint Degree students from Leiden/Delft need to combine information from both the Leiden and Delft MyTimetables to see a complete schedule. This video explains how to do it.

Mode of instruction

Lectures, practical assignments, self-study

Assessment method

All practical assignments and the final project are conducted in groups of 1 to 3 students:

  • Three assignments (e.g., implementing classic recommendation algorithms) – 20% each

  • One final group project involving a Kaggle-style competition to design a recommendation algorithm – 40%

To pass the course, the following conditions must be met: (1) The total score of the three assignments must be at least 16.5 out of 30 (i.e., on average 5.5 per assignment). (2) The final group project must receive a grade of 5.5 or higher.
If the combined score of the three assignments is below 16.5, students must complete an individual retake coding project . The retake project will be graded out of 30 points and serves as a replacement for the assignments but does not increase the maximum attainable assignment score beyond 16.5. In other words, even if the retake is passed with a higher performance, the total assignment score will be capped at 16.5. The final group project does not have a retake opportunity.
Each assignment and the final project includes a seven-day grace period after the official deadline. Submissions during the grace period are allowed but will be subject to a score decay policy. Any work not submitted by the end of the grace period will receive a grade of 0. There are no further resit opportunities beyond the retake project for the assignments.

Reading list

The literature will be distributed on Brightspace.

Registration

As a student, you are responsible for enrolling on time through MyStudyMap.

In this short video, you can see step-by-step how to enrol for courses in MyStudyMap.
Extensive information about the operation of MyStudyMap can be found here.

There are two enrolment periods per year:

  • Enrolment for the fall opens in July

  • Enrolment for the spring opens in December

See this page for more information about deadlines and enrolling for courses.

Note:

  • It is mandatory to enrol for all activities of a course that you are going to follow.

  • Your enrolment is only complete when you submit your course planning in the ‘Ready for enrolment’ tab by clicking ‘Send’.

Contact

Lecturer: Dr. Z. Ren

Remarks

Due to limited capacity, external students can only register after consultation with the programme coordinator/study adviser mastercs@liacs.leideuniv.nl.

Software
Starting from the 2024/2025 academic year, the Faculty of Science will use the software distribution platform Academic Software. Through this platform, you can access the software needed for specific courses in your studies. For some software, your laptop must meet certain system requirements, which will be specified with the software. It is important to install the software before the start of the course. More information about the laptop requirements can be found on the student website.