Skip to content

Predicted whether someone will enjoy a movie based on how much they liked or disliked other movies which User watched. Use those predictions to make movie recommendations based on each customer’s unique tastes.

Notifications You must be signed in to change notification settings

bhumiti28/Netflix-Movie-Recommendation-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

Netflix-Movie-Recommendation-System

Business Problem

Netflix is all about connecting people to the movies they love. To help customers find those movies, they developed world-class movie recommendation system: CinematchSM. Its job is to predict whether someone will enjoy a movie based on how much they liked or disliked other movies. Netflix use those predictions to make personal movie recommendations based on each customer’s unique tastes. And while Cinematch is doing pretty well, it can always be made better. Now there are a lot of interesting alternative approaches to how Cinematch works that netflix haven’t tried. Some are described in the literature, some aren’t. We’re curious whether any of these can beat Cinematch by making better predictions. Because, frankly, if there is a much better approach it could make a big difference to our customers and our business. Credits: https://www.netflixprize.com/rules.html

Sources

Real world/Business Objectives and constraints

Objectives:

  1. Predict the rating that a user would give to a movie that he has not yet rated.
  2. Minimize the difference between predicted and actual rating (RMSE and MAPE).

Constraints:

  1. Some form of interpretability.
  2. There is no low latency requirement as the recommended movies can be precomputed earlier.

Type of Data:

  • There are 17770 unique movie IDs.
  • There are 480189 unique user IDs.
  • There are ratings. Ratings are on a five star (integral) scale from 1 to 5.

Getting Started

Start by downloading the project and run "NetflixMoviesRecommendation.ipynb" file in ipython-notebook.

Prerequisites

You need to have installed following softwares and libraries in your machine before running this project.

  1. Python 3
  2. Anaconda: It will install ipython notebook and most of the libraries which are needed like sklearn, pandas, seaborn, matplotlib, numpy, scipy.
  3. XGBoost
  4. Surprise

Installing

  1. Python 3: https://www.python.org/downloads/
  2. Anaconda: https://www.anaconda.com/download/
  3. XGBoost: conda install -c conda-forge xgboost
  4. Surprise: pip install surprise

Built With

  • ipython-notebook - Python Text Editor
  • sklearn - Machine learning library
  • seaborn, matplotlib.pyplot, - Visualization libraries
  • numpy, scipy- number python library
  • pandas - data handling library
  • XGBoost - Used for making regression models
  • Surprise - used for making recommendation system models

About

Predicted whether someone will enjoy a movie based on how much they liked or disliked other movies which User watched. Use those predictions to make movie recommendations based on each customer’s unique tastes.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published