Imagine an online shop with thousands of items. If you're not a registered user, you'll probably see a home page with some highlights, but if you've already bought some items, it would be interesting if the website showed products that you would probably buy, instead of a random selection. This is the purpose of a recommender system, and, in this chapter, we're going to discuss the most common techniques to create such a system.
The basic concepts are users, items, and ratings (or implicit feedback about the products, such as the fact you have bought them). Every model must work with known data (as in a supervised scenario) to be able to suggest the most suitable items or to predict ratings for all the items not evaluated yet.
We're going to discuss two different kinds of strategies:
- User- or content-based
- Collaborative...