Hitflip DVD recommender is using Slope One collaborative filtering algorithm

Jan Miczaika from the Otto Beisheim Graduate School of Management just sent me an email. Their movie (DVD) recommender system hitflip (German site) is using the Slope One collaborative filtering algorithm I presented at SIAM Data Mining 2005. I believe he found useful the technical report I wrote about it (Implementing a Rating-Based Item-to-Item Recommender System in PHP/SQL).

Jan had interesting comments:

  • Instead of working live, you can replace the INSERTs to your DMBS by some INSERT DELAYED and do batch processing. We had thought about this option with inDiscover, but it proved to be unnecessary for us, even using MySQL which has relatively slow INSERTs. Batch processing is an ok alternative when ressources are limited, but, myself, I prefer true online systems.
  • Brand new DVDs that have not been rated a sufficient number of times (say twice) are not recommended and one trick you can use is to recommend new DVDs which are similar to DVDs the user might like. This is a form of cold start problem and Jan’s solution appears pretty generic and sensible.
  • In his experience, it is useful to precompute recommendations for users, only updating them when this particular user enters new data. Of course, in theory, you should invalidate these recommendations continuously as new data (form other users) is entered. But Jan felt it was “close enough” I suspect.

Published by

Daniel Lemire

A computer science professor at the University of Quebec (TELUQ).

Leave a Reply

Your email address will not be published. Required fields are marked *

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax