recommender systems using collaborative filtering
Embed Size (px)
Recommender SystemsPRESENTED BY D YOGENDRA RAO
UNDER THE GUIDANCE OF PROF B MAJHI
Outline◦ Motivation◦ Project Objective◦ Introduction◦ Recommender Systems◦ Work Done ◦ Experimental Results◦ Future Work
The motivation to do the project comes from my eagerness to get a deep understanding of recommender systems.
Coursera - Mining Massive Datasets.
Udacity - Introduction to Hadoop and MapReduce for Begineers
Coursera – Introduction to Recommender System
Motivation Google Example
◦ 10 billion web pages◦ Average size of webpage= 20KB◦ 10 billion*20KB = 200TB◦ Disk read bandwidth = 50 MB/sec◦ Time to read = 4 million seconds = 46+ days◦ Even longer to do something useful with the data
Project Objective In this project, I have designed a website that uses different techniques for generating recommendations.
1) User-based Collaborative Filtering2) Item-based Collaborative Filtering3) Model-based Collaborative Filtering4) MapReduce
Dataset : Movie Lens, an external data set of users, items, and ratings(100K)
Error Calculation : Using Mean Absolute Error Rate (MAE) and Root Mean Squared Error (RMSE).
Introduction Approaches to apply a Recommender System
Collaborative FilteringContent Based Filtering Hybrid Filtering
Algorithm to predict a user preference◦ User Based◦ Item Based◦ Model Based
User Based Collaborative Filtering approach
Introduction – Recommender Systems
Recommendation systems are everywhere—from Amazon:
Introduction – Recommender Systems
To last.fm recommending music or concerts
How Recommender System Works
Products, web sites, blogs, news items, …
Collaborative Filtering In this method, we predict the user behavior against a certain item using the weighted sum of
deviations from mean ratings of users that previously rated this item and the user mean rate
Pearson correlation :
Pearson Correlation Coefficient This is an approximation of Pearson:
The problem with the previous formula was that the algorithm to implement it would require multiple passes through the data.
Pearson Correlation Coefficient The Pearson Correlation Coefficient is a measure of correlation between two variables .
It ranges between -1 and 1 inclusive. 1 indicates perfect agreement. -1 indicates perfect disagreement.
Prediction Formula :
Cosine similarity ignores 0-0 matches. It is defined as :
where · indicates the dot product and ||x|| indicates the length of the vector x. The length of a vector is :
Recommending User with UserID ‘171118’
User-based Item-based Model-based
MAE RMSE MAE RMSE MAE RMSE
0.816429099 1.022968896 0.834149128 1.04480249 0.85019701 1.10512221
Thus we find User Based Collaborative Filtering gives the best results.
The project consists of a website that makes the user able to browse movies. Users can register to the website, check the movies and rate them. Once the user logs into the system, he has to initially rate the movies without which the system won’t be providing any recommendations. The recommendations for the movies are ordered by highly predicted rating for this user.
MRS > Login
MRS > Home Page
MRS > Movies Page
MRS > Rating the movies
MRS > Getting Recommendations
MRS > Profile
So the first step is to get our movies file which has three columns: (user, movie, rating). For this task we will use the MovieLens Dataset of Movie Ratings with 10,000 ratings from 1000 users on 1700 movies.
Link : http://www.grouplens.org/node/73
Server side scripting : PHP was the language used for coding the server side
Recommender Engine : Python
Web Services : JSON
References  Alluhaidan, Ala. "Recommender System Using Collaborative Filtering Algorithm." (2013).
 Ekstrand, Michael D., John T. Riedl, and Joseph A. Konstan. "Collaborative filtering recommender systems." Foundations and Trends in Human-Computer Interaction 4, no. 2 (2011): 81-173.
 Coursera - Introduction to Recommender Systems
 Nguyen, Tho. "Web based recommender systems and rating prediction." (2009).