If we plan to buy any new product, we normally ask our friends, research the product features, compare the product with similar products, read the product reviews on the internet and then we make our decision. How convenient if all this process was taken care of automatically and recommend the product efficiently? A recommendation engine or recommender system is the answer to this question.
Content-based filtering and Collaborative based filtering are the two popular recommendation systems. In this blog, we will see how we can build a simple content-based recommender system using Goodreads.com data.
Content-based recommendation system
Content-based recommendation system recommends items to a user by taking similarity of items. This recommender system recommends products or items based on the description or features. It identifies the similarity between the products based on its description. It also considers the user previous history in order to recommend a similar product.
Example: If a user likes novel “Tell me your dreams” by Sidney Sheldon, then the recommender system recommends the user to read other Sidney Sheldon’s novels or it recommends novel with the genre “Non-fiction”. (Sidney Sheldon novels belong to Non-fiction genre).
As I mentioned above, we are using goodreads.com data and don’t have users reading history. Hence, we have used a simple content-based recommendation system. We are going to build two recommendation system by using a book title and book description.
We need to find similar books to a given book and then recommend those similar books to the user. How to find whether the given book is similar or dissimilar? Similarity measure was used to find the same.