Chapter 9
Recommendation Systems
There is an extensive class of Web applications that involve predicting user
responses to options. Such a facility is called a recommendation system. We
shall begin this chapter with a survey of the most important examples of these
systems.
However, to bring the problem into focus, two good examples of
recommendation systems are:
1. Oﬀering news articles to on-line newspaper readers, based on a prediction
of reader interests.
2. Oﬀering customers of an on-line retailer suggestions about what they
might like to buy, based on their past history of purchases and/or product
searches.
Recommendation systems use a number of diﬀerent technologies. We can
classify these systems into two broad groups.
• Content-based systems examine properties of the items recommended. For
instance, if a Netﬂix user has watched many cowboy movies, then recom-
mend a movie classiﬁed in the database as having the “cowboy” genre.
• Collaborative ﬁltering systems recommend items based on similarity mea-
sures between users and/or items. The items recommended to a user are
those preferred by similar users. This sort of recommendation system can
use the groundwork laid in Chapter 3 on similarity search and Chapter 7
on clustering. However, these technologies by themselves are not suﬃ-
cient, and there are some new algorithms that have proven eﬀective for
recommendation systems.
9.1
A Model for Recommendation Systems
In this section we introduce a model for recommendation systems, based on
a utility matrix of preferences.
We introduce the concept of a “long-tail,”
319
