Computing Recommendations with Collaborative Filtering

Computing Recommendations with Collaborative Filtering

Neal Lathia
DOI: 10.4018/978-1-60566-306-7.ch002
(Individual Chapters)
No Current Special Offers


Recommender systems generate personalized content for each of its users, by relying on an assumption reflected in the interaction between people: those who have had similar opinions in the past will continue sharing the same tastes in the future. Collaborative filtering, the dominant algorithm underlying recommender systems, uses a model of its users, contained within profiles, in order to guide what interactions should be allowed, and how these interactions translate first into predicted ratings, and then into recommendations. In this chapter, the authors introduce the various approaches that have been adopted when designing collaborative filtering algorithms, and how they differ from one another in the way they make use of the available user information. They then explore how these systems are evaluated, and highlight a number of problems that prevent recommendations from being suitably computed, before looking at the how current trends in recommender system research are projecting towards future developments.
Chapter Preview


Recommender systems are experiencing a growing presence on the Internet; they have evolved from being interesting additions of e-commerce web sites into essential components and, in some cases, the core of online businesses. The success of these systems stems from the underlying algorithm, based on collaborative filtering, which re-enacts the way humans exchange recommendations in a way that can be scaled to communities of millions of online users. Users of these systems will thus see personalized, unique, and interest-based recommendations presented to them computed according to the opinions of the other users in the system, and can actively contribute to other’s recommendations by inputting their own ratings.

This chapter introduces recommender systems and the algorithms, based on collaborative filtering, that fuel the success these systems are experiencing in current online applications. There are a number of methods that have been applied when designing filtering algorithms, but they all share a common assumption: the users, and the interactions between them, can be modeled in such a way that it is possible to filter content based on the responses they input.

In particular, the objectives of this chapter can be decomposed into a number of questions:

  • Why do we need recommender systems; what problem do they address?

  • How are recommendations generated? This question explores collaborative filtering: what it is, how it works, and how different fields of research have led collaborative filtering to be categorized into memory- and model-based approaches.

  • How are recommender systems evaluated? In particular, what problems do these systems face, and how does research address these problems? Lastly,

  • What are the current future directions of recommender system research?

We explore these questions by considering the participants of a recommender system as members of a community of users. This method highlights the importance of user models within recommender systems, both as a means of reasoning about the underlying operations on the data and building a system that end-users will respond positively to. However, we begin by looking at the motivating problems and history of these systems.



As the Internet grows, forever broadening both the range and diversity of information that it makes accessible to its users, a new problem arises: the amount of information available, and the rate at which new information is produced, becomes too great for individuals to sift through it all and find relevant resources. Resources may include, but are not limited to, movies, music, products of e-commerce catalogues, blogs, news articles and documents. Users, unable to dedicate the time to browse all that is available, are thus confronted with the problem of information overload, and the sheer abundance of information diminishes users’ ability to identify what would be most useful and valuable to each of their needs.

Recommender systems, based on the principles of collaborative filtering, have been developed in response to information overload, by acting as a decision-aiding tool. However, recommender systems break away from merely helping users search for content towards providing interest-based, personalized content without requiring any search query. Recommender systems diverge from traditional information retrieval by building long term models of each user’s preferences, and selectively combining different users’ opinions in order to provide each user with unique recommendations.

Complete Chapter List

Search this Book: