Course Materials
Content of the course is available online: lecture slides, labs assignments, semestral work.
Last year's slides and labs are also available.
Course Language
The lectures (Thursday from 15:40) will be taught in English as long as there is at least one non-Czech-speaking student present. There are two parallel labs sessions (Tuesday from 14:00) altering in odd and even weeks (with minor adjustments due to holidays). One of the labs (starting on 4.3.2025) is taught in English, the other (starting on 25.2.2025) in Czech.
Course Organization
The preliminary course roadmap is as follows (note this may slightly change over the semmester):
Lectures
- Basics
- User Feedback
- (Slightly) Advanced RS Concepts
- 10.04. - Hybrid RS,
part2,
part3
- 17.04. - Hybrid RS II., Visualize user preferences, linear monotone preference model
- 24.04. - Visualize user preferences, explanations (cancelled due to lecturer's illness)
- 15.05. - Deep Learning in RS, new challenges & recent trends (context, explanations, biases, fairness,...)
- 22.05. - Invited lecture, RecSys@Seznam.cz (Radek Tomšů, Michal Řehoř, and Štěpán Škrob): Practical aspects of recommender systems from research, development and product perspectives.
Labs
-
Labs 1 (25.2. / 4.3. 2025): Code your first recommender system (assignment). Have a working Python 3.x instance with Jupyter notebook ready. If you never heared about NumPy, SciPy, or Pandas, have a look, e.g., here.
-
Labs 2 (11.3. / 18.3. 2025): Using simple RS frameworks: LensKit (assignment).
-
Labs 3: Deploy user studies to evaluate RS (assignment). Have EasyStudy installed and download required datasets before your labs (or face our sluggish WiFi:-).
-
Labs 4: Evaluate user study results (assignment).
-
Labs 5: Visualize user preferences in linear monotone preference model (assignment). Bring ruler, triangular ruler, and at least two different-colored pens/pencils (ideally red and green). Clever substitutes welcomed:-)
-
Labs 6: Design your own Recommender System Solution. Note that dates for this last lab are 6.5.2025 for NSWI166x02 and 20.5.2025 for NSWI166x01.
Grading & Requirements
Exams
Oral exams with written preparation: 4-5 questions from the theory covered during lectures; being able to apply theoretical findings in practical settings.
Credits
The following is required to obtain the credits:
- Active reading: four tasks (each time you can select one of 2-3 papers); write a short report on selected papers (strict deadlines). At least two accepted reports needed to pass, additional/exceptional reports = bonification for exams
- Participation during labs: completion of the labs assignments to gain "active participation" points. At least three points needed to pass, additional/exceptional results = bonification for exams. Expect that 2-3 assignments might have to be finalized at home.
- Semestral work: Details. Create a user study comparing several recommendation variants and evaluate its results.
Note that in case you cannot attend a lab, you can still complete the assignment at home. There will be options to upload your completed assignments via Grupik module of SIS.
Alternative pass: as a (probably more difficult) alternative to the requirements above, we can discuss an individual, more extensive, research project (contact me if interested).