Introduction to Recommender Systems
Recommender systems have fascinated me for some time. Even before going into Machine Learning, I've always found it creepy on how accurately platforms like YouTube, Tiktok or even Amazon can know exactly what I want. The topic however can be pretty difficult to get into. There isn't just one system or one technique, but there are a lot of different types, often working together to finally produce a result. While I was certainly confused when I started, in this short series I will attempt to remove confusion from this topic and try to display the theory very clearly and easily. Shortly said, I attempt with this series to give you, what I wish I had in the beginning.
So much Data
Today, everywhere we look we have so much data. This can be problematic when searching for things. Just Imagine trying to search through YouTube, without an algorithm trying to help you.
Broadly speaking, there are three interaction paradigms for accessing large collections:
- Retrieval
- The user issues a clear query ("find me X") and the system returns matching items.
- Think Google Search: you know what you're looking for and need help sifting through billions of pages
- Browsing
- The system presents a curated catalogue or hierarchy of items, and you explore at will.
- Think news sites or category pages: you navigate a defined list that someone else assembled.
- Recommendation
- The system proactively surfaces items without an explicit query—guided by your past behavior or inferred taste.
- Think TikTok or Amazon's "You might like…" feed: there's no end to the personalized stream.
What differentiates these are the clear distinct intentions of the user:
- Retrieval assumes you know what you want.
- Browsing assumes you just want to explore a bit, in a specific field.
- Recommendation assumes you don't know exactly what you want and just want to discover.
Systems which try to do this recommendation is what we call Recommender systems.
Shortly put, recommender systems are algorithms that suggest items you might enjoy, without you having to search for something directly.
Types of recommender systems
There are so many different types of recommender systems and ways to distinguish them, that it's quite frankly really confusing.
I will try to simplify it for you. The best way to do this is to really only have 2 different types of recommender systems: Content-based (CB) and Collaborative Filtering (CF).
You can think of them like the difference between a dictator and a democracy.
Content-based systems try to predict what you like based on the itmes themselves and your history or profile. They are like a librarien, giving you exactly what you want. They don't care about what others say as their opinon is the one that matters.
Collaborative filtering on the other hand, tries to predict to you what you like, based on what others liked. This is like a book club, voting for what books they liked on the other hand.
This is said very easily, and of course there is more nuance to it, but in general, these are the two approached you can think of that exist.
What we will cover
By the end of this series, you should know all about the following:
- Content-based Filtering
- Collaborative filtering
- Hybrid approaches
- Adding more context to these systems
- Evaluating Recommendations
And maybe some bonuses afterwards too.