How does 'A Content Based Recommender System' work?
Recommender Systems learn the patterns of people's preferences and actions and then use them to suggest what else they might want or like. We can use recommender systems for recommending people what to buy, what to read, what to watch and so on. There are different types of recommender systems available such as Content Based Recommender System, Collaborative Recommender System, Demographic based Recommender System and Hybrid Recommender Systems.
This article mainly focuses on the theory behind Content Based Recommender Systems and explains it using an Example. A Content based recommender uses the data obtained from the users and from the data, it creates an user profile. Then it uses the created user profile for making suggestions to the users. In simpler words, it recommends similar items to the user based on what items user liked before.
Let's see how it does the process with an example. Now we are going to create a content based recommender to suggest a book to a reader based on the reader's ratings of books. Following charts shows the books, corresponding genres and reader's ratings.
Based on the above data, it needs to recommend the reader a book from one of below.
From the reader's ratings and genres of the books, we are going to calculate the weighted genre matrix.
From the Weighted genre matrix, we are going to calculate (by calculating the sum of each column) the normalized user profile.
Now let's create the genre matrix of movies that are to be recommended.
After that, by multiplying the normalized user profile and genre matrix of movies to be recommended, let's create the weighted movies matrix.
Then by calculating the sum of each row, we are going to create a recommendation matrix.
By looking at the recommendation matrix, we can say that our created content based recommender will recommend 'Book F' to the reader. This how a content based recommender system works.
In our next article, we will discuss the implementation of a content based recommender system from scratch.