Chapter 1 Introduction to Recommender systems Handbook Francesco Ricci, Lior Rokach and Bracha Shapira Abstract Recommender Systems(RSs) are software tools and techniques providin suggestions for items to be of use to a user. In this introductory chapter we briefl discuss basic RS ideas and concepts. Our main goal is to delineate, in a coherent and structured way, the chapters included in this handbook and to help the reader navigate the extremely rich and detailed content that the handbook offers. 1.1 Introduction Recommender Systems(RSs)are software tools and techniques providing sugges- tions for items to be of use to a user [60, 85, 25]. The suggestions relate to various decision-making processes, such as what items to buy, what music to listen to Item"is the general term used to denote what the system recommends to users. A RS normally focuses on a specific type of item(e. g, CDs, or news)and accord- ingly its design, its graphical user interface, and the core recommendation technique used to generate the recommendations are all customized to provide useful and ef- ctive suggestions for that specific type of item Francesco ricci Faculty of Computer Science, Free University of Bozen-Bolzano, Italy e-mail: friccieunibz Department of Information Systems Engineering, Ben-Gurion University of the Negev, Israel e mail: liorrkebgu ac. il Bracha Shapira epartment of Information Systems Engineering, Ben-Gurion University of the Negev, Israel e F Ricci et al.(eds ) Recommender Systems Handbook DOI 10 1007/978-0-387-85820-3 1, o Springer Science+ Business Media, LLC 2011
Chapter 1 Introduction to Recommender Systems Handbook Francesco Ricci, Lior Rokach and Bracha Shapira Abstract Recommender Systems (RSs) are software tools and techniques providing suggestions for items to be of use to a user. In this introductory chapter we briefly discuss basic RS ideas and concepts. Our main goal is to delineate, in a coherent and structured way, the chapters included in this handbook and to help the reader navigate the extremely rich and detailed content that the handbook offers. 1.1 Introduction Recommender Systems (RSs) are software tools and techniques providing suggestions for items to be of use to a user [60, 85, 25]. The suggestions relate to various decision-making processes, such as what items to buy, what music to listen to, or what online news to read. “Item” is the general term used to denote what the system recommends to users. A RS normally focuses on a specific type of item (e.g., CDs, or news) and accordingly its design, its graphical user interface, and the core recommendation technique used to generate the recommendations are all customized to provide useful and effective suggestions for that specific type of item. RSs are primarily directed towards individuals who lack sufficient personal experience or competence to evaluate the potentially overwhelming number of alterFrancesco Ricci Faculty of Computer Science, Free University of Bozen-Bolzano, Italy e-mail: fricci@unibz. it Lior Rokach Department of Information Systems Engineering, Ben-Gurion University of the Negev, Israel email: liorrk@bgu.ac.il Bracha Shapira Department of Information Systems Engineering, Ben-Gurion University of the Negev, Israel email: bshapira@bgu.ac.il F. Ricci et al. (eds.), Recommender Systems Handbook, 1 DOI 10.1007/978-0-387-85820-3_1, © Springer Science+Business Media, LLC 2011
Francesco Ricci, Lior Rokach and Bracha Shapira native items that a Web site, for example, may offer[85]. A case in point is a book recommender system that assists users to select a book to read. In the popular Web siteAmazon.com,thesiteemploysaRstopersonalizetheonlinestoreforeach ustomer[47]. Since recommendations are usually personalized, different users or user groups receive diverse suggestions. In addition there are also non-personalized recommendations. These are much simpler to generate and are normally featured in magazines or newspapers. Typical examples include the top ten selections of books CDs etc. While they may be useful and effective in certain situations, these types of non-personalized recommendations are not typically addressed by rS research. In their simplest form, personalized recommendations are offered as ranked lists of items In performing this ranking, RSs try to predict what the most suitable prod ucts or services are, based on the user's preferences and constraints. In order to complete such a computational task, RSs collect from users their preferences, which are either explicitly expressed, e. g, as ratings for products, or are inferred by inter- preting user actions. For instance, a RS may consider the navigation to a particular product page as an implicit sign of preference for the items shown on that page RSS development initiated from a rather simple observation: individuals often rely on recommendations provided by others in making routine, daily decisions 60, 70]. For example it is common to rely on what one's peers recommend when selecting a book to read; employers count on recommendation letters in their re- cruiting decisions: and when selecting a movie to watch, individuals tend to read and rely on the movie reviews that a film critic has written and which appear in the newspaper they read. In seeking to mimic this behavior, the first RSs applied algorithms to leverage recommendations produced by a community of users to deliver recommendations to an active user, i.e., a user looking for suggestions. The recommendations were for items that similar users(those with similar tastes)had liked. This approach is termed collaborative-filtering and its rationale is that if the active user agreed in the past with some users, then the other recommendations coming from these similar users should be relevant as well and of interest to the active user As e-commerce Web sites began to develop, a pressing need emerged for pro- viding recommendations derived from filtering the whole range of available alter- it very difficult to arrive at the most appropriate choices from the immense variety of items(products and services)that these Web sites were The explosive growth and variety of information available on the Web and the rapid introduction of new e-business services(buying products, product compari son,auction, etc. )frequently overwhelmed users, leading them to make poor deci sions. The availability of choices, instead of producing a benefit, started to decrease sers'well-being. It was understood that while choice is good, more choice is not determination can become excessive, creating a sense that freedom may come to be regarded as a kind of misery-inducing tyranny [96] RSs have proved in recent years to be a valuable means for coping with the infor mation overload problem. Ultimately a RS addresses this phenomenon by pointing
2 Francesco Ricci, Lior Rokach and Bracha Shapira native items that a Web site, for example, may offer [85]. A case in point is a book recommender system that assists users to select a book to read. In the popular Web site, Amazon.com, the site employs a RS to personalize the online store for each customer [47]. Since recommendations are usually personalized, different users or user groups receive diverse suggestions. In addition there are also non-personalized recommendations. These are much simpler to generate and are normally featured in magazines or newspapers. Typical examples include the top ten selections of books, CDs etc. While they may be useful and effective in certain situations, these types of non-personalized recommendations are not typically addressed by RS research. In their simplest form, personalized recommendations are offered as ranked lists of items. In performing this ranking, RSs try to predict what the most suitable products or services are, based on the user’s preferences and constraints. In order to complete such a computational task, RSs collect from users their preferences, which are either explicitly expressed, e.g., as ratings for products, or are inferred by interpreting user actions. For instance, a RS may consider the navigation to a particular product page as an implicit sign of preference for the items shown on that page. RSs development initiated from a rather simple observation: individuals often rely on recommendations provided by others in making routine, daily decisions [60, 70]. For example it is common to rely on what one’s peers recommend when selecting a book to read; employers count on recommendation letters in their recruiting decisions; and when selecting a movie to watch, individuals tend to read and rely on the movie reviews that a film critic has written and which appear in the newspaper they read. In seeking to mimic this behavior, the first RSs applied algorithms to leverage recommendations produced by a community of users to deliver recommendations to an active user, i.e., a user looking for suggestions. The recommendations were for items that similar users (those with similar tastes) had liked. This approach is termed collaborative-filtering and its rationale is that if the active user agreed in the past with some users, then the other recommendations coming from these similar users should be relevant as well and of interest to the active user. As e-commerce Web sites began to develop, a pressing need emerged for providing recommendations derived from filtering the whole range of available alternatives. Users were finding it very difficult to arrive at the most appropriate choices from the immense variety of items (products and services) that these Web sites were offering. The explosive growth and variety of information available on the Web and the rapid introduction of new e-business services (buying products, product comparison, auction, etc.) frequently overwhelmed users, leading them to make poor decisions. The availability of choices, instead of producing a benefit, started to decrease users’ well-being. It was understood that while choice is good, more choice is not always better. Indeed, choice, with its implications of freedom, autonomy, and selfdetermination can become excessive, creating a sense that freedom may come to be regarded as a kind of misery-inducing tyranny [96]. RSs have proved in recent years to be a valuable means for coping with the information overload problem. Ultimately a RS addresses this phenomenon by pointing
I Introduction to Recommender Systems Handbook a user towards new, not-yet-experienced items that may be relevant to the users current task. Upon a users request, which can be articulated, depending on the rec ommendation approach, by the user's context and need, RSs generate recommen- lations using various types of knowledge and data about users, the available items and previous transactions stored in customized databases. The user can then browse the recommendations. She may accept them or not and may provide, immediately or at a next stage, an implicit or explicit feedback. All these user actions and feed backs can be stored in the recommender database and may be used for generating new recommendations in the next user-system interactions research into other classical information system tools and techniques(e.g, databases or search engines). Recommender systems emerged as an independent research area in the mid-1990s [35, 60, 70, 7). In recent years, the interest in recommender sys- tems has dramatically increased, as the following facts indicate 1. Recommender systems play an important role in such highly rated Internet sites as Amazon. com, You Tube, Netflix, Yahoo, Tripadvisor, Last. fm, and IMdb Moreover many media companies are now developing and deploying RSs as part of the services they provide to their subscribers. For example Netflix, the online movie rental service, awarded a million dollar prize to the team that first suc- ceeded in improving substantially the performance of its recommender system 2. There are dedicated conferences and workshops related to the field. We refer cifically to ACM Recommender Systems(RecSys), established in 2007 and now the premier annual event in recommender technology research and appli cations. In addition, sessions dedicated to RSs are frequently included in the more traditional conferences in the area of data bases, information systems and adaptive systems. Among these conferences are worth mentioning ACM SIGI Special Interest Group on Information Retrieval (SIGIr), User Modeling, Adap- tation and Personalization(UMAP), and ACMs Special Interest Group on Man- agement Of Data(SIGMOD) 3. At institutions of higher education around the world, undergraduate and graduate courses are now dedicated entirely to RSs; tutorials on RSs are very popular at computer science conferences; and recently a book introducing RSs techniques ras published [48] There have been several special issues in academic journals covering research and developments in the RS field. Among the journals that have dedicated isst to RS are: Al Communications(2008); IEEE Intelligent Systems(2007): Inter- national Journal of Electronic Commerce(2006): International Journal of Com- puter Science and Applications(2006): ACMTransactions on Computer-Human Interaction(2005); and ACM Transactions on Information Systems(2004) In this introductory chapter we briefly discuss basic RS ideas and concepts. Our main goal is not much to present a self-contained comprehensive introduction or survey on Rss but rather to delineate, in a coherent and structured way, the chapters
1 Introduction to Recommender Systems Handbook 3 a user towards new, not-yet-experienced items that may be relevant to the users current task. Upon a user’s request, which can be articulated, depending on the recommendation approach, by the user’s context and need, RSs generate recommendations using various types of knowledge and data about users, the available items, and previous transactions stored in customized databases. The user can then browse the recommendations. She may accept them or not and may provide, immediately or at a next stage, an implicit or explicit feedback. All these user actions and feedbacks can be stored in the recommender database and may be used for generating new recommendations in the next user-system interactions. As noted above, the study of recommender systems is relatively new compared to research into other classical information system tools and techniques (e.g., databases or search engines). Recommender systems emerged as an independent research area in the mid-1990s [35, 60, 70, 7]. In recent years, the interest in recommender systems has dramatically increased, as the following facts indicate: 1. Recommender systems play an important role in such highly rated Internet sites as Amazon.com, YouTube, Netflix, Yahoo, Tripadvisor, Last.fm, and IMDb. Moreover many media companies are now developing and deploying RSs as part of the services they provide to their subscribers. For example Netflix, the online movie rental service, awarded a million dollar prize to the team that first succeeded in improving substantially the performance of its recommender system [54]. 2. There are dedicated conferences and workshops related to the field. We refer specifically to ACM Recommender Systems (RecSys), established in 2007 and now the premier annual event in recommender technology research and applications. In addition, sessions dedicated to RSs are frequently included in the more traditional conferences in the area of data bases, information systems and adaptive systems. Among these conferences are worth mentioning ACM SIGIR Special Interest Group on Information Retrieval (SIGIR), User Modeling, Adaptation and Personalization (UMAP), and ACM’s Special Interest Group on Management Of Data (SIGMOD). 3. At institutions of higher education around the world, undergraduate and graduate courses are now dedicated entirely to RSs; tutorials on RSs are very popular at computer science conferences; and recently a book introducing RSs techniques was published [48]. 4. There have been several special issues in academic journals covering research and developments in the RS field. Among the journals that have dedicated issues to RS are: AI Communications (2008); IEEE Intelligent Systems (2007); International Journal of Electronic Commerce (2006); International Journal of Computer Science and Applications (2006); ACM Transactions on Computer-Human Interaction (2005); and ACM Transactions on Information Systems (2004). In this introductory chapter we briefly discuss basic RS ideas and concepts. Our main goal is not much to present a self-contained comprehensive introduction or survey on RSs but rather to delineate, in a coherent and structured way, the chapters
Francesco Ricci, Lior Rokach and Bracha Shapira included in this handbook and to help the reader navigate the extremely rich and detailed content that the handbook offers The handbook is divided into five sections: techniques; applications and evalua- ion of RSs: interacting with RSs; RSs and communities; and advanced algorithms The first section presents the techniques most popularly used today for build- ing rss, such as collaborative filtering: content-based, data mining methods; and context-aware methods C. The second section surveys techniques and approaches that have been utilized to evaluate the quality of the recommendations. It also deals with the practical aspects of designing recommender systems: describes design and implementation consider ons;and sets guidelines for selecting the more suitable algorithms. The section also considers aspects that may affect RS design(domain, device, users, etc ). Fi- nally, it discusses methods, challenges and measures to be applied in evaluating the The third section includes papers dealing with a number of issues related to how recommendations are presented, browsed, explained and visualized. The techniques that make the recommendation process more structured and conversational are dis- cussed here The fourth section is fully dedicated to a generated content (UGC)of various types(tags, search queries, trust evaluations, etc. )to generate innovative types of recommendations and more credible pite its relative newness, this topic is essentially rooted in the core idea of a collab- rative recomme The last selection presents papers on various advanced such as: the ex ploitation of active learning principles to guide the acquisit new knowledge suitable techniques for protecting a recommender system attacks of cious users; and rSs that aggregate multiple types of user feedbacks and preferences to build more reliable recommendation 1.2 Recommender Systems Function In the previous section we defined RSs as software tools and techniques providin users with suggestions for items a user may wish to utilize. Now we want to refine lis definition illustrating a range of possible roles that a rs can play. First of all we must distinguish between the role played by the Rs on behalf of the service provider from that of the user of the Rs. For instance, a travel recommender system is typically introduced by a travel intermediary(e.g, Expedia. com)or a destination management organization(e. g, Visitfinland com)to increase its turnover(Expedia) e. sell more hotel rooms. or to increase the number of tourists to the destination [86]. Whereas, the user's primary motivations for accessing the two systems is to find a suitable hotel and interesting events/attractions when visiting a destination In fact, there are various reasons as to why service providers may want to exploit this technology
4 Francesco Ricci, Lior Rokach and Bracha Shapira included in this handbook and to help the reader navigate the extremely rich and detailed content that the handbook offers. The handbook is divided into five sections: techniques; applications and evaluation of RSs; interacting with RSs; RSs and communities; and advanced algorithms. The first section presents the techniques most popularly used today for building RSs, such as collaborative filtering; content-based, data mining methods; and context-aware methods. The second section surveys techniques and approaches that have been utilized to evaluate the quality of the recommendations. It also deals with the practical aspects of designing recommender systems; describes design and implementation considerations; and sets guidelines for selecting the more suitable algorithms. The section also considers aspects that may affect RS design (domain, device, users, etc.). Finally, it discusses methods, challenges and measures to be applied in evaluating the developed systems. The third section includes papers dealing with a number of issues related to how recommendations are presented, browsed, explained and visualized. The techniques that make the recommendation process more structured and conversational are discussed here. The fourth section is fully dedicated to a rather new topic, exploiting usergenerated content (UGC) of various types (tags, search queries, trust evaluations, etc.) to generate innovative types of recommendations and more credible ones. Despite its relative newness, this topic is essentially rooted in the core idea of a collaborative recommender, The last selection presents papers on various advanced topics, such as: the exploitation of active learning principles to guide the acquisition of new knowledge; suitable techniques for protecting a recommender system against attacks of malicious users; and RSs that aggregate multiple types of user feedbacks and preferences to build more reliable recommendations. 1.2 Recommender Systems Function In the previous section we defined RSs as software tools and techniques providing users with suggestions for items a user may wish to utilize. Now we want to refine this definition illustrating a range of possible roles that a RS can play. First of all, we must distinguish between the role played by the RS on behalf of the service provider from that of the user of the RS. For instance, a travel recommender system is typically introduced by a travel intermediary (e.g., Expedia.com) or a destination management organization (e.g., Visitfinland.com) to increase its turnover (Expedia), i.e., sell more hotel rooms, or to increase the number of tourists to the destination [86]. Whereas, the user’s primary motivations for accessing the two systems is to find a suitable hotel and interesting events/attractions when visiting a destination. In fact, there are various reasons as to why service providers may want to exploit this technology:
I Introduction to Recommender Systems Handbook Increase the number of items sold. This is probably the most important function for a commercial Rs, i.e., to be able to sell an additional set of items compared to those usually sold without any kind of recommendation. This goal is achieved because the recommended items are likely to suit the user's needs and wants Presumably the user will recognize this after having tried several recommenda- tions. Non-commercial applications have similar goals, even if there is no cost for the user that is associated with selecting an item. For instance, a content net work aims at increasing the number of news items read on its site In general, we can say that from the service provider's point of view, the primary goal for introducing a Rs is to increase the conversion rate, i.e., the number of users that accept the recommendation and consume an item, compared to the number of simple visitors that just browse through the information ell more diverse items. Another major function of a rs is to enable the user to select items that might be hard to find without a precise recommendation in renting all the DVDs in the catalogue, not just the most popular ones. This could be difficult without a rs since the service provider cannot afford the risk of advertising movies that are not likely to suit a particular user's taste. Therefore, a rs suggests or advertises unpopular movies to the right users Increase the user satisfaction. A well designed RS can also improve the expe- rience of the user with the site or the application. The user will find the recom- mendations interesting, relevant and, with a properly designed human-computer interaction, she will also enjoy using the system. The combination of effective, i.e., accurate, recommendations and a usable interface will increase the users subjective evaluation of the system. This in turn will increase system usage and he likelihood that the recommendations will be accepted Increase user fidelity. a user should be loyal to a Web site which, when visited, recognizes the old customer and treats him as a valuable visitor. This is a nor- mal feature of a RS since many RSs compute recommendations, leveraging the information acquired from the user in previous interactions, e. g, her ratings of items. Consequently, the longer the user interacts with the site, the more refined her user model becomes, i. e, the system representation of the user's preferences and the more the recommender output can be effectively customized to match the Better understand what the user wants. Another important function of a Rs which can be leveraged to many other applications, is the description of the user's preferences, either collected explicitly or predicted by the system. The service provider may then decide to re-use this knowledge for a number of other goals such as improving the management of the items stock or production. For instance, in the travel domain, destination management organizations can decide to advertise a specific region to new customer sectors or advertise a particular the difference between predicting the user interest in an item and the likelihood that the user ain I This issue, convincing the user to accept a recommendation, is discussed again when we ex
1 Introduction to Recommender Systems Handbook 5 • Increase the number of items sold. This is probably the most important function for a commercial RS, i.e., to be able to sell an additional set of items compared to those usually sold without any kind of recommendation. This goal is achieved because the recommended items are likely to suit the user’s needs and wants. Presumably the user will recognize this after having tried several recommendations1 . Non-commercial applications have similar goals, even if there is no cost for the user that is associated with selecting an item. For instance, a content network aims at increasing the number of news items read on its site. In general, we can say that from the service provider’s point of view, the primary goal for introducing a RS is to increase the conversion rate, i.e., the number of users that accept the recommendation and consume an item, compared to the number of simple visitors that just browse through the information. • Sell more diverse items. Another major function of a RS is to enable the user to select items that might be hard to find without a precise recommendation. For instance, in a movie RS such as Netflix, the service provider is interested in renting all the DVDs in the catalogue, not just the most popular ones. This could be difficult without a RS since the service provider cannot afford the risk of advertising movies that are not likely to suit a particular user’s taste. Therefore, a RS suggests or advertises unpopular movies to the right users • Increase the user satisfaction. A well designed RS can also improve the experience of the user with the site or the application. The user will find the recommendations interesting, relevant and, with a properly designed human-computer interaction, she will also enjoy using the system. The combination of effective, i.e., accurate, recommendations and a usable interface will increase the user’s subjective evaluation of the system. This in turn will increase system usage and the likelihood that the recommendations will be accepted. • Increase user fidelity. A user should be loyal to a Web site which, when visited, recognizes the old customer and treats him as a valuable visitor. This is a normal feature of a RS since many RSs compute recommendations, leveraging the information acquired from the user in previous interactions, e.g., her ratings of items. Consequently, the longer the user interacts with the site, the more refined her user model becomes, i.e., the system representation of the user’s preferences, and the more the recommender output can be effectively customized to match the user’s preferences. • Better understand what the user wants. Another important function of a RS, which can be leveraged to many other applications, is the description of the user’s preferences, either collected explicitly or predicted by the system. The service provider may then decide to re-use this knowledge for a number of other goals such as improving the management of the item’s stock or production. For instance, in the travel domain, destination management organizations can decide to advertise a specific region to new customer sectors or advertise a particular 1 This issue, convincing the user to accept a recommendation, is discussed again when we explain the difference between predicting the user interest in an item and the likelihood that the user will select the recommended item