SlideShare a Scribd company logo
Movie Recommendation System
CSN-382 Project
Submitted By:
Abhishek Jaisingh, 14114002
Tirth Patel, 14114036
Sahil Garg, 14114046
Sumit Kumar Singh, 14114063
Recommendation System
Recommendation systems produce a ranked list of items on which a user might
be interested, in the context of his current choice of an item.
❖ Subclass of Information filtering system that seek to predict the ‘rating’ or
‘preference’ that a user would give to them.
❖ Helps deciding in what to wear, what to buy, what stocks to purchase etc.
❖ Applied in variety of applications like movies, books, research articles.
Recommendation systems has mainly two elements Item and User.
MovieRecommendation System
1. Content Based: The recommendation system recommends other movies
which are similar to that selected movie.
f(movie) → {movies}
2. Collaborative: The recommendation system recommends movies which are
rated highly by the similar users.
f(movies, user) → {movies}
Dataset Usage
We have used MovieLens Dataset by GroupLens
This data set consists of:
❖ 100,000 ratings (1-5) from 943 users on 1682 movies.
❖ Each user has rated at least 20 movies.
❖ Simple demographic info for the users (age, gender, occupation)
Since we have developed a prototype of hybrid recommendation system. We
have also scraped the content-based data from IMDB for the movies we already
had for collaborative filtering purpose in the movielens dataset.
CollaborativeFiltering
❖ Collaborative Filtering system maintains a database of many users’ ratings of
a variety of items.
❖ Makes use of the user data, ignoring content / item data.
❖ Almost all existing commercial recommenders use this approach (e.g.
Amazon, Facebook, LinkedIn).
Basic Idea behind Collaborative Filtering
CollaborativeFiltering
Utility Matrix : Users have preferences for certain items and these preferences
must be discovered from the data. The data is represented as a utility matrix, a
value that represents the rating given by that user for that item and is given for
each user-item pair.
The goal of the recommendation engine is to predict the blanks in a utility matrix.
UtilityMatrix
Similarity Measures
Pearson Correlation Similarity Measure : Measure of similarity of users or items
from the rows and columns of the Utility Matrix.
Advantages:
● Pearson Correlation Measure is easy to interpret.
● Tends to give better results than other similarity measures.
● Normalizes the ratings.
Other Similarity Measures:
Euclidean Distance, Manhattan Distance, Cosine Similarity
PCSMeasure
Let denote the rating given by user xto item i. If Iis the set of all items that
two users xand yhave both rated, then the Pearson Correlation Similarity
Measure between the two users is given by:
where denotes the average rating given by user xto all items. To calculate
we only consider items that were rated by the user.
Prediction
● One way of predicting the value of the utility matrix entry (estimated rating) of
a given user u for item i, is to average the ratings of top_n users.
● Other approach is to first normalize the utility matrix.
● That is, for each of the n most similar users, subtract their average rating for
all items from the rating of the item of interest i. Take the average of these
differences for those users who have rated i, then add this average difference
to the average rating that u gives for all items.
Results
● We achieved a Mean Square Error of 1.076 for the prediction of user ratings
and top_n =150 (neighborhood size).
Disadvantages
1.Cold Start: There needs to be enough other users already in the system to find
a match.
2.Sparsity: Most users do not rate most items and hence the user-item matrix is
typically very sparse. It is hard to find users that have rated the same items.
3.First Rater: It is not possible to recommend an item that has not been
previously rated. This problem comes for new items mostly.
4.Popularity Bias: CF cannot recommend items to someone with unique tastes.
In that case there is a tendency to recommend the popular.
Content Based Filtering
❖ It uses only the item data maintaining a profile for each item. Each user is
assumed to operate independently. No need for data on other users.
❖ Considering the attributes or feature of the item, it finds the similarity
between items, and recommends the most similar item for an item.
❖ If we consider the content of a movie as director, writer, cast etc., then each
of these attribute can be considered as a feature.
Similarity
We recommend the items to the users which are very much similar to the rated
item by the user.
We define similarity S between objects Oi and Oj as
S(Oi , Oj) = f(A1i , A1j) + f(A2i , A2j) + · · · + f(Ani , Anj)
Here, A1i, A2i .. Ani are the features for the item i.
Function f(A1i , A1j) represents the distance (similarity) between the 1st feature for
item i and j.
Featuresand Distance Measures
Features Used in Movie Recommendation
with their distance measures
Disadvantages
1. Cannot filter items on some assessment of quality, style or viewpoint
because of lack of consideration of other people’s experience.
2. Absence of personal recommendations.
3. No serendipitous items i.e. the ability of the system to give an item
surprisingly interesting to a user, but not expected or possibly foreseen by
the user.
HybridApproach
We attempt to hybridize collaborative filtering and content based
recommendation. Item similarity measure used in content based recommendation
is learned from a collaborative social network of users.
In content based recommendation every item is represented by a feature vector.
The features hold numeric or nominal values representing certain aspects of the
item.
A variety of distance measures between the feature vectors may be used to
compute the similarity of two items.
Content Based Similarity
Users base their judgments on some latent criteria which is a weighted linear
combination of the differences in individual attribute.
Accordingly, we define similarity S between objects Oi and Oj as
S(Oi , Oj ) = ω1f(A1i , A1j ) + ω2f(A2i , A2j ) + · · · + ωnf(Ani , Anj )
where ωn is the weight given to the difference in value of attribute An between
objects Oi and Oj , the difference given by f(Ani, Anj ).
weights ω1, ω2, · · · , ωn are obtained from a social collaborative network.
Weights From CollaborativeNetwork
We describe below a linear regression framework for determining the optimal
feature weights.
The edge weight between vertices Oi and Oj,
E(Oi , Oj ) = # of users who are interested in both Oi , Oj
This may be considered as human judgment of similarity between Oi , Oj.
ω0 + ω1f(A1i , A1j ) + ω2f(A2i , A2j ) + · · · + ωnf(Ani , Anj ) = E(Oi , Oj )
Solving the above regression equations provide estimates for the values of ω1,
ω2, · · · , ωn. If there are l movies under consideration, it is possible to have lC2
regression equations of the above form.
Prediction
● Using regression we can solve for the weight vector, W
● User can input the movie for which he wants recommendation (say Oi)
● We check similarity, S(Oi, Oj) of the given movie with all other movies
(Oj).
● Each movie’s similarity score is dot_product( S, W ).
● We have to recommend movies which have the maximum similarity
score
Future Work
● In collaborative filtering, we have a problem of sparsity of data. Very
few users actually rate the same movie.
● We can use Clustering Algorithms like K-Means to cluster items or
users or both based on their attributes.
● In the hybrid approach, we can use more features to get better
predictions. (Currently, we have only 9 features)
References
1. https://grouplens.org/datasets/movielens/100k/ - MovieLens Dataset.
2. https://pdfs.semanticscholar.org/1356/f4eda338b58b2840c5f643a988a10088
06f0.pdf - Machine Learning Based Hybrid Recommendation System
Thanks

