Recommender Systems
Insight into recommender systems which everyone uses everyday in digital devices
Murukessan Perumal
5/8/20242 min read
Today's topic is Recommender Systems
Lets say a company like Netflix, Amazon, Disney Hotstar need to recommend the correct user profile the matching movie, so that there is a high chance that many users will see the recommended movie thereby increasing profit for the companies in many ways.
Lets see what are all the data available for the recommender system to learn from. There are user ratings movie, user profile information and movie information. User rating movie is taken from the movie reviews given by users. User profile information is all the information they ask you and you give them when you create an account and after which anything you do in the website, can also be tracked to have more info about the user, like watching a trailer, searching for a genre, even avoiding some content, etc. Movie information is like the cast in the movie, genre, director, producing company, animated or not, country of origin, etc.
Lets assume all these information as matrices like user-movie rating as Mᵤₘ, user-profile as Mᵤₚ and movie-profile as Mₘₚ
Now the target is to find missing ratings that are not given by the users for movies in Mᵤₘ. Lets say the dimensions of the matrices Mᵤₘ is uxm, Mᵤₚ is f1xu and Mₘₚ is mxf2. Lets take weight matrices Mᵤ and Mₘ that learns user features and movie features. Dimensions of Mₘ and Mᵤ are f2xu and f1xm respectively.
The optimization objective is to learn Mᵤ and Mₘ in the following setting.
Mᵤₚᵀ.Mᵤ = Mᵤₘ and (1)
Mₘₚ.Mₘ = Mᵤₘᵀ and (2)
There are various ways to solve this optimization objective. One of them is through Gradient Descent Algorithm. Randomized initial weights of the matrices Mᵤ and Mₘ are updated via gradient descent by minimizing the following loss function. E(Mᵤₘᵖ−Mᵤₘ)² condition i-th element in Mᵤₘ is not empty and where Mᵤₘᵖ is the predicted matrix and it is a sum of squarred errors of elementwise difference in the predicted and real user movie ratings matrix. They call this colloborative filtering since there is a colloboration of all users' ratings, user profile information and movie information for getting the user the right recommendation. Also the practical implementation of gradient descent will be from solving (1) to (2) to (1) to (2) to (1) ..... Remember anything from social media, youtube, even ads on all of them are a form of recommendation.
Have a wonderful recommendation !!! I owe this article in open forum to Andrew Ng, co-founder of Coursera. Thank you Andrew.