recommender systems using collaborative filtering

28
Recommender Systems PRESENTED BY D YOGENDRA RAO 111CS0152 UNDER THE GUIDANCE OF PROF B MAJHI

Upload: d-yogendra-rao

Post on 29-Jul-2015

150 views

Category:

Engineering


7 download

TRANSCRIPT

Recommender SystemsPRESENTED BY D YOGENDRA RAO

111CS0152

UNDER THE GUIDANCE OF PROF B MAJHI

Outline◦ Motivation◦ Project Objective◦ Introduction◦ Recommender Systems◦ Work Done ◦ Experimental Results◦ Future Work

Motivation

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

Items

Search

Recommendations

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 :

Implementation

Cosine Similarity

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 Users

Results

Recommending User with UserID ‘171118’

Error Calculation

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.

Web Architecture

PROGRAM REQUIREMENTS

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

Login Screen

MRS > Home Page

MRS > Movies Page

MRS > Rating the movies

MRS > Getting Recommendations

MRS > Profile

Dataset

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

Technologies/Tools used

Front-end : Bootstrap framework for CSS and JavaScript

Server side scripting : PHP was the language used for coding the server side

Recommender Engine : Python

Web Services : JSON

References [1] Alluhaidan, Ala. "Recommender System Using Collaborative Filtering Algorithm." (2013).

[2] 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.

[3] Coursera - Introduction to Recommender Systems

[4] Nguyen, Tho. "Web based recommender systems and rating prediction." (2009).