More Related Content

Similar to movierecommendationproject-171223181147.pptx

Similar to movierecommendationproject-171223181147.pptx (20)

Mahout part1
Mahout part1Mahout part1
Mahout part1
 
Recommenders Systems
Recommenders SystemsRecommenders Systems
Recommenders Systems
 
Movie recommendation system using collaborative filtering system
Movie recommendation system using collaborative filtering system Movie recommendation system using collaborative filtering system
Movie recommendation system using collaborative filtering system
 
Recommended System.pptx
 Recommended System.pptx Recommended System.pptx
Recommended System.pptx
 
AI in Entertainment – Movie Recommendation System
AI in Entertainment – Movie Recommendation SystemAI in Entertainment – Movie Recommendation System
AI in Entertainment – Movie Recommendation System
 
ENTERTAINMENT CONTENT RECOMMENDATION SYSTEM USING MACHINE LEARNING
ENTERTAINMENT CONTENT RECOMMENDATION SYSTEM USING MACHINE LEARNINGENTERTAINMENT CONTENT RECOMMENDATION SYSTEM USING MACHINE LEARNING
ENTERTAINMENT CONTENT RECOMMENDATION SYSTEM USING MACHINE LEARNING
 
Aaa ped-19-Recommender Systems: Neighborhood-based Filtering
Aaa ped-19-Recommender Systems: Neighborhood-based FilteringAaa ped-19-Recommender Systems: Neighborhood-based Filtering
Aaa ped-19-Recommender Systems: Neighborhood-based Filtering
 
Project presentation
Project presentationProject presentation
Project presentation
 
Recommendation Systems
Recommendation SystemsRecommendation Systems
Recommendation Systems
 
Movie recommendation Engine using Artificial Intelligence
Movie recommendation Engine using Artificial IntelligenceMovie recommendation Engine using Artificial Intelligence
Movie recommendation Engine using Artificial Intelligence
 
Movie lens movie recommendation system
Movie lens movie recommendation systemMovie lens movie recommendation system
Movie lens movie recommendation system
 
