2.2 Context-Aware Recommender
Systems
Traditional RS considers only users and items to
recommend, but it does not consider the context in
which the users are. According to Dey (2001),
context is any information that can be used to
characterize the situation of an entity. In RS, entities
can be the users and the items.
Context-Aware RS are formally represented as:
: →
Where F is the function that predicts the rating
for an unknown item, U represents the users, I
represents the items, C represents the context and R
denotes an ordered set of predicted ratings.
Several authors defined different set of
dimensions that could represent context (Schilit et
al., 1994; Chen and Kotz, 2000; Zimmermann et al.,
2007). In this work, we follow Schimidt et al. (1999)
that defines the following dimensions:
Information on the user, e.g., users’ habits,
users’ emotional state, etc.;
User’s social environment, e.g., co-location
with others users, social interaction in
social networks, etc.;
User’s tasks, e.g., general goals, whether it
is a defined task or random activity, etc.;
Location, e.g., absolute position, whether
the user is at home or office, etc.;
Physical conditions, e.g., noise, light, etc.;
Infrastructure, e.g., network bandwidth,
type of device, etc.;
Time, that could be categorical, e.g., Time
of the day (Morning, Afternoon, Evening),
or continuous, e.g., a timestamp like “June
1
st
, 2016 at 17:14:36”.
Adomacivius and Tuzhilin (2011) define three
paradigms of context in the recommendation
process:
Contextual Pre-Filtering, where the context
filters the data that represents the user and
then a traditional RS approach is applied;
Contextual Post-Filtering, where a
traditional RS approach is applied and then
the result is filtered according to the
context;
Contextual Modelling, in which the context
is applied directly in the recommendation
algorithm.
Verbert et al. (2012) say that, in e-learning, RS
traditional approaches are not enough to recommend
properly items to students, because this domain
offers some specific characteristics that are not
covered by these approaches. For example, it is
much more dangerous recommend a bad material to
a student, which could demotivate him/her to study,
than recommend a bad product in an e-commerce
system. According Verbert et al. (2012) this
application domain requires a major level of
personalization. Using some context dimensions is
an alternative to improve the personalization of e-
learning environments, recommending properly to
actual student situation, e.g., Learning History,
Environment, Timing and Accessible Resources
(Verbert et al., 2012).
The next section presents a specific kind of
Context-Aware Recommender Systems that uses
time context to recommend. This kind of RS could
also be used with others context dimensions.
2.3 Time-Aware Recommender
Systems
Among all context dimensions, time has an
advantage to be easy to capture, considering that
almost every device has a clock that could capture
the timestamp when an interaction occurs. Besides
that, works in this area showed that the context of
time has potential to improve recommendation
quality (Campos et al., 2014). This kind of RS is
called Time-Aware Recommender Systems (TARS).
TARS are formally represented as:
: →
Where F is the function that predicts the rating
for an unknown item, U represents the users, I
represents the items, T represents time context and R
denotes an ordered set of predicted ratings.
According to Merriam-Webster dictionary,
time is “a non-spatial continuum that is measured in
terms of events that succeed one after another from
past through present to future” (Merriam-Webster,
2016). This enables to establish an order to time
events.
As seen in section 2.2, time may be a continuous
or a categorical variable. Continuous variables are
those that represents the exact time at which items
are rated/consumed (Campos et al., 2014).
Categorical variables are calculated regarding time
periods of interest in the recommendation (Campos
et al., 2014). Also, it can be represented in several
time units, e.g., seconds, minutes, hours, days,
months, years, etc. Time units are hierarchical, e.g.,
1 day has 24 hours, 1 hour has 60 minutes, 1 minute
has 60 seconds.