ANN: consensus 0.1.1 - Collaborative filtering library for Python
Brian Beck
exogen at gmail.com
Sat Mar 18 22:07:09 EST 2006
Last night was the first release of a new (maybe the only?)
collaborative filtering library in Python.
www: http://exogen.case.edu/projects/consensus/
pypi: http://python.org/pypi/consensus/0.1.1
svn: svn://exogen.case.edu/consensus/tags/0.1.1
consensus currently includes three collaborative filtering models:
vector distance, simple similarity, and constrained Pearson
correlation. Several additional models are in development, as well as
improvements to the current models.
# Usage
Adapting the rating histories of users to fit into consensus is simple:
feed is a dictionary mapping any unique user object (usernames, id
numbers, your own hashable user class) to a dictionary mapping items
that user has rated to their rating for each item.
# Examples
In the repository you'll find a real-world example of using consensus:
recommending songs based on the listening histories of AudioScrobbler
users. A 1,000 user dataset is included and demonstrates how easy it
is to make suggestions. The recommendations we've seen so far look
pretty good.
# Feedback
This is the first release, so feedback is welcome and encouraged.
We're currently looking into making a better interface to our classes
to support models that rely on caching, etc.
--
Brian Beck
Adventurer of the First Order
More information about the Python-list
mailing list