Aaa ped-21-Recommender Systems: Content-based Filtering
Aaa ped-21-Recommender Systems: Content-based FilteringAaa ped-21-Recommender Systems: Content-based Filtering
Aaa ped-21-Recommender Systems: Content-based Filtering
 
LIBRS: LIBRARY RECOMMENDATION SYSTEM USING HYBRID FILTERING
LIBRS: LIBRARY RECOMMENDATION SYSTEM USING HYBRID FILTERING LIBRS: LIBRARY RECOMMENDATION SYSTEM USING HYBRID FILTERING
LIBRS: LIBRARY RECOMMENDATION SYSTEM USING HYBRID FILTERING
 
Collaborative Filtering 1: User-based CF
Collaborative Filtering 1: User-based CFCollaborative Filtering 1: User-based CF
Collaborative Filtering 1: User-based CF
 
Movie Recommender System Using Artificial Intelligence
Movie Recommender System Using Artificial Intelligence Movie Recommender System Using Artificial Intelligence
Movie Recommender System Using Artificial Intelligence
 
Music Recommendation System with User-based and Item-based Collaborative Filt...
Music Recommendation System with User-based and Item-based Collaborative Filt...Music Recommendation System with User-based and Item-based Collaborative Filt...
Music Recommendation System with User-based and Item-based Collaborative Filt...
 
AN AFFECTIVE AWARE PSEUDO ASSOCIATION METHOD TO CONNECT DISJOINT USERS ACROSS...
AN AFFECTIVE AWARE PSEUDO ASSOCIATION METHOD TO CONNECT DISJOINT USERS ACROSS...AN AFFECTIVE AWARE PSEUDO ASSOCIATION METHOD TO CONNECT DISJOINT USERS ACROSS...
AN AFFECTIVE AWARE PSEUDO ASSOCIATION METHOD TO CONNECT DISJOINT USERS ACROSS...
 
Investigation and application of Personalizing Recommender Systems based on A...
Investigation and application of Personalizing Recommender Systems based on A...Investigation and application of Personalizing Recommender Systems based on A...
Investigation and application of Personalizing Recommender Systems based on A...
 
Recommendation System using Machine Learning Techniques
Recommendation System using Machine Learning TechniquesRecommendation System using Machine Learning Techniques
Recommendation System using Machine Learning Techniques
 
International Journal on Natural Language Computing (IJNLC)
International Journal on Natural Language Computing (IJNLC)International Journal on Natural Language Computing (IJNLC)
International Journal on Natural Language Computing (IJNLC)
 

Recently uploaded

RS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
RS Khurmi Machine Design Clutch and Brake Exercise Numerical SolutionsRS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
RS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
Atif Razi
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
Neometrix_Engineering_Pvt_Ltd
 
ONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdf
ONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdfONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdf
ONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdf
Kamal Acharya
 
Hall booking system project report .pdf
Hall booking system project report  .pdfHall booking system project report  .pdf
Hall booking system project report .pdf
Kamal Acharya
 
Digital Signal Processing Lecture notes n.pdf
Digital Signal Processing Lecture notes n.pdfDigital Signal Processing Lecture notes n.pdf
Digital Signal Processing Lecture notes n.pdf
AbrahamGadissa
 
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxCFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
R&R Consult
 

Recently uploaded (20)

RS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
RS Khurmi Machine Design Clutch and Brake Exercise Numerical SolutionsRS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
RS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
 
Peek implant persentation - Copy (1).pdf
Peek implant persentation - Copy (1).pdfPeek implant persentation - Copy (1).pdf
Peek implant persentation - Copy (1).pdf
 
IT-601 Lecture Notes-UNIT-2.pdf Data Analysis
IT-601 Lecture Notes-UNIT-2.pdf Data AnalysisIT-601 Lecture Notes-UNIT-2.pdf Data Analysis
IT-601 Lecture Notes-UNIT-2.pdf Data Analysis
 
fundamentals of drawing and isometric and orthographic projection
fundamentals of drawing and isometric and orthographic projectionfundamentals of drawing and isometric and orthographic projection
fundamentals of drawing and isometric and orthographic projection
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
 
KIT-601 Lecture Notes-UNIT-3.pdf Mining Data Stream
KIT-601 Lecture Notes-UNIT-3.pdf Mining Data StreamKIT-601 Lecture Notes-UNIT-3.pdf Mining Data Stream
KIT-601 Lecture Notes-UNIT-3.pdf Mining Data Stream
 
HYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generationHYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generation
 
Pharmacy management system project report..pdf
Pharmacy management system project report..pdfPharmacy management system project report..pdf
Pharmacy management system project report..pdf
 
