Chapter 3. Collaborative Filtering
Given a database of user ratings for products, where a set of users have rated a set of products, collaborative filtering algorithms can give ratings for products yet to be rated by a particular user. This leverages the neighborhood information of the user to provide such recommendations. The input to collaborative filtering is a matrix, where the rows are users and the columns are items. Cell values are the ratings provided by the user for a product. Ratings of products are ubiquitous in today's internet world. IMDB, Yelp, Amazon, and similar systems today have a rating system deployed to capture user preferences. Preferences are typically captured by a rating system, where the ratings are defined as stars or a points system.
Based on the underlying technology, collaborative filtering can be:
- An online system, where the whole user product preference matrix is loaded into the memory to make recommendations for a user and his yet to be rated product combination...