Giter Site home page Giter Site logo

shahpriyanshi / collaborative_filtering_from_scratch_netflix_movie_recommendation Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 1.0 1.55 MB

Jupyter Notebook 100.00%
machine-learning collaborative-filtering python3 machine-learning-from-scratch netflix-dataset

collaborative_filtering_from_scratch_netflix_movie_recommendation's Introduction

Collaborative_Filtering_from_scratch

Neflix_movie_recommendation

Implemented the approach by reading the research paper:

Empirical Analysis of Predictive Algorithms for Collaborative Filtering.

Approach:

1)I converted the dataset into a data frame format where rows represent users, columns represent movies and values represent ratings.
2)Fitted the dataset into Nearest Neighbor algorithm
3)Created a nn function which calculates 15 nearest neighbors of each user and then calculates the weight similarities between two user pairs at a time in a 2D matrix using the formula given in homework research paper.
4)Created a prediction function which takes userid and movieid as input and calculates predicted movie rating based on the formula in the paper.

Time taken to execute:

Took around 4 hours to find predictions of all test data points in Google collab, might take more time in other IDE and environment

Results:

RMSE on test (100478) data points: 0.9886979
MAE on test data points: 0.790226

Dataset:

Netflix movie dataset

How to Run:

For each file, please edit the Dataset path in the codes. Run each cell in the notebook file

Code files:

Please refer the ipynb files for the precomputed outputs of every code if you like.
1)collaborative_filtering.ipynb file:
This file contains the implementation of Collaborative Filtering as per the equation and concepts mentioned in the research paper given in the homework file.

  • predictions.txt file contains predictions of ratings on test data

collaborative_filtering_from_scratch_netflix_movie_recommendation's People

Contributors

shahpriyanshi avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

robsonbrandao

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.