Introduction to Recommendation Engines

Share this article!

Intro to Recommendation Engines


How does Google decide, which ads to show you? How does Facebook suggest us new friends? Have you ever come up with the line “People who bought this also bought this” while browsing an E-commerce site? How does YouTube suggest you next video to watch?

The Answer is “Recommendation engine”!

In this article, we will learn following things about recommender engine-

  1. Basic terminology and definition
  2. Different Types
  3. Real World Implementation

What is Recommender Engine?

“Recommendation engines or Recommender Systems are powerful tools and techniques to analyze huge volumes of data, especially product information and user information, and then provide relevant suggestions based on data mining approaches.”

Basically, recommendation engine is nothing but a simple algorithm that extracts only relevant information from a huge pool of information. It is done by taking into consideration of the available digital footprint of the user, such as user-demographic information, transaction details, interaction logs, and information about a product, such as specifications, feedback from users, comparison with other products, and so on.



Types of Recommendation Engine:

Here, I’ll briefly explain all types of recommendation engine and their classification based on different parameters. In the subsequent articles, I’ll explain each of them in details with their implementation.


Collaborative Filtering: (User-User similarity: “Users who are similar to you also liked …”)

Collaborative Filtering is a method of making automatic predictions (filtering) about the interests of a user by collecting preferences or taste information from many users (collaborating).”-Wikipedia

The logic behind this approach is, “if users shared the same interests in the past, they will also have similar tastes in the future.”

Let’s understand this with an example. Suppose, user A and user B both like to watch Action Movie i.e. they have similar movie preferences. User A recently watched Fast and The Furious, which user B has not yet seen, then the idea is to recommend this unseen new movie to user B. The movie recommendations on Netflix are one good example of this type of recommender system.



Content Based Filtering: (Item-Item similarity: “Users who liked this item also liked … “)

This method is used especially for item recommendations on e-commerce websites. This approach is based on the features of the products. In other words, items with similar specifications are clustered together and recommended together. For example – Apple iPhone and Apple iPad belong to one cluster of Apple products, Samsung phone and Apple iPhone belong to one cluster of smartphones.

In this type of recommender system, user’s profile is created based on his history (i.e. purchased products, browsing history) to get his interest. Then items similar to his interest is recommended. As shown in the image below is the perfect example of
item based recommendations.


Hybrid System:

This approach is often adopted to mitigate the disadvantages of a particular type of recommender system by combining various recommender systems to build a more robust system.


For example, if you are a frequent reader of news on Google News, the underlying recommendation engine recommends news articles to you by combining popular news articles read by people similar to you and using your personal preferences, calculated using your previous click information. This is an example of the combination of collaborative filtering and content-based recommendations.


Real World Implementation:

                                                          Facebook: “People You May Know”   



      LinkedIn: “Jobs You May be Interested In”



Netflix: “Other Movies You Might Enjoy”



 Amazon: “Customers Who Bought This Item Also Bought…


I hope you got the basic picture of a recommender system. Every algorithm is based on finding similar users or similar items but how to find similarity between them?

So in the Next Article, I will explain different types of similarities used in Recommender system design, their mathematical formulation and their python implementation.

happy learning 🙂

Share this article!

Adish Jain

Adish Jain

I am a final year B.Tech. Student at IIT Guwahati with a keen interest in Artificial Intelligence, Robotics, Big Data and IoT.
LinkedIn : https://www.linkedin.com/in/adish333/
Adish Jain

Latest posts by Adish Jain (see all)

Adish Jain

I am a final year B.Tech. Student at IIT Guwahati with a keen interest in Artificial Intelligence, Robotics, Big Data and IoT. LinkedIn : https://www.linkedin.com/in/adish333/

Leave a Reply

Your email address will not be published. Required fields are marked *