.NET collaborative filtering framework
Real-time product recommendation system
- Pure C# recommendation engine: port of Apache Mahout "Taste" Recommendation/Collaborative filtering Framework with dependencies (about 800kb of code) and unit test (283 original tests are passed). Does not depend on 3rd party libraries or native applications.
- Mature framework for storage, evaluation, online and offline computation of recommendations
- Supports all major types of production-ready recommenders: User-based, Item-based, SVD-based
- Similarity in users or items: Euclidian distance, Surprise and Coincidence (LLR), Tanimoto coefficient, Pearson correlation and others
- Designed for performance, scalability and flexibility: optimized implementations of in-memory structures and high-precision math functions (inlcuding Mersenne Twister random generator), parallel implementations of SVD-factorizers, computation cache support etc.
- Open source: NReco.Recommender on GitHub (AGPL license)
- Supports both full .NET Framework and .NET Core, can be used as REST microservice from any web application
- MovieLensMvc: MVC app that makes recommendations by MovieLens dataset
- SqlDbSource: item-to-item recommendations by data from SQL database ('northwind' orders)
- Evaluator: WinForms utility that helps to evaluate recommendation engine parameters (like similarity function) for both user-based and item-based recommendation algorithms.
download and pricing
Recommender examples pack
C# examples, NO support, AGPL license (for non-commercial/evaluation/testing purposes only)
|Download for Free|
Recommender commercial license pack
Includes: perpetual, royalty-free, per-developer license for component usage/redistribution (without AGPL limitations), 1 year email support subscription.
Recommender SaaS license pack
Includes: perpetual, single-deployment license for usage in SaaS application, 1 year email support subscription.
|$499 - Order Now|
quick purchase process
- 1 Choose a package
- 2 Pay online
- 3 Download the package
how to use
- Add reference to NReco.Recommender.dll assembly
OR install NReco.Recommender nuget package
- Configure recommendation engine:
var model = new FileDataModel("data.csv"); var similarity = new LogLikelihoodSimilarity(model); var neighborhood = new NearestNUserNeighborhood(3, similarity, model); var recommender = new GenericUserBasedRecommender(model, neighborhood, similarity); var recommendedItems = recommender.Recommend(userId, 5);
Have a question?What's next?
Feel free to ask.
frequently asked questions
- Choose what do you want to recommend; this may be anything like products, articles, books, movies, cars, tasks etc
- Collect or infer users preferences from existing data (transactions in SQL database, logs etc): pairs like
- Evaluate and choose appropriate recommendation algorithm and its parameters; NReco.Recommender includes Evaluator GUI utility that simplifies this process.
- Integrate recommendation engine into your application: make automatic predictions about user interests in the real time, or pre-calculate recommendations into simple (item) → (recommended items) hash table.
User-based: recommended items are based on the similarity between two users. Use this recommender
if you want to get personalized recommendation and already know concere user's preferences; recommendation
is based on assumption that 2 similar users "share" their preferences in items. This approach works fine
for recommening movies, TV-shows, music etc.
- Item-based: recommended items are based on the similarity between items. This kind of recommendation is usedful if you know only the fact that new user is interested in concrete item: then, it is possible to recommend items that are similar to this concrete item (by preferences data) like Amazon does. This approach often used in e-Commerce; also it is possible to pre-calculate all recommendations in background (as usually product catalog has limited number of items) and show them without affecting website performance at all.
Buying a commercial license is mandatory as soon as you develop commercial activities distributing the NReco Recommender inside your product or deploying it on a network without disclosing the source code of your own applications under the AGPL license.
These activities include:
- offering paid services to customers as an ASP
- making recommendations in the cloud or in a web application
- shipping NReco Recommender with a closed source product
- Book Mahout in Action PDF version
- Part 1 is about making recommendations: what is collaborative filtering, how to make recommendations with Mahout. All code snippets are applicable to Recommender. This intoduction is strongly recommended if you're new to collaborative filtering and recommendation algorithms.
- Get Started Mahout-based collaborative filtering engine overview
- The best entry point into Mahout recommender engine. Everything in this article is applicable to NReco Recommender.
- How-To Creating a User-Based Recommender in 5 minutes
- Quick how-to that explains how to use Mahout CF framework on practice.
Refund policy. If you are not satisfied with your purchase, within 30 days from the purchase date, we will fully refund the cost of your order.
Get Download Link
Please let us know where to send the download link for
Make sure your email address is correct and up-to-date.