Recommendation System -Understanding The Basic Concepts

Shubham Kumar Agrawal 29 Feb, 2024 • 6 min read

This article was published as a part of the Data Science Blogathon

Introduction

Recommendation System

In this blog, I will discuss various things on the recommendation system like what is the recommendation system? What are its use-cases? How many types of recommendation systems and metrics are used for it.

In the above picture of amazon, you may have often seen this page when you try to purchase anything from amazon. These are the recommendation of the product you are trying to purchase and you will be amazed to know that amazon’s 35% of the revenue comes from these recommendation engines. Now you may have noticed the power of the recommendation engine. Nowadays every small to big company uses a recommendation engine. So now let me discuss this.

What Is Recommendation System?

A recommendation system is a subclass of Information filtering Systems that seeks to predict the rating or the preference a user might give to an item. In simple words, it is an algorithm that suggests relevant items to users. Eg: In the case of Netflix which movie to watch, In the case of e-commerce which product to buy, or In the case of kindle which book to read, etc.

Use-Cases Of Recommendation System

There are many use-cases of it. Some are

A. Personalized Content: Helps to Improve the on-site experience by creating dynamic recommendations for different kinds of audiences like Netflix does.

B. Better Product search experience: Helps to categories the product based on their features. Eg: Material, Season, etc.

TYPES OF RECOMMENDATION SYSTEM

1. Content-Based Filtering

Recommendation system , types of recommendation system

In this type of recommendation system, relevant items are shown using the content of the previously searched items by the users. Here content refers to the attribute/tag of the product that the user like. In this type of system, products are tagged using certain keywords, then the system tries to understand what the user wants and it looks in its database and finally tries to recommend different products that the user wants.

In a movie recommendation system, each film is tagged with genres. When a new user, User A, joins, the system initially suggests popular movies or gathers information through a user form. As User A rates movies over time, preferences emerge; for instance, if User A consistently rates action movies highly but rates anime movies poorly, the system recommends more action-oriented content. However, this doesn’t imply a dislike for anime movies; further data collection is needed to refine recommendations accurately.

Advantage

  • Model doesn’t need data of other users since recommendations are specific to a single user.
  • It makes it easier to scale to a large number of users.
  • The model can Capture the specific Interests of the user and can recommend items that very few other users are interested in.

Disadvantage

  • Feature representation of items is hand-engineered to some extent, this tech requires a lot of domain knowledge.
  • The model can only make recommendations based on the existing interest of a user. In other words, the model has limited ability to expand on the user’s existing interests.

2. Collaborative Based Filtering

Recommending the new items to users based on the interest and preference of other similar users is basically collaborative-based filtering. For eg:- When we shop on Amazon it recommends new products saying “Customer who brought this also brought” as shown below.

recommendation system

This approach not only addresses the limitations of content-based filtering but also leverages user interactions, making it more robust. By focusing on the historical performance of users, this recommendation system can predict future preferences with greater accuracy.

There are 2 types of collaborative filtering:-

A. User-Based Collaborative Filtering

recommendation system

Rating of the item is done using the rating of neighbouring users. In simple words, It is based on the notion of users’ similarity.

Let see an example. On the left side, you can see a picture where 3 children named A, B, C, and 4 fruits i.e, grapes, strawberry, watermelon, and orange respectively.

Based on the image let assume A purchased all 4 fruits, B purchased only strawberry and C purchased strawberry as well as watermelon. Here A & C are similar kinds of users because of this C will be recommended Grapes and Orange as shown in dotted line.

B. Item-Based Collaborative Filtering

recommendation system

The rating of the item is predicted using the user’s own rating on neighbouring items. In simple words, it is based on the notion of item similarity.

Let us see with an example as told above about users and items. Here the only difference is that we see similar items, not similar users like if you see grapes and watermelon you will realize that watermelon is purchased by all of them but grapes are purchased by Children A & B. Hence Children C is being recommended grapes.

Now after understanding both of them you may be wondering which to use when. Here is the solution if No. of items is greater than No. of users go with user-based collaborative filtering as it will reduce the computation power and If No. of users is greater than No. of items go with item-based collaborative filtering. For Example, Amazon has lakhs of items to sell but has billions of customers. Hence Amazon uses item-based collaborative filtering because of less no. of products as compared to its customers.

Advantage

  • It works well even if the data is small.
  • This model helps the users to discover a new interest in a given item but the model might still recommend it because similar users are interested in that item.
  • No need for Domain Knowledge

Disadvantage

  • It cannot handle new items because the model doesn’t get trained on the newly added items in the database. This problem is known as Cold Start Problem.
  • Side Feature Doesn’t have much importance. Here Side features can be actor name or releasing year in the context of movie recommendation.

EVALUATION METRICS

As we have discussed different types of recommendation systems their advantages and disadvantages but how can we evaluate whether the given model is recommending the right things or not and how many relevant things this system predicts and here comes evaluation metrics. There are several metrics for evaluating the model but here we will discuss 4 major metrics.

1. Mean Average precision at K

It gives how much relevant is the list of recommended items. Here precision at K means Recommended items in top k sets that are relevant.

2. Coverage

It is the percentage of items in the training data model able to recommend in test sets. Or Simply, the percentage of a possible recommendation system can predict.

3. Personalization

It is basically how many same items the model recommends to different users. Or, the dissimilarity between users lists and recommendations.

4. Intralist Similarity

It is an average cosine similarity of all items in a list of recommendations.

CONCLUSION

This blog covered many topics related to recommendation engines like What are it and its use-cases. Apart from this different types of recommendation system like content-based filtering and collaborative based filtering and in collaborative filtering also user-based as well as item-based along with its examples, advantages and disadvantages, and finally the evaluation metrics to evaluate the model.

Frequently Asked Questions

Q1.What are the steps in the recommendation system?

Data Collection: Gather information about users and items.
Data Preparation: Clean and organize the collected data.
Model Selection: Choose a method for making recommendations.
Training: Teach the model how to make recommendations using the data.
Evaluation: Check how well the model performs.
Fine-tuning: Adjust the model to improve its accuracy.
Deployment: Put the model into action for users to receive recommendations.
Monitoring and Updating: Keep an eye on the recommendations and make improvements as needed over time.

Q2.What is the use of a recommendation system?

Recommendation systems provide personalized suggestions to users, boosting sales, engagement, and satisfaction across various platforms such as e-commerce, streaming services, social media, news, advertising, and travel. They tailor recommendations based on user preferences, behavior, and similarities with other users, enhancing the overall user experience.

Q3.What is the power of the recommendation system?

The power of recommendation systems is their ability to suggest things tailored to you based on what you’ve liked before. They analyze a lot of data to predict what you might want next, making your experience better and helping businesses by boosting sales and keeping customers happy.

Q4. What was the first Recommendation System?

The first recommendation system is usually credited to the “Tapestry” project from Xerox PARC in the early 1990s. It suggested Usenet newsgroups based on users’ interests and those of similar users. Tapestry set the stage for future recommendation systems, introducing collaborative filtering techniques for personalized recommendations.

The media shown in this article are not owned by Analytics Vidhya and are used at the Author’s discretion.

Frequently Asked Questions

Lorem ipsum dolor sit amet, consectetur adipiscing elit,

Responses From Readers

Clear

Machine Learning
Become a full stack data scientist