Implementation and comparision of various techniques of building recommender systems, such as:
- Collaborative Filtering
- SVD (Using Dense Matrices)
- CUR (Using Sparse Matrices)
- Latent Factor Model - SVD using Gradient Descent
We use the Movielens 1M movie ratings dataset to train and test the various models. The datasets contain around 1 million anonymous ratings of approximately 3,900 movies made by 6,000 MovieLens users who joined MovieLens in 2000.
- Clone this repo / click "Download as Zip" and extract the files.
- Rename the
sample_config.toml
toconfig.toml
and set the required values. - Ensure Python 3.7 is installed, and in your system
PATH
. - Install pipenv using
pip install -U pipenv
. - In the project folder, run
pipenv install
to install all python dependencies. - Download and extract the dataset (see Dataset section) into a new folder called
dataset
. - To run the recommender for the specific technique, run its module using
pipenv run python <module_name>.py
.