All Projects → khanhnamle1994 → Metarec

khanhnamle1994 / Metarec

PyTorch Implementations For A Series Of Deep Learning-Based Recommendation Models (IN PROGRESS)

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Metarec

Recommendation-System-Baseline
Some common recommendation system baseline, with description and link.
Stars: ✭ 34 (-71.67%)
Mutual labels:  collaborative-filtering, matrix-factorization
Daisyrec
A developing recommender system in pytorch. Algorithm: KNN, LFM, SLIM, NeuMF, FM, DeepFM, VAE and so on, which aims to fair comparison for recommender system benchmarks
Stars: ✭ 280 (+133.33%)
Mutual labels:  collaborative-filtering, matrix-factorization
Awesome-Machine-Learning-Papers
📖Notes and remarks on Machine Learning related papers
Stars: ✭ 35 (-70.83%)
Mutual labels:  collaborative-filtering, matrix-factorization
Quick-Data-Science-Experiments-2017
Quick-Data-Science-Experiments
Stars: ✭ 19 (-84.17%)
Mutual labels:  collaborative-filtering, matrix-factorization
Mrsr
MRSR - Matlab Recommender Systems Research is a software framework for evaluating collaborative filtering recommender systems in Matlab.
Stars: ✭ 13 (-89.17%)
Mutual labels:  collaborative-filtering, matrix-factorization
Recommendation.jl
Building recommender systems in Julia
Stars: ✭ 42 (-65%)
Mutual labels:  collaborative-filtering, matrix-factorization
Librec
LibRec: A Leading Java Library for Recommender Systems, see
Stars: ✭ 3,045 (+2437.5%)
Mutual labels:  collaborative-filtering, matrix-factorization
Implicit
Fast Python Collaborative Filtering for Implicit Feedback Datasets
Stars: ✭ 2,569 (+2040.83%)
Mutual labels:  collaborative-filtering, matrix-factorization
Hcn Prototypeloss Pytorch
Hierarchical Co-occurrence Network with Prototype Loss for Few-shot Learning (PyTorch)
Stars: ✭ 17 (-85.83%)
Mutual labels:  meta-learning, tensorboard
Recsys2019 deeplearning evaluation
This is the repository of our article published in RecSys 2019 "Are We Really Making Much Progress? A Worrying Analysis of Recent Neural Recommendation Approaches" and of several follow-up studies.
Stars: ✭ 780 (+550%)
Mutual labels:  collaborative-filtering, matrix-factorization
matrix-completion
Lightweight Python library for in-memory matrix completion.
Stars: ✭ 94 (-21.67%)
Mutual labels:  collaborative-filtering, matrix-factorization
Recoder
Large scale training of factorization models for Collaborative Filtering with PyTorch
Stars: ✭ 46 (-61.67%)
Mutual labels:  collaborative-filtering, matrix-factorization
Book recommend
基于协同过滤的书籍推荐系统
Stars: ✭ 149 (+24.17%)
Mutual labels:  django, collaborative-filtering
recommender system with Python
recommender system tutorial with Python
Stars: ✭ 106 (-11.67%)
Mutual labels:  collaborative-filtering, matrix-factorization
Polara
Recommender system and evaluation framework for top-n recommendations tasks that respects polarity of feedbacks. Fast, flexible and easy to use. Written in python, boosted by scientific python stack.
Stars: ✭ 205 (+70.83%)
Mutual labels:  collaborative-filtering, matrix-factorization
Neural Collaborative Filtering
pytorch version of neural collaborative filtering
Stars: ✭ 263 (+119.17%)
Mutual labels:  collaborative-filtering, matrix-factorization
Recotour
A tour through recommendation algorithms in python [IN PROGRESS]
Stars: ✭ 140 (+16.67%)
Mutual labels:  collaborative-filtering, matrix-factorization
Rsparse
Fast and accurate machine learning on sparse matrices - matrix factorizations, regression, classification, top-N recommendations.
Stars: ✭ 145 (+20.83%)
Mutual labels:  collaborative-filtering, matrix-factorization
Cornac
A Comparative Framework for Multimodal Recommender Systems
Stars: ✭ 308 (+156.67%)
Mutual labels:  collaborative-filtering, matrix-factorization
Deeprec
An Open-source Toolkit for Deep Learning based Recommendation with Tensorflow.
Stars: ✭ 954 (+695%)
Mutual labels:  collaborative-filtering, matrix-factorization

Welcome to the research code repository for my Master's Thesis work on Deep Learning Based Recommendation Systems. This work is still in progress.

header-image

Background

Recommendation systems are technologies and techniques that can provide recommendations for items to be of use to a user. The recommendations provided are aimed at supporting their users in various decision-making processes, such as what products to purchase, what music to listen, or what routes to take. Correspondingly, various techniques for recommendation generation have been proposed and deployed in commercial environments. The goal of this research is to impose a degree of order upon this diversity by presenting a coherent and unified repository of the most common recommendation methods to solve the collaborative filtering problem: from classic matrix factorization to cutting-edge deep neural networks.

Dataset

For my experiments thus far, I worked with the MovieLens1M Dataset, a famous dataset within the recommendation systems research community. The data contains 1,000,209 anonymous ratings of approximately 3,900 movies made by 6,040 MovieLens users who joined MovieLens in 2000.

Research Models

Matrix Factorization

Here are the 7 different Matrix Factorization models for Collaborative Filtering:

Multi-Layer Perceptron

Here are the 5 different Multilayer Perceptron models for Collaborative Filtering:

Autoencoders

Here are the 6 different Autoencoders models for Collaborative Filtering:

Boltzmann Machines

Here are the 3 different Boltzmann Machines models for Collaborative Filtering:

Production App

Django Web Service

Here I built a recommendation web service with Python 3.6 and Django 2.2.4. It has these properties:

  • Can handle many API endpoints,
  • Each API endpoint can have several research algorithms with different versions,
  • Research code and artifacts (files with model parameters) are stored in the code repository (git),
  • Supports fast deployments and continuous integration (tests for both: server and research code),
  • Supports monitoring and algorithm diagnostic (support A/B tests),
  • Is scalable (deployed with containers),
  • Has a user interface.

Blog Posts

I have written a series of blog posts documenting my experiments on my website:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].