1. Home
  2. Recommender Systems
  3. Open Source Recommender Systems

Open Source Recommender Systems

The open-source recommender systems are:

  1. The Universal Recommender Is built on the modern Correlated Cross-Occurrence Algorithm that uses many indicators of user taste, and so can target most use cases. Source on github built-in to the Harness ML server or as a template for the older PredictionIO server (highest-rated template). Active and commercially supported.
  2. PredictionIO is built on technologies Apache SparkApache HBase and Spray. It is a machine learning server that can be used to create a recommender system. The source can be located on github and it looks very active.
  3. Raccoon Recommendation Engine is an open source Node.js based collaborative filter that uses Redis as a store. It is effectively abandoned.
  4. HapiGER is an open source Node.js collaborative filtering engine, which can use in-memory, PostgreSQL or rethinkdb. Reasonably active development (when I have time 🙂
  5. EasyRec Java and Rest based recommendations. Abandoned
  6. Mahout Hadoop/linear algebra based data mining
  7. Seldon is a Java based prediction engine built on technologies like Apache Spark. It provides a demo movie recommendations application here.
  8. LensKit is a Java based research recommender system designed for small-to-medium scale.
  9. Oryx v2 a large scale architecture for machine learning and prediction (suggested by Lorand)
  10. RecDB is a PostgreSQL extension to add recommendation algorithms like collaborative filtering directly into the database.
  11. Crab a python recommender based on the popular packages NumPy, SciPy, matplotlib. The main repository seems to be abandoned.
  12. predictoris a ruby recommender gem. This uses Jaccard or Sorenson-Dice coefficient to priovide both item centric e.g. “Users that read this book also read …” and user centric e.g. “You read these 10 books, so you might also like to read …” recommendations. Looks a bit neglected.
  13. Surprise A Python scikit for building, and analyzing (collaborative-filtering) recommender systems. Various algorithms are built-in, with a focus on rating prediction.
  14. LightFM is an actively-developed Python implementation of a number of collaborative- and content-based learning-to-rank recommender algorithms. Using Cython, it easily scales up to very large datasets on multi-core machines and is used in production at a number of companies, including Lyst and Catalant.
  15. Rexy is an open-source recommendation system based on a general User-Product-Tag concept and a flexible structure that has been designed to be adaptable with variant data-schema. Rexy is written in Python-3.5 in a highly optimized, Pythonic and comprehensive way that makes it so flexible against the changes. It also used Aerospike as the database engine which is a high speed, scalable, and reliable NoSQL database.
  16. QMF is a fast and scalable C++ library for implicit-feedback matrix factorization models.
  17. tensorrec is a TensorFlow recommendation algorithm and framework in Python.
  18. hermes is a recommendation framework for collaborative-filtering and content-based algorithms in PySpark. Main repository has been abandoned.
  19. Spotlight utilizes factorization model and sequence model in the back end for building a basic recommendation system. It’s a well-implemented Python framework.
  20. recommenderlab provides a research infrastructure to test and develop recommender algorithms including UBCF, IBCF, FunkSVD and association rule-based algorithms.
  21. CaseRecommender is a Python implementation of a number of popular recommendation algorithms. The framework aims to provide a rich set of components from which you can construct a customized recommender system from a set of algorithms.
  22. ProbQA is a C++/CUDA recommender system that uses Bayesian approach to learning how answers to its questions map to best recommendations of a target being searched. On GitHub it’s available with an example of learning the binary search algorithm. Its application to a video game recommendation system is available on the internet as a demo of the engine.
  23. Microsoft Recommenders contains examples, utilities and best practices for building recommendation systems. Implementations of several state-of-the-art algorithms are provided for self-study and customization in your own applications.
  24. Gorse is an offline recommender system backend based on collaborative filtering written in Go. It implements mutiple rated or ranked based recommenders and multiple tools ranging from import/export tools to RESTful recommender server.
Was this article helpful to you? Yes No

How can we help?