Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Where can I learn about recommendation systems?

I'd like to play around with building a recommendations system, and by that I mean an algorithm that looks at preferences and/or reviews posted by a user and then makes recommendations for them, similar to what netflix or amazon use.

What are some good resources for learning how to write something like this? Where should I start?

like image 223
TM. Avatar asked Oct 20 '09 01:10

TM.


2 Answers

Check out the Wikipedia page on the Netflix Prize and its discussion forum. Also, the somewhat related 2009 GitHub Contest is a good source for full source code on a number of different recommendation engines. And obviously there's also the Wikipedia page on the topic itself, which has some decent links.

If you start writing your own, you'll want to use a corpus. I'd actually recommend using the Netflix Prize's data set. Just carve the data set into two pieces. Train on the first piece and score your algorithm on the second piece.

Addenda: A somewhat related and scary application of this sort of thing is predicting demographic information: a user's gender, age, household income, IQ, sexual orientation, etc. You could probably do most of these attributes with the Netflix Prize dataset with a fairly high degree of accuracy. Fortunately everyone in that dataset is just a number.

like image 101
Bob Aman Avatar answered Feb 28 '23 06:02

Bob Aman


Take a look at pysuggest a Python library that implements a variety of recommendation algorithms for collaborative filtering (which is used by Amazon.com).

like image 45
Sridhar Ratnakumar Avatar answered Feb 28 '23 06:02

Sridhar Ratnakumar