Event Management System Vb Net Project Report.pdf
Event Management System Vb Net  Project Report.pdfEvent Management System Vb Net  Project Report.pdf
Event Management System Vb Net Project Report.pdf
 
Quality defects in TMT Bars, Possible causes and Potential Solutions.
Quality defects in TMT Bars, Possible causes and Potential Solutions.Quality defects in TMT Bars, Possible causes and Potential Solutions.
Quality defects in TMT Bars, Possible causes and Potential Solutions.
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
 
ONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdf
ONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdfONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdf
ONLINE VEHICLE RENTAL SYSTEM PROJECT REPORT.pdf
 
The Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdfThe Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdf
 
KIT-601 Lecture Notes-UNIT-4.pdf Frequent Itemsets and Clustering
KIT-601 Lecture Notes-UNIT-4.pdf Frequent Itemsets and ClusteringKIT-601 Lecture Notes-UNIT-4.pdf Frequent Itemsets and Clustering
KIT-601 Lecture Notes-UNIT-4.pdf Frequent Itemsets and Clustering
 
A CASE STUDY ON ONLINE TICKET BOOKING SYSTEM PROJECT.pdf
A CASE STUDY ON ONLINE TICKET BOOKING SYSTEM PROJECT.pdfA CASE STUDY ON ONLINE TICKET BOOKING SYSTEM PROJECT.pdf
A CASE STUDY ON ONLINE TICKET BOOKING SYSTEM PROJECT.pdf
 
WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234
 
Hall booking system project report .pdf
Hall booking system project report  .pdfHall booking system project report  .pdf
Hall booking system project report .pdf
 
KIT-601 Lecture Notes-UNIT-5.pdf Frame Works and Visualization
KIT-601 Lecture Notes-UNIT-5.pdf Frame Works and VisualizationKIT-601 Lecture Notes-UNIT-5.pdf Frame Works and Visualization
KIT-601 Lecture Notes-UNIT-5.pdf Frame Works and Visualization
 
Digital Signal Processing Lecture notes n.pdf
Digital Signal Processing Lecture notes n.pdfDigital Signal Processing Lecture notes n.pdf
Digital Signal Processing Lecture notes n.pdf
 
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxCFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
 

