What is a recommender system?
by Daniel J. Power
A recommender system is a software tool that provides suggestions to a person for a defined domain or task. The recommendations may be personalized or general. Such systems have also been called suggestion models (Alter, 1980) or recommendation systems. Recommender systems implemented using Artificial Intelligence (AI) technologies are a subcategory of Knowledge-driven DSS (Power, 2007). Also, a recommender system may be a specialized type of Information Retrieval (IR) system. Finally, some recommender systems are a type of information filtering system that seek to predict the 'rating' or 'preference' that a specific user would give to an item or object.
Alter (1980) reported a suggestion model DSS that performed complex calculations to adjust rates on group insurance policies and make a recommendation to an underwriter. In 1992, the first commercial collaborative filtering system called “Tapestry” was discussed in the literature, cf., Goldberg, Nichols, Oki, and Terry (1992). Tapestry was designed to recommend documents drawn from newsgroups to a collection of users. The motivation for the system was to use social collaboration to reduce the volume of streaming documents.
Recommender systems have helped overcome the challenges related to information overload and seem especially valuable tools for inexperienced users involved in information intensive decision-making processes and situations.
Recommendation systems can aid decision makers. Melville and Sindhwani assert "Obtaining recommendations from trusted sources is a critical component of the natural process of human decision making."
In a new specialized online course, Konstan and Ekstrand (2015) note "Recommender systems have changed the way people find products, information, and even other people." The course focuses on algorithms for content-based filtering, user-user collaborative filtering, item-item collaborative filtering, dimensionality reduction, and interactive critique-based recommenders." There are many web applications that provide recommendations. Two common applications are recommending news articles and providing suggestions to an online customer about what to buy, based on their past history of purchases and/or product searches. For example, Netflix recommends movies to its customers. Also, a search engine is a simple type of recommender system. A recommender system based upon user preferences can be simple with a user answering yes/no questions or data intensive based on past behaviors of the person or people similar to the person receiving recommendations.
There are two broad types of recommendation systems. Leskovec, Rajaraman and Ullman (2014) note "One class of recommendation system is content-based; it measures similarity by looking for common features of the items. A second class of recommendation system uses collaborative filtering; these measure similarity of users by their item preferences and/or measure similarity of items by the users who like them (p. 339)." Stated in another way, recommendations can be based upon features of past items purchased, read or watched to determine their similarity to new items. This approach requires some type of user behavior data. Another approach is to base a recommendation upon other users that are most similar to the target user and then recommend items that these similar users have purchased, read or watched that the targeted user has not. Recommendations are based upon assumptions about what a person prefers and wants.
People like advice and decision makers can benefit from "good" advice. There are many opportunities to create recommender systems in specialized domains. If you want to learn more, I recommend you read Leskovec, Rajaraman and Ullman Chapter 9 (2014) and watch the massive open online course (MOOC) taught by Konstan and Ekstrand "Introduction to Recommender Systems".
Alter, S.L. Decision Support Systems: Current Practice and Continuing Challenge. Reading, MA: Addison-Wesley, 1980.
Goldberg, D., D. Nichols, B. Oki, and D. Terry, "Using collaborative filtering to weave an information tapestry," Communications of the Association of Computing Machinery, 35(12):61–70, 1992.
Konstan, J. and M. Ekstrand, Introduction to Recommender Systems, Coursera, 2015 at URL https://www.coursera.org/learn/recommender-systems.
Leskovec, J. A. Rajaraman and J. D. Ullman, Mining of Massive Datasets (2nd Edition), Ch. 9 "Recommendation Systems," 2014 at URL http://infolab.stanford.edu/~ullman/mmds/ch9.pdf.
Melville, P. and V. Sindhwani, "Recommender Systems," at URL http://vikas.sindhwani.org/recommender.pdf
Power, D.J. A Brief History of Decision Support Systems. DSSResources.COM, World Wide Web, http://DSSResources.COM/history/dsshistory.html, version 4.0, March 10, 2007.
Last update: 2015-04-12 05:16
Author: Daniel Power
You cannot comment on this entry