Building a movie recommender system
The dataset is maintained by the "GroupLens research" and is available for free at http://grouplens.org/datasets/movielens/.
We will be working on the dataset of 20 million ratings (ml-20m.zip
). This contains:
20 million ratings
465,000 tag applications applied to 27,000 movies by 138,000 users
We will work on an ALS recommender, which is a matrix factorization algorithm that uses Alternating Least Squares with Weighted-Lamda-Regularization (ALS-WR).
Let's consider that we have a matrix with users, u, and items, i:
Matrix, M (ui) = { r (if item i is rated by the user, u) 0 (if item i is not rated by user, u) }
Here, r represents the ratings submitted.
Consider that we have m number of users and n number of movies.
With m number of users and n number of movies, we create a matrix of users and movies (m*n).
The recommendations are generated for any user-movie pair as follows:
(i,j),rij=ui⋅mj,∀i,j
Here, (i,j) is the user-movie pair.
Julia has a package, RecSys...