Fast .NET Collaborative Filtering for implicit Datasets.
This project is based on Python library Implicit by Ben Frederickson. Therefore provides fast C# implementations of several (so far only ALS) different popular recommendation algorithms for implicit feedback datasets:
- Alternating Least Squares as described in the papers Collaborative Filtering for implicit Feedback Datasets and Applications of the Conjugate Gradient Method for implicit Feedback Collaborative Filtering.
- (PLANNED) Bayesian Personalized Ranking.
- (PLANNED) Item-Item Nearest Neighbour models using Cosine, TFIDF or BM25 as a distance metric.
All models have multi-threaded training routines, using Parallel execution to fit the models in parallel among all available CPU cores. Library uses MathNet.Numerics to perform linear algebra calculations, so it is possible to use Intel Math Kernel Library (MKL) to speed up computations by following this guide.
- Implicit, MIT License