Building a Multi-Stage Recommendation System (Part 1.1)

Understanding candidate generation and the two-tower model

Adrien Biarnes
15 min readAug 13, 2022


In this blog post, we will first discover why multi-step recommendation should be the go-to strategy for companies with large item catalogs. Then we will move on to describe one of the famous latest architecture for candidate generation, namely the two tower architecture. In the subsequent post, we will also implement this model and apply it using the H&M Kaggle competition dataset.

Source: Youtube 2016 paper

Recommendation systems are one of the hottest areas in tech and more specifically in machine learning right now. And this is for the very reason that it is one of the most profitable and applicable areas of machine learning business-wise. They can be used in a huge variety of contexts for almost any business selling goods or services to clients by enabling them to deal with information overload.

Why multi-stage recommendation and not single-stage?

TL;DR: To me, the most important reasons to go from single stage recommender to multi-stage one are the following:

  • Potential to recommend a much larger corpus of items
  • Under a fixed computational budget one can hope for a much…