top | item 776221

The fallacy in the Netflix algorithm

50 points| cwan | 16 years ago |scienceblogs.com | reply

17 comments

order
[+] larryfreeman|16 years ago|reply
He's not correct about the Netflix Prize algorithms. The leading ones all assume time-effects so that your rating on one day is not the same as on another day.

For the explanation of the winning team's view on time-effects as of 2008, see here: http://research.att.com/~volinsky/netflix/Bellkor2008.pdf

For a simpler example of a time-based global effect, (see User x Time Effect, for example): http://algorithmsanalyzed.blogspot.com/2008/05/bellkor-algor...

[+] ovi256|16 years ago|reply
I would also recommend Yehuda Koren's (Bellkor leader, if I recall correctly) KDD 09 excellent paper, "Collaborative Filtering with Temporal Dynamics" http://research.yahoo.com/pub/2824 which speaks exclusively of how to handle temporal dynamics.
[+] durana|16 years ago|reply
Some of the new models that came out of the Netflix Prize do take into account temporal changes. From a user perspective, it seems to be how a user's rating style can change over time and how a user's taste in movies can change with time. So the author is wrong when he says the models don't take into account temporal changes.

The author suggests that the decision making process around what movie to watch in the future is different from the process of deciding what movie to watch right now. None of the models I've seen involved with the Netflix Prize try to take this into account as far as I can tell. I'm not sure how being able to make recommendations tailored to these two different decision making processes would be of value, but it would be different from the existing published models.

[+] frossie|16 years ago|reply
Let me get this right. Dude doesn't bother to rate movies, and then complains that an algorithm based on movie ratings fails to read his mind?

If you keep putting on Criterion discs on your queue and then fail to watch them or rate them, what would you like the poor software to do exactly?

Netflix has an excellent method for dealing with the highbrow/lowbrow problem - it is called multiple profiles. If you want some brainless mind candy for Friday night with your mates, make a mindcandy profile on your account. Make a Criterion queue for your cinephile Sunday group. You will find the software does an excellent job of providing you with ratings tuned to your preferences.

[+] jpwagner|16 years ago|reply
You are way off here.

The article was not a customer support complaint about his personal account. Sure he could've written this article a helluva lot better, but his point is 100% valid which you implicitly agree with by recommending he open multiple profiles.

Remember that this guy is a writer not an engineer. His solution is likely bad! So throw out the idea of basing ratings on times of day or mood, etc. The problem statement is still there and valid:

My preferences change over time. How can a good recommendation algorithm account for that?

Brainstorm away...

[+] wglb|16 years ago|reply
Thoughtful article, but is "the software tries to predict how I'll feel about movies based on my past ratings" this strictly true? Might it not be a broader predictor of what you might like in a changing landscape?

And most seriously, it is not about you, it is really about netflix. That is to say, it may not totally please your every whim, but if it improves netflix predictions over all of its users, it is a big win for them.

[+] sh1mmer|16 years ago|reply
I disagree with the article. If his point has merit it might be that the data for the Netflix algorithm is the wrong or, more probably, incomplete. That doesn't invalidate it, rather it means the factors are more complex.

Netflix can't know that he leaves Chaplain DVDs on his player unwatched for a week, but it does know that he returns low-brow stuff faster. That faster turn-around probably indicates a behavior. If that data wasn't exposed in the prize, then maybe Netflix will look at exposing it for the next prize, or adding it themselves.

[+] kqr2|16 years ago|reply
As Netflix streams more movies, it might give them the ability to better predict when you might like to watch certain types of movies.