Recommendation Systems: How Do They Work
Tags: machinelearning, beginnerdevelopers
Published: 2020-12-29 02:33:11

---
title: Recommendation Systems: How Do They Work
published: true
date: 2020-10-20 02:45:17 UTC
tags: MachineLearning,BeginnerDevelopers
canonical_url: https://lo-victoria.com/recommendation-systems-how-do-they-work
---

In today's modern society, we are entering a data collection era, everything from our preferences to our search histories are stored and used to recommend us related items. 

For example, YouTube recommends us what videos to watch next. Amazon recommends related items to add to our shopping cart and Facebook suggests new people you might be interested to follow.

Recommendation systems exist almost everywhere these days. So in this article, I'd like to briefly explain how they work as I recently read some fascinating articles on it. Note that I am not going deep into implementation because I want to keep this article as an overview rather than a step-by-step guide.

## Why are they used?
For most businesses, knowing their customers can contribute to a significant amount of success and profitability. Understanding what each user likes or dislikes can ensure that their products can stay relevant and competitive in the market.

Recommendation systems provide a good solution to predict which products their users are more likely to consume, and which ones are less attractive for them. Hence, by recommending products more suitable to each user, a company can have a better chance to survive and sustain.

## Types of Recommendation Systems
There are 3 most common types of recommendation systems. Let's dive in one by one.

### 1. Demographic Filtering
This is the simplest type of recommendation. This approach searches for users with similar demographic traits such as location, age, gender, etc. and recommends products based on their similar preferences.

![demo](https://catalystforbusiness.com/wp-content/uploads/2018/04/Demographic-Survey-1024x546.jpg)

This system is quite general because comparing merely by demographic traits will not really give each user personalized recommendations.

### 2. Content-Based Filtering
This approach compares the products instead of users. For example, if a user likes a particular product, the system will search for a similar product based on its description, category, price range, etc. and recommends that to the individual.

![content.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1601049889612/vHfdfGb_k.png)

Although this type of system is good because it caters to the individual's own preferences without comparing with other users, it needs to use existing data of the user's past likes to recommend something.

In other words, it can make this system quite limited and less effective at first. The next approach combines the best of the 2 mentioned systems.

### 3. Collaborative Filtering
Collaborative Filtering consists of 2 techniques:
1. **User-based**: recommends product A to a user when a similar user has liked A.
2. **Item-based**: recommends product A if user has consumed product B and similar users have shown to buy A and B often together.

In general, collaborative filtering is widely used because makes a more accurate prediction on which products a user would likely to consume.

![collab.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1601050772317/r9Zl6o4DF.png)

However, a drawback on this particular system is that the data collection of users should be diversified and sufficient in quantity to ensure recommendations are not bias on a majority of dominant opinions. It should strive to remain partial and independent of skewed interests to work accurately.

## Conclusion
Thanks for reading. I hope this short overview has satiated your curiosity in how some recommender systems work. I learned these thanks to some articles which are cited in the References section below. They are all fascinating reads that I suggest you can read them to find out more yourself. That's all for now, cheers!

-----------
### References
- [Recommendation Systems](https://www.researchgate.net/publication/326539074_Recommendation_Systems_Technology_Review)
- [Content-Based Filtering](https://developers.google.com/machine-learning/recommendation/content-based/basics)
- [Collaborative Filtering](https://www.digitalvidya.com/blog/collaborative-filtering/)
- Images from towardsdatascience.com