In this first scenario, we assume that we have a set of users represented by feature vectors:
Typical features are age, gender, interests, and so on. All of them must be encoded using one of the techniques discussed in the previous chapters (for example, they can be binarized). Moreover, we have a set of items:
Let's assume also that there is a relation which associates each user with a subset of items (bought or positively reviewed), items for which an explicit action or feedback has been performed:
In a user-based system, the users are periodically clustered (normally using a k-nearest neighbors approach), and therefore, considering a generic user u (also new), we can immediately determine the ball containing all the users who are similar (therefore neighbors) to our sample:
At this point, we can create the set of suggested items using the relation previously introduced:
In other words, the set contains all the unique products positively rated or bought by the neighborhood...