Project website

Amazon’s book recommendation system is well known and widely used. It is not without its flaws, however. As a user–user-based collaborative filtering system, it is susceptible to a rich-get-richer effect in which popular items get more popular, while obscure items get pushed down even further. It also attempts to recommend based on all of a user’s purchases, which can make it difficult to identify distinct genres of interest.

Pandora’s Music Genome Project is a recommender system that relies not on user preferences, but on attributes of songs themselves. That means that it avoids the rich-get-richer effect to which collaborative filtering is prone. Pandora also allows each user to create their own lists of songs, and then recommends songs that it thinks belong on that list. This avoids the muddied waters that result when a system attempts to recommend based on the general preferences of a user with distinct streams of preference.

We envision an application that recommends books based on a model very similar to Pandora’s, which recommends books based on the attributes of a user-selected list of books, rather than a collaborative filtering of all of the books the user likes.

A production system of this nature could leverage the Goodreads API, using user shelves as the user-selected list of books. We have designed the (mini) Book Genome Project with that potential end goal in mind.

Want to learn more? Read on!