Chapter 1. What is a recommender?


It’s a jungle out there as far as understanding what a recommender system is, so we’ll start this book looking into what problems it solves and how it’s used. Here’s what we’ll cover:

  • Understanding the task a recommender system is trying to emulate
  • Developing insight into what are nonpersonalized and personalized recommendations
  • Developing a taxonomy of how to describe recommenders
  • Introducing the example website MovieGEEKs

Get a cup of coffee and a blanket and make yourself comfortable for this introduction to the world of recommendations. We’ll ease into it, first looking at real-world examples before moving into the computational intricacies of a recommender system in the following chapters. You might feel tempted to skip ahead, but don’t. You need the basics to understand what the result of your recommender engineering efforts should be.

1.1. Real-life recommendations

I lived for years in Italy, in Rome. Rome is a beautiful place with many food markets—not the central ones found in guidebooks that are full of knock-off Gucci bags (yes, Gucci bags in food markets)—but the ones that are outside the tour bus route, the ones where the locals shop and where farmers sell their products.

1.1.1. Recommender systems are at home on the internet

1.1.2. The long tail

1.1.3. The Netflix recommender system

1.1.4. Recommender system definition

1.2. Taxonomy of recommender systems

1.2.1. Domain

1.2.2. Purpose

1.2.3. Context

1.2.4. Personalization level

1.2.5. Whose opinions

1.2.6. Privacy and trustworthiness

1.2.7. Interface

1.2.8. Algorithms

1.3. Machine learning and the Netflix Prize

1.4. The MovieGEEKs website

1.4.1. Design and specification

1.4.2. Architecture

1.5. Building a recommender system