Recommender system

From Wikipedia, the free encyclopedia
Jump to: navigation, search

Recommender systems, recommendation systems or recommendation engines form or work from a specific type of information filtering system technique that attempts to recommend information items (films, television, video on demand, music[1], books, news, images, web pages, etc) that are likely to be of interest to the user. Typically, a recommender system compares a user profile to some reference characteristics, and seeks to predict the 'rating' that a user would give to an item they had not yet considered. These characteristics may be from the information item (the content-based approach) or the user's social environment (the collaborative filtering approach).

Contents

[edit] Overview

When building the user's profile a distinction is made between explicit and implicit forms of data collection.

Examples of explicit data collection include the following:

Examples of implicit data collection include the following:

The recommender system compares the collected data to similar and not similar data collected from others and calculates a list of recommended items for the user. Several commercial and non-commercial examples are listed in the article on collaborative filtering systems. Montaner provides the first overview of recommender systems, from an intelligent agents perspective.[3] Adomavicius provides a new overview of recommender systems.[4] Herlocker provides an overview of evaluation techniques for recommender systems.[5]

Recommender systems are a useful alternative to search algorithms since they help users discover items they might not have found by themselves. Interestingly enough, recommender systems are often implemented using search engines indexing non-traditional data.

[edit] Algorithms

One of the most commonly used algorithms in recommender systems is the k-nearest neighborhood approach.[6]. In a social network, a particular user's neighborhood with similar taste or interest can be found by calculating Pearson Correlation, by collecting the preference data of top-N nearest neighbors of the particular user (weighted by similarity), the user's preference can be predicted by calculating the data using certain techniques.

Another family of algorithms that is widely used in recommender systems is collaborative filtering. One of the most common types of Collaborative Filtering is item-to-item collaborative filtering (people who buy x also buy y), an algorithm popularized by Amazon.com's recommender system. User-based collaborative filtering attempts to model the social process of asking a friend for a recommendation. A particular type of collaborative filtering algorithms uses matrix factorization, a low-rank matrix approximation techique[7][8]. A key advantage of the collaborative filtering approach is that it does not rely on machine analyzable content and therefore it is capable of accurately recommending complex items such as movies without requiring an "understanding" of the item itself.

The Netflix Prize, a contest with a dataset of over 100 million movie ratings and a grand prize of $1,000,000, has energized the search for new and more accurate algorithms. The most accurate algorithm in 2007 used 107 different algorithmic approaches, blended into a single prediction:[9]

Predictive accuracy is substantially improved when blending multiple predictors. Our experience is that most efforts should be concentrated in deriving substantially different approaches, rather than refining a single technique. Consequently, our solution is an ensemble of many methods.

[edit] Recommendation search engines

[edit] See also

[edit] References

  1. ^ How Computers Know What We Want — Before We Do
  2. ^ Parsons, J.; Ralph, P.; Gallagher, K. (July 2004), Using viewing time to infer user preference in recommender systems., AAAI Workshop in Semantic Web Personalization, San Jose, California .
  3. ^ Montaner, M.; Lopez, B.; de la Rosa, J. L. (June 2003), "A Taxonomy of Recommender Agents on the Internet", Artificial Intelligence Review 19 (4): 285–330, doi:10.1023/A:1022850703159, http://www.springerlink.com/content/kk844421t5466k35/ .
  4. ^ Adomavicius, G.; Tuzhilin, A. (June 2005), "Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions", IEEE Transactions on Knowledge and Data Engineering 17 (6): 734–749, doi:10.1109/TKDE.2005.99, http://portal.acm.org/citation.cfm?id=1070611.1070751 .
  5. ^ Herlocker, J. L.; Konstan, J. A.; Terveen, L. G.; Riedl, J. T. (January 2004), "Evaluating collaborative filtering recommender systems", ACM Trans. Inf. Syst. 22 (1): 5–53, doi:10.1145/963770.963772, http://portal.acm.org/citation.cfm?id=963772 .
  6. ^ Sarwar, B.; Karypis, G.; Konstan, J.; Riedl, J. (2000), Application of Dimensionality Reduction in Recommender System A Case Study, http://glaros.dtc.umn.edu/gkhome/node/122 .
  7. ^ Takács, G.; Pilászy, I.; Németh, B.; Tikk, D. (March 2009), "Scalable Collaborative Filtering Approaches for Large Recommender Systems", Journal of Machine Learning Research 10: 623–656, http://www.jmlr.org/papers/volume10/takacs09a/takacs09a.pdf 
  8. ^ Rennie, J.; Srebro, N. (2005). "Fast Maximum Margin Matrix Factorization for Collaborative Prediction". in Luc De Raedt, Stefan Wrobel (PDF). Proceedings of the 22nd Annual International Conference on Machine Learning. ACM Press. http://people.csail.mit.edu/jrennie/papers/icml05-mmmf.pdf. 
  9. ^ R. Bell, Y. Koren, C. Volinsky (2007). ""The BellKor solution to the Netflix Prize"". http://www.netflixprize.com/assets/ProgressPrize2007_KorBell.pdf. 

[edit] Further reading

[edit] External links

[edit] Research groups

[edit] Workshops

[edit] ACM Recommender Systems Series

[edit] Journal special issues

[edit] Books

Personal tools
Namespaces
Variants
Actions
Navigation
Interaction
Toolbox
Print/export
Languages