{"id":16739465,"url":"https://github.com/williamfalcon/matrix-factorization-recommender-systems-netflix-paper-implementation","last_synced_at":"2025-04-10T13:13:35.770Z","repository":{"id":75973699,"uuid":"52682093","full_name":"williamFalcon/Matrix-Factorization-Recommender-Systems-Netflix-Paper-Implementation","owner":"williamFalcon","description":"Implementation of the Matrix Factorization Recommender System from the Netflix Paper","archived":false,"fork":false,"pushed_at":"2016-10-18T02:04:49.000Z","size":6,"stargazers_count":32,"open_issues_count":0,"forks_count":19,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-24T11:56:54.914Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/williamFalcon.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-02-27T18:28:30.000Z","updated_at":"2024-06-13T23:10:04.000Z","dependencies_parsed_at":null,"dependency_job_id":"7f4266ae-720b-48bc-a326-f46e672809e6","html_url":"https://github.com/williamFalcon/Matrix-Factorization-Recommender-Systems-Netflix-Paper-Implementation","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/williamFalcon%2FMatrix-Factorization-Recommender-Systems-Netflix-Paper-Implementation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/williamFalcon%2FMatrix-Factorization-Recommender-Systems-Netflix-Paper-Implementation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/williamFalcon%2FMatrix-Factorization-Recommender-Systems-Netflix-Paper-Implementation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/williamFalcon%2FMatrix-Factorization-Recommender-Systems-Netflix-Paper-Implementation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/williamFalcon","download_url":"https://codeload.github.com/williamFalcon/Matrix-Factorization-Recommender-Systems-Netflix-Paper-Implementation/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248225653,"owners_count":21068078,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2024-10-13T00:51:20.266Z","updated_at":"2025-04-10T13:13:35.597Z","avatar_url":"https://github.com/williamFalcon.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ML Matrix Factorization recommender\nImplementation of the [winning recommender system from the Netflix competition](https://datajobs.com/data-science-repo/Recommender-Systems-%5BNetflix%5D.pdf).\nUses matrix decomposition to derive a P and Q matrix which can be used to make predictions.  \nUses gradient descent to arrive at the solution.  \n\n## How to Use.\n\nPredict using the ProductRecommender Class.   \nCan be used in two ways:   \n   \n1. First: To recommend using only a users x product matrix along with a k value for # of features to discover.   \n```python\n    #import predictor\n    from recommender.matrix_factor_model import ProductRecommender\n    \n    # fake data. (2 users, three products)\n    user_1 = [1, 2, 3]\n    user_2 = [0, 2, 3]\n    data = [user_1, user_2]\n    \n    # train model\n    modelA = ProductRecommender()\n    modelA.fit(data)\n    \n    # predict for user 2 \n    modelA.predict_instance(1)\n    # prints array([ 0.9053102 ,  2.02257811,  2.97001565])\n```   \n   \n2. Second: To recommend when you want to provide a list of features for movies and only learn P (user -\u003e feature strength).\n```python\n    #import predictor\n    from recommender.matrix_factor_model import ProductRecommender\n    \n    # fake data. (2 users, three products)\n    user_1 = [1, 2, 3]\n    user_2 = [0, 2, 3]\n    data = [user_1, user_2]\n    \n    # product features (year made, height)\n    product_1 = [2014, 74]\n    product_2 = [2016, 89]\n    Q = [product_1, product_2]\n    \n    # train model passing in Q\n    modelB = ProductRecommender()\n    modelB.fit(data, Q)\n    \n    # predict for user 2 \n    modelB.predict_instance(1)\n    # prints array([ 0.9053102 ,  2.02257811,  2.97001565])\n```   \n   \n## Defaults   \n|parameter   |default value   |description   |\n|---|---|---|\n|user_x_product   |Must provide   |User x product Matrix   |\n|product_x_features   |Optional (null)   |Products_x_features matrix. Sets latent_features_guess to number of features here. |\n|latent_features_guess   |2   |Features we want to learn   |\n|learning_rate   |0.0002   |Size of learning steps   |\n|steps   |5000   |Max number of steps until convergence   |\n|regularization_penalty   |0.02   |Penalty for over/under fitting   |\n|convergeance_threshold   |0.001   |Error amount to terminate (we solved the problem). Otherwise uses steps.   |  \n    \n## License  \nMIT  \n\n## Author  \nWilliam Falcon  \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwilliamfalcon%2Fmatrix-factorization-recommender-systems-netflix-paper-implementation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwilliamfalcon%2Fmatrix-factorization-recommender-systems-netflix-paper-implementation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwilliamfalcon%2Fmatrix-factorization-recommender-systems-netflix-paper-implementation/lists"}