What is Recommendation System ??
Recommender systems are the most popular application in today’s world of data science and machine learning. You have seen before if you visit Youtube, Netflix, or even amazon you get the recommendations you might want to visit next. what you think how you get. yeah.. it is because of ML-based recommendations model which finds the best match product, movie, or apps for you. in other words, A Recommender System is a process that seeks to predict user preferences based on many different factors.
Why the Recommendation system?
- It helps the websites to improve for user engagement.
- It helps to find the user’s interest items.
Types of Recommendation Systems
There are two major types of recommendation system
1. Collaborative Filtering Systems:
In this, recommendations are based on the user’s direct behavior. collaborative filtering uses similarities between users and items simultaneously to provide recommendations. This system builds a model based on previous ratings, activities, and preferences. then the model uses this information to predict the user’s like based on similarities for other users. you analyze what books have been read by people that have read book A and the ones with the highest count are on the top of the list.
Collaborative filtering works on the assumption that if a set of users have agreed on a certain idea at some point in time, it is very likely that they would agree on another related idea in the future. This approach is dependent on the area of interest where the recommendation systems function.
Merits
- We don’t need domain knowledge because the embeddings are automatically learned by machine learning formula.
- The content of the items does not necessarily tell the whole story, such as movie type/genre, and so on.
- The model can help users discover new interests. In isolation, the ML system may not know the user is interested in a given item. but the model might still recommend it because similar users are interested in that item.
- It does use other’s scores.
Demerits
- It does require more data
- It has Problems with new users and new data. This issue is often called the cold-start problem
2. Content-Based Filtering System:
This filtering system is based on the description of the product. It relies on similarities between features of the items based on their context or description. Suggest similar items on a particular item. This system uses item metadata such as genre, director, description, actors, etc. for movies, to make the recommendations. you show all the books that have the same author, same publisher, same genre as book A first, then you slowly make it less.
For example, if a user likes movies such as ‘Fantasy Island’ then we can recommend him ‘Extraction’ movie or movies with the genre ‘Thriller’.
Merits
- We just need item data that enable us to start giving recommendations to users.
- There is no requirement for much of the user’s data.
- This does not depend on the user’s data, so even if a new user comes in, we can recommend the user as long as we have the user data to build his profile.
- It does not suffer from a cold start.
Demerits
- Item’s data should be in good volume.
- Features should be there in data to compute the similarity.
In the image, the first part of the image is collaborating filtering as the image says if user A and User B read the same book previously and user A is reading another book then this book is also recommend to user B.
okay, So You got the basic ideas about recommendation systems. If you want to explore recommendation systems and implement this into your system, you can go through the reference link. In the next blog, I will implement the recommendation system for products. So stay connected.
I hope this blog will help you to understand the basic idea of recommendation systems. Feel free to comment for any problems or suggestions. Also, You can follow me here for more blogs. Thanks for reading.
Reference Links :
- https://heartbeat.fritz.ai/build-train-and-deploy-a-book-recommender-system-using-keras-tensorflow-js-b96944b936a7
- https://heartbeat.fritz.ai/build-train-and-deploy-a-book-recommender-system-using-keras-tensorflow-js-6e1fc9a17c9a