movierecommendationproject-171223181147.pptx

  • 1. Movie Recommendation System CSN-382 Project Submitted By: Abhishek Jaisingh, 14114002 Tirth Patel, 14114036 Sahil Garg, 14114046 Sumit Kumar Singh, 14114063
  • 2. Recommendation System Recommendation systems produce a ranked list of items on which a user might be interested, in the context of his current choice of an item. ❖ Subclass of Information filtering system that seek to predict the ‘rating’ or ‘preference’ that a user would give to them. ❖ Helps deciding in what to wear, what to buy, what stocks to purchase etc. ❖ Applied in variety of applications like movies, books, research articles. Recommendation systems has mainly two elements Item and User.
  • 3.
  • 4. MovieRecommendation System 1. Content Based: The recommendation system recommends other movies which are similar to that selected movie. f(movie) → {movies} 2. Collaborative: The recommendation system recommends movies which are rated highly by the similar users. f(movies, user) → {movies}
  • 5. Dataset Usage We have used MovieLens Dataset by GroupLens This data set consists of: ❖ 100,000 ratings (1-5) from 943 users on 1682 movies. ❖ Each user has rated at least 20 movies. ❖ Simple demographic info for the users (age, gender, occupation) Since we have developed a prototype of hybrid recommendation system. We have also scraped the content-based data from IMDB for the movies we already had for collaborative filtering purpose in the movielens dataset.
  • 6. CollaborativeFiltering ❖ Collaborative Filtering system maintains a database of many users’ ratings of a variety of items. ❖ Makes use of the user data, ignoring content / item data. ❖ Almost all existing commercial recommenders use this approach (e.g. Amazon, Facebook, LinkedIn).
  • 7. Basic Idea behind Collaborative Filtering
  • 8. CollaborativeFiltering Utility Matrix : Users have preferences for certain items and these preferences must be discovered from the data. The data is represented as a utility matrix, a value that represents the rating given by that user for that item and is given for each user-item pair. The goal of the recommendation engine is to predict the blanks in a utility matrix.
  • 10. Similarity Measures Pearson Correlation Similarity Measure : Measure of similarity of users or items from the rows and columns of the Utility Matrix. Advantages: ● Pearson Correlation Measure is easy to interpret. ● Tends to give better results than other similarity measures. ● Normalizes the ratings. Other Similarity Measures: Euclidean Distance, Manhattan Distance, Cosine Similarity
  • 11. PCSMeasure Let denote the rating given by user xto item i. If Iis the set of all items that two users xand yhave both rated, then the Pearson Correlation Similarity Measure between the two users is given by: where denotes the average rating given by user xto all items. To calculate we only consider items that were rated by the user.
  • 12. Prediction ● One way of predicting the value of the utility matrix entry (estimated rating) of a given user u for item i, is to average the ratings of top_n users. ● Other approach is to first normalize the utility matrix. ● That is, for each of the n most similar users, subtract their average rating for all items from the rating of the item of interest i. Take the average of these differences for those users who have rated i, then add this average difference to the average rating that u gives for all items.
  • 13. Results ● We achieved a Mean Square Error of 1.076 for the prediction of user ratings and top_n =150 (neighborhood size).
  • 14. Disadvantages 1.Cold Start: There needs to be enough other users already in the system to find a match. 2.Sparsity: Most users do not rate most items and hence the user-item matrix is typically very sparse. It is hard to find users that have rated the same items. 3.First Rater: It is not possible to recommend an item that has not been previously rated. This problem comes for new items mostly. 4.Popularity Bias: CF cannot recommend items to someone with unique tastes. In that case there is a tendency to recommend the popular.
  • 15. Content Based Filtering ❖ It uses only the item data maintaining a profile for each item. Each user is assumed to operate independently. No need for data on other users. ❖ Considering the attributes or feature of the item, it finds the similarity between items, and recommends the most similar item for an item. ❖ If we consider the content of a movie as director, writer, cast etc., then each of these attribute can be considered as a feature.
  • 16. Similarity We recommend the items to the users which are very much similar to the rated item by the user. We define similarity S between objects Oi and Oj as S(Oi , Oj) = f(A1i , A1j) + f(A2i , A2j) + · · · + f(Ani , Anj) Here, A1i, A2i .. Ani are the features for the item i. Function f(A1i , A1j) represents the distance (similarity) between the 1st feature for item i and j.
  • 17. Featuresand Distance Measures Features Used in Movie Recommendation with their distance measures
  • 18. Disadvantages 1. Cannot filter items on some assessment of quality, style or viewpoint because of lack of consideration of other people’s experience. 2. Absence of personal recommendations. 3. No serendipitous items i.e. the ability of the system to give an item surprisingly interesting to a user, but not expected or possibly foreseen by the user.
  • 19. HybridApproach We attempt to hybridize collaborative filtering and content based recommendation. Item similarity measure used in content based recommendation is learned from a collaborative social network of users. In content based recommendation every item is represented by a feature vector. The features hold numeric or nominal values representing certain aspects of the item. A variety of distance measures between the feature vectors may be used to compute the similarity of two items.
  • 20. Content Based Similarity Users base their judgments on some latent criteria which is a weighted linear combination of the differences in individual attribute. Accordingly, we define similarity S between objects Oi and Oj as S(Oi , Oj ) = ω1f(A1i , A1j ) + ω2f(A2i , A2j ) + · · · + ωnf(Ani , Anj ) where ωn is the weight given to the difference in value of attribute An between objects Oi and Oj , the difference given by f(Ani, Anj ). weights ω1, ω2, · · · , ωn are obtained from a social collaborative network.
  • 21. Weights From CollaborativeNetwork We describe below a linear regression framework for determining the optimal feature weights. The edge weight between vertices Oi and Oj, E(Oi , Oj ) = # of users who are interested in both Oi , Oj This may be considered as human judgment of similarity between Oi , Oj. ω0 + ω1f(A1i , A1j ) + ω2f(A2i , A2j ) + · · · + ωnf(Ani , Anj ) = E(Oi , Oj ) Solving the above regression equations provide estimates for the values of ω1, ω2, · · · , ωn. If there are l movies under consideration, it is possible to have lC2 regression equations of the above form.
  • 22. Prediction ● Using regression we can solve for the weight vector, W ● User can input the movie for which he wants recommendation (say Oi) ● We check similarity, S(Oi, Oj) of the given movie with all other movies (Oj). ● Each movie’s similarity score is dot_product( S, W ). ● We have to recommend movies which have the maximum similarity score
  • 23. Future Work ● In collaborative filtering, we have a problem of sparsity of data. Very few users actually rate the same movie. ● We can use Clustering Algorithms like K-Means to cluster items or users or both based on their attributes. ● In the hybrid approach, we can use more features to get better predictions. (Currently, we have only 9 features)
  • 24. References 1. https://grouplens.org/datasets/movielens/100k/ - MovieLens Dataset. 2. https://pdfs.semanticscholar.org/1356/f4eda338b58b2840c5f643a988a10088 06f0.pdf - Machine Learning Based Hybrid Recommendation System