{"id":19030990,"url":"https://github.com/rahulb813/mvscr","last_synced_at":"2026-05-07T02:31:21.129Z","repository":{"id":204345482,"uuid":"704778084","full_name":"rahulb813/mvscr","owner":"rahulb813","description":"An alternative movie recommendation system for the CineMatchSM with better predictions. Trained with a Kaggle dataset of over 450000+ entries.","archived":false,"fork":false,"pushed_at":"2023-11-05T17:07:58.000Z","size":3244,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-21T20:23:08.242Z","etag":null,"topics":["gridsearchcv","knn","python","scikit-learn","scipy-sparse","svd","tensorflow","xgboost"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rahulb813.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-10-14T04:20:18.000Z","updated_at":"2023-10-29T20:38:05.000Z","dependencies_parsed_at":null,"dependency_job_id":"394c6336-aec5-478e-80c3-59795d3494d0","html_url":"https://github.com/rahulb813/mvscr","commit_stats":{"total_commits":12,"total_committers":1,"mean_commits":12.0,"dds":0.0,"last_synced_commit":"bd63bab8ffa3290024d29a8b7fa39c31e9593c6b"},"previous_names":["rahulb813/mvscr"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rahulb813/mvscr","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rahulb813%2Fmvscr","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rahulb813%2Fmvscr/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rahulb813%2Fmvscr/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rahulb813%2Fmvscr/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rahulb813","download_url":"https://codeload.github.com/rahulb813/mvscr/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rahulb813%2Fmvscr/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32720109,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-07T02:14:30.463Z","status":"ssl_error","status_checked_at":"2026-05-07T02:14:29.405Z","response_time":62,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gridsearchcv","knn","python","scikit-learn","scipy-sparse","svd","tensorflow","xgboost"],"created_at":"2024-11-08T21:20:47.049Z","updated_at":"2026-05-07T02:31:21.110Z","avatar_url":"https://github.com/rahulb813.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Netflix Movie Recommendation System\n- An alternative to the CineMatchSM system.\n- Optimized for better predictions\n- Trained by using 17700 unique movie IDs rated by 480189 unique users. \n- Tools \u0026 technologies used: Python, XGBoost, TensorFlow, KNN, SVD.\n- Datasets and remaining files are added [here](https://drive.google.com/drive/u/1/folders/1pOteYWIGiihtrVNPnVsdd8ZJNoAwLhcl)\n## Business Problem\n\n\u003cp\u003eNetflix 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.\u003c/p\u003e\n\n\u003cp\u003eNow 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.\u003c/p\u003e\n\n\u003cp\u003eCredits: https://www.netflixprize.com/rules.html\u003c/p\u003e\n\n## Problem Statement\n\n\u003cp\u003eNetflix provided a lot of anonymous rating data, and a prediction accuracy bar that is 10% better than what Cinematch can do on the same training data set. (Accuracy is a measurement of how closely predicted ratings of movies match subsequent actual ratings.)\u003c/p\u003e\n\n## Sources\n* https://www.netflixprize.com/rules.html\n* https://www.kaggle.com/netflix-inc/netflix-prize-data\n* Netflix blog: https://medium.com/netflix-techblog/netflix-recommendations-beyond-the-5-stars-part-1-55838468f429 (very nice blog)\n* surprise library: http://surpriselib.com/ (we use many models from this library)\n* surprise library doc: http://surprise.readthedocs.io/en/stable/getting_started.html (we use many models from this library)\n* installing surprise: https://github.com/NicolasHug/Surprise#installation\n* Research paper: http://courses.ischool.berkeley.edu/i290-dm/s11/SECURE/a1-koren.pdf (most of our work was inspired by this paper)\n* SVD Decomposition : https://www.youtube.com/watch?v=P5mlg91as1c\n\n\u003cp\u003e\u003cb\u003eReal world/Business Objectives and constraints\u003c/b\u003e\u003c/p\u003e \n\n\u003cp\u003e\u003cb\u003eObjectives:\u003c/b\u003e\u003c/p\u003e\n1.\tPredict the rating that a user would give to a movie that he has not yet rated.\u003cbr\u003e\n2.\tMinimize the difference between predicted and actual rating (RMSE and MAPE).\n\n\u003cp\u003e\u003cb\u003eConstraints:\u003c/b\u003e\u003c/p\u003e\n1.\tSome form of interpretability.\n2.\tThere is no low latency requirement as the recommended movies can be precomputed earlier.\n\n\u003cp\u003e\u003cb\u003eType of Data:\u003c/b\u003e\u003c/p\u003e\n* There are 17770 unique movie IDs.\n* There are 480189 unique user IDs.\n* There are ratings. Ratings are on a five star (integral) scale from 1 to 5.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frahulb813%2Fmvscr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frahulb813%2Fmvscr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frahulb813%2Fmvscr/lists"}