Machine LearningIntermediate

Recommender Systems

Collaborative filtering, embeddings and ranking for products and content.

Taught by Bibek Sharma · Data Scientist

What you'll learn

  • Build content-based and neighbourhood collaborative filtering recommenders from interaction data
  • Implement matrix factorisation with stochastic gradient descent and interpret the learned factors
  • Train an implicit-feedback ALS model on clicks and purchases with the implicit library
  • Build and train a two-tower retrieval model in PyTorch and serve it with approximate nearest neighbours
  • Evaluate recommendations offline with precision@k, recall@k and NDCG on a chronological split
  • Design strategies for cold-start users and items, diversity and low-latency serving

About this course

This recommender systems course is for data scientists and engineers who want to build the recommendation engines behind e-commerce, streaming and content platforms. You will learn content-based and collaborative filtering, implement matrix factorisation from a ratings table, handle implicit feedback such as clicks and purchases with alternating least squares, and build a two-tower neural model that embeds users and items for fast retrieval. You will evaluate recommendations properly with precision@k, recall@k and NDCG on a time-based split, and solve the cold-start, diversity and serving problems that separate a notebook prototype from a production system. You should know Python, pandas and basic linear algebra, and have trained a scikit-learn or PyTorch model before. By the end you will have a working retrieval-and-ranking pipeline and the judgement to explain why a recommender behaves the way it does.

Course content

7 lessons
  1. 1How Recommendations Shape ProductsThe recommendation problem, the data it runs on, and the retrieval-then-ranking architecture used everywhere.Preview
  2. 2Content-Based and Collaborative FilteringRecommend from item attributes, then from the behaviour of similar users and items, with cosine similarity.
  3. 3Matrix FactorisationLearn low-dimensional user and item factors that reconstruct the ratings matrix, trained with SGD.
  4. 4Implicit Feedback and ALSModel clicks and purchases with confidence-weighted alternating least squares using the implicit library.
  5. 5Two-Tower Models and Embedding RetrievalTrain a neural retrieval model in PyTorch that embeds users and items, then search with approximate nearest neighbours.
  6. 6Evaluating Recommenders OfflineChronological splits, precision@k, recall@k, NDCG and the biases that make offline numbers mislead.
  7. 7Cold Start, Diversity and ServingHandle new users and items, keep lists fresh and diverse, and design a serving pipeline with feedback logging.