In order to build the profile of the active user ua, the training set T Ra for ua must
be defined. T Ra is a set of pairs ⟨Ik, rk⟩, where rk is the rating provided by ua on the
item representation Ik. Given a set of item representation labeled with ratings, the
PROFILE LEARNER applies supervised learning algorithms to generate a predictive
model – the user profile – which is usually stored in a profile repository for later
use by the FILTERING COMPONENT. Given a new item representation, the FILTERING COMPONENT predicts whether it is likely to be of interest for the active
user, by comparing features in the item representation to those in the representation
of user preferences (stored in the user profile). Usually, the FILTERING COMPONENT implements some strategies to rank potentially interesting items according
to the relevance with respect to the user profile. Top-ranked items are included in
a list of recommendations La, that is presented to ua. User tastes usually change in
time, therefore up-to-date information must be maintained and provided to the PROFILE LEARNER in order to automatically update the user profile. Further feedback
is gathered on generated recommendations by letting users state their satisfaction or
dissatisfaction with items in La. After gathering that feedback, the learning process
is performed again on the new training set, and the resulting profile is adapted to the
updated user interests. The iteration of the feedback-learning cycle over time allows
the system to take into account the dynamic nature of user preferences.