Surprise is a Python scikit designed for building and analyzing recommender systems based on explicit rating data. It offers a variety of ready-to-use prediction algorithms (including SVD, NMF, k-NN, and others), various similarity measures, and robust tools for dataset handling, performance evaluation, and cross-validation. The library targets researchers, data scientists, and developers who wish to experiment with, build, and benchmark collaborative filtering models for recommendation tasks.
Visit Surprise's official website for product details and getting started.
Access the source code, report issues, and contribute to the Surprise library.