Surprise is an easy-to-use open source Python library for recommender systems. Its goal is to make life easier for reseachers who want to play around with new algorithms ideas, for teachers who want some teaching materials, and for students.

Surprise was designed with the following purposes in mind:

- Give the user perfect control over his experiments. To this end, a strong emphasis is laid on documentation, which we have tried to make as clear and precise as possible by pointing out every details of the algorithms. - Alleviate the pain of Dataset handling. Users can use both built-in datasets (Movielens, Jester), and their own custom datasets. - Provide with various ready-to-use prediction algorithms (Neighborhood approaches, SVD, SVD++...) - Make it easy to implement new algorithm ideas. - Provide with tools to evaluate, analyse and compare the algorithms performance. Cross-validation procedures can be run very easily.

Code Quality Rank: L4
Programming language: Python
License: GNU General Public License v3.0 or later

Surprise alternatives and related packages

Based on the "Machine Learning" category

Do you think we are missing an alternative of Surprise or a related project?

Add another 'Machine Learning' Package

Surprise Recommendations

There are no recommendations yet. Be the first to promote Surprise!

Have you used Surprise? Share your experience. Write a short recommendation and Surprise, you and your project will be promoted on Awesome Python.
Recommend Surprise

Recently added Surprise resources

Do you know of a usefull tutorial, book or news relevant to Surprise?
Be the first to add one!