How do platforms decide which movies, products, or other items to recommend? This course studies how recommender systems use user feedback and item information to predict preferences and rank candidates. We cover content-based methods, collaborative filtering, matrix factorization, and neural recommender systems, with hands-on implementation and evaluation in Python.

In the AI era, mathematical and coding foundations help us understand what a model assumes, inspect generated code, and judge whether results are trustworthy. The course helps students build a knowledge landscape connecting mathematical concepts, modeling methods, implementation, and evaluation.

👌 What you’ll learn:

  • Connect linear algebra and statistics to the assumptions and behavior of recommender models.
  • Implement and debug baseline methods, matrix factorization, and neural recommender systems in Python.
  • Use training, validation, and test data appropriately to compare models and interpret their results.
  • Explain and verify code, including code developed with AI assistance, and identify gaps in your own understanding.

🏗️ Prerequisites:

  • Calculus & Linear Algebra: Inner products, matrix-vector products, linear regression (OLS).
  • Basic Statistics: Fundamentals of distributions, probabilities, mean, standard deviation, and other core concepts.
  • Python: Familiarity with basic syntax, arrays, and data tables. The first lecture includes a refresher on Python, NumPy, and pandas.
  • (Recommended) An introductory machine learning course or equivalent self-study.

  • 📅 Semester: Fall 2026
  • ⏲️ Lectures: Th 12:30PM - 3:15PM
  • 🎒 Location: Mong Man Wai Bldg 710
  • 💻 HW Submission: BlackBoard
  • ⌨️ Colab: Open the course notebook. For a local copy, use File → Download → Download .ipynb in Colab.

Homepage GitHub Open In Colab

All students welcome: We are happy to have auditors in our lectures.


📋 Reference Textbooks

The following textbooks serve as relevant resources, though none perfectly align with the scope and content of our course.