Package: reclib
a Python library for recommender system, which is hyper-modular, extensively tested and easy to extend.
Reclib makes it easy to design and evaluate deep learning models for recommender system, along with the infrastructure to easily run them in the cloud or on your laptop.The CLI part is under construction for now.Package Overviewrecliban Python library for recommender systemreclib.commandsfunctionality for a CLI and web servicereclib.dataa data processing module for loading and encoding datasets for representationreclib.modelsa collection of state-of-the-art modelsreclib.modulesa collection of PyTorch modules for use with recommender systemreclib.nntensor utility functions, such as initializers and activation functionsreclib.servicea web server to that can serve demos for your modelsreclib.trainingfunctionality for training modelsInstallationreclib requires Python 3.7.1 or later. The preferred way to install reclib is viapip.  Just runpip install reclibin your Python environment and you're good to go!If you need pointers on setting up an appropriate Python environment or would like to install reclib using a different method, see below.Windows is currently not officially supported, although we try to fix issues when they are easily addressed.Installing via pipSetting up a virtual environmentCondacan be used set up a virtual environment with the
version of Python required for reclib.  If you already have a Python 3.7 or 3.7
environment you want to use, you can skip to the 'installing via pip' section.Download and install Conda.Create a Conda environment with Python 3.7condacreate-nreclibpython=3.7Activate the Conda environment. You will need to activate the Conda environment in each terminal in which you want to use reclib.sourceactivatereclibInstalling the library and dependenciesInstalling the library and dependencies is simple usingpip.pipinstallreclibThat's it! You're now ready to build and train reclib models.
reclib installs a script when you install the python package, meaning you can run reclib commands just by typingreclibinto a terminal.You can now test your installation withreclib test-install.pipcurrently installs Pytorch for CUDA 9 only (or no GPU). If you require an older version,
please visithttps://pytorch.org/and install the relevant pytorch binary.FeaturesPythonicEasy to useState-of-the-artModelsPlease refer to the documentsMovieLens 1MModelMAPnDCG@kPrecision@kRecall@kRMSEMAER2AucExplained VarianceAutomaticFeatureInteraction0.7872AttentionalFactorizationMachine0.77824DeepCrossNetwork0.7928DeepFactorizationMachine0.7928FieldAwareFactorizationMachine0.7928FactorizationMachine0.7928FieldAwareNeuralFactorizationMachine0.7928FactorizationSupportedNeuralNetwork0.7928NeuralFactorizationMachine0.7928ProductNeuralNetwork0.7928WideAndDeep0.7928ExtremeDeepFactorizationMachine0.800158IssuesEveryone is welcome to file issues with either feature requests, bug reports, or general questions. As a small team with only one person, we may ask for contributions if a prompt fix doesn't fit into our roadmap. We allow users a two week window to follow up on questions, after which we will close issues. They can be re-opened if there is further discussion.ContributionsIf you would like to contribute a larger feature, we recommend first creating an issue with a proposed design for discussion. This will prevent you from spending significant time on an implementation which has a technical limitation someone could have pointed out early on. Small contributions can be made directly in a pull request.Pull requests (PRs) must have one approving review and no requested changes before they are merged.LicenceApache 2.0