=Paper= {{Paper |id=Vol-1438/paper3 |storemode=property |title=Explaining Contextual Recommendations: Interaction Design Study and Prototype Implementation |pdfUrl=https://ceur-ws.org/Vol-1438/paper3.pdf |volume=Vol-1438 |dblpUrl=https://dblp.org/rec/conf/recsys/MisztalI15 }} ==Explaining Contextual Recommendations: Interaction Design Study and Prototype Implementation== https://ceur-ws.org/Vol-1438/paper3.pdf
         Explaining contextual recommendations: Interaction
             design study and prototype implementation

                                 Joanna Misztal                                                     Bipin Indurkhya
                              Jagiellonian University                                             Jagiellonian University
                                 Cracow, Poland                                                      Cracow, Poland
                        joanna.misztal@uj.edu.pl                                             bipin.indurkhya@uj.edu.pl


ABSTRACT                                                                                As observed in [3], the user’s preferences may be influ-
We describe an architecture for generating context-aware                             enced by factors as diverse as time of the day, day of the
recommendations along with detailed textual explanations                             week, the season or the weather at the moment, and so on.
to support the user in the decision-making process. CARE                             In our system, we incorporate different independent modules
(Context-Aware Recommender with Explanation) incorpo-                                such that each module implements a particular approach to
rates a hierarchical structure, in which independent mod-                            generating a recommendation based on a single contextual
ules embodying different aspects of the context cooperate                            feature. This architecture allows generating a number of
together to generate recommendations for the user with ac-                           diverse recommendations, as each piece of contextual infor-
companying rationales. We follow the Interaction Design                              mation is analyzed separately and the most approporiate
principles to develop personas, goals and user scenarios,                            items are recommended by choosing from among the vari-
based on which a prototype system is developed. We present                           ous recommendations generated by different modules.
here two examples of its performance when processing movie-                             As the main focus of our research is to improve user’s
ratings data set with contextual information. We argue that                          experience and understanding during the interaction with
our architecture is extensible in that more modules can be                           the system, we designed a Context-Aware Recommender
added as needed, and the approach can be applied to other                            with Explanation (CARE) system, following the Interaction
domains as well.                                                                     Design paradigm [10]. Personas, user goals and scenarios
                                                                                     are developed after interviewing potential recommendation-
                                                                                     system users and a domain expert, based on which the pro-
Keywords                                                                             totype of the system is designed.
context-aware recommender system, recommendations ex-                                   We motivate here our approach in the context of the cur-
planations, interaction design                                                       rent state of the art, summarize the interaction design pro-
                                                                                     cess, and present examples of persona and scenarios. Then
1.     INTRODUCTION                                                                  we describe the system architecture and present some results
                                                                                     generated by our prototype implementation.
   An increasing number of available resources, and easy on-
line access to diverse goods has resulted in data overload,
making it difficult for many users to decide what items to                           2.    BACKGROUND
select, which often slows down their decision-making pro-                               As defined in [20], the main goal of a recommender system
cess. A growing number of choices is leading to an emerging                          is to support the user in a decision-making process by sug-
interest in the development of decision-support systems to                           gesting items that they might find interesting. Since infor-
help users in finding the most interesting or suitable items                         mation overload is a growing problem for Web users, because
for their personal needs. Most of the research in this domain                        of an exponential increase in the amount of web content that
is focused on improving the accuracy and precision of rec-                           is being generated, development of such tools has become a
ommendations. However, it is equally important to provide                            thriving research area in recent years. Consequently, several
the user with some rationale for why a particular item is be-                        techniques have been developed for predicting users’ prefer-
ing recommended to them. Moreover, in some domains such                              ences.
as legal decision-making or moral and ethical reasoning, the
justifications for recommendations are very crucial. Hence,                          2.1   Content-based recommender systems
the main focus of our work is to design a system that can
                                                                                        Content-based recommenders try to find items similar to
explain why the user should select particular items.
                                                                                     what the user previously liked [17]. These work by identify-
                                                                                     ing key features of the items highly rated by the user in the
Permission to make digital or hard copies of all or part of this work for            past, and by building a user-preference model from those
personal or classroom use is granted without fee provided that copies are            characteristics [5].
not made or distributed for profit or commercial advantage and that copies              A significant problem in many recommendation techniques
bear this notice and the full citation on the first page. To copy otherwise, to      is the cold-start problem, which occurs when a new user or a
republish, to post on servers or to redistribute to lists, requires prior specific   new item is presented to the system and there is not enough
permission and/or a fee.                                                             data to perform a reliable prediction - the user has not rated
Joint Workshop on Interfaces and Human Decision Making for Recom-
mender Systems, RecSys 2015, Vienna, Austria                                         enough products to define his or her preferences, or an item
Copyright 20XX ACM X-XXXXX-XX-X/XX/XX ...$15.00.                                     has not been rated by a sufficient number of users.
   Content-based recommenders deal well with situations when        panion or mood). In CARS, the input data from the stan-
a new item is added to the system. It also maintains inde-          dard recommendation approach in the form < user, item, rating >
pendence among the users as a particular user’s ratings are         is extended by an additional parameter of context. Some
sufficient to perform the recommendation process for that           standard approaches to recommendations have been adapted
user. For our research, a major advantage of content-based          to model the additional dimension of context. In [15], the au-
recommenders is their transparency — the features that trig-        thors present a Tensor Factorization model-based technique
gered the recommendation results may be listed along with           using N-dimensional tensor of User-Item-Context instead of
the output.                                                         the 2D User-Item matrix.
   However, content-based recommenders suffer from over-               Standard approaches for CARS implementation incorpo-
specialization: i.e. they recommend items similar to those          rate contextual pre-filtering (items filtered by context before
seen in the past, preventing a serendipity of recommenda-           recommendation), post-filtering (context applied to recom-
tions. Also, when a new user, who does not have a previous          mendation results) and contextual modeling (context as a
history with the system and so lacks any ratings, enters the        part of ratings prediction). Common approaches based on
system, the cold-start problem may occur.                           standard pre-filtering techniques represent item and user-
   Content-based analysis operates on vectors representing          splitting algorithms [28, 6]. In these methods, items (or
features of each object. Two basic techniques for filtering         users) in different contexts are treated as separate objects
similar items are similarity calculation (such as cosine sim-       for the recommendation algorithm. Context-aware systems
ilarity) and distance measurement (such as Euclidean dis-           are known to increase the accuracy of recommendations [4].
tance).                                                             However, they face the data sparsity problem, as the num-
                                                                    ber of ratings is restricted to given context. As discussed in
2.2    Collaborative filtering recommender sys-                     [7], the most efficient approach to context-splitting is single
       tems                                                         split, where objects are split considering a single contextual
   In collaborative filtering (CF), a user’s preferences are pre-   feature.
dicted based on modelling other users behaviors [24, 16].
The basic idea behind this approach is that the rating of a         2.4   Other approaches
user for a new item should be close to the ratings of users            Some recommenders are implemented as knowledge-based
who have similar tastes.                                            systems [8], where the recommendation algorithm is per-
   This approach suffers from the data-sparsity and new-            formed by a set of constraints representing the knowledge
item problems. Another disadvantage is that collaborative-          about the domain. Such systems may be applicable to the
filtering recommenders mostly work as black-box systems,            domains for which historical data is not available, or when
therefore they lack transparency and cannot explain why             the user does not perform the action often enough, so there
certain items are being recommended. However, this ap-              is little data to make a prediction (e.g. buying a car).
proach is proving to be an effective technique for making              Another approach is to use demographic information about
recommendations and is widely used in commercial appli-             the users to predict their tastes based on their social group.
cations. It has an advantage of being able to recommend             Such recommendations may depend on user’s age, gender,
items with unknown content. CF also supports serendip-              nationality, and so on.
ity in recommendations, for recommended items may differ
significantly from the previous ones.                               2.5   Hybrid solutions
   Common approaches to CF for recommendations use neigh-              Each of the techniques mentioned above has some advan-
bourhood-based or model-based methods. Neighbourhood-               tages as well as some drawbacks, and each may be effective
based methods try to find the most similar items (item-based        for a certain domain or a certain type of problem [13, 9].
approaches) or most similar users (user-based approaches)           In order to build a more general recommender system, or
when predicting the rating of an item for a particular user.        to improve the quality of recommendations, hybrid systems
Basic technique may incorporate correlation measures (such          combine diverse recommendation algorithms. There are dif-
as Pearson’s similarity) when comparing the vector of rat-          ferent ways to combine outputs of various recommendation
ings for users or items [14]. Model-based methods work              strategies, which are classified by Burke [9] as follows:
by finding the latent features that characterize the user’s            Weighted: the scores from several recommenders are weighted
ratings, and build a predictive model of their preferences.         into one result.
Such methods may employ Matrix Factorization algorithms,               Switching: the most appropriate technique is selected de-
Bayesian models, Support Vector Machines or other such              pending on the input data.
techniques.                                                            Mixed: outputs from diverse algorithms are presented si-
                                                                    multaneously.
2.3    Context-aware recommender systems                               Feature combination: features of different algorithms are
   As observed in [3], a person’s preferences may be influ-         combined into a new feature.
enced by factors as diverse as time of the day, day of the             Cascade: the recommendation is performed hierarchically
week, the season, the weather at the moment, and so on.             and the outputs are refined by the subsequent recommenders.
Context-aware recommender systems (CARS) try to model                  Feature augmentation: output from one system is the in-
user’s preferences considering changing contexts that may           put to the following one.
affect user’s moods and tastes [4]. Contextual data may be             Meta-level: the model created by one system is used by
collected explicitly by asking the user some questions, or im-      another.
plicitly from the environment (information such as time, day
of week, season or location). Some information may also be          2.6   Multi-agent approaches
statistically inferred from the other data (such as the com-          Hybrid recommender systems are often implemented based
on diverse multi-agent system (MAS) architectures. Dis-             A major limitation of the existing recommendation sys-
tributed approaches to recommendations have been previ-          tems is overspecialization and a lack of diversity in recom-
ously studied in [27], where a collaborative recommendation      mender outputs [29, 19]. As described in [23], during the
algorithm is implemented using cloud computing. Sabater,         challenge on Context-Aware Movie Recommendation (CAMRa
Singh and Vidal [22] proposed a protocol in which a group        2010), competing systems were evaluated according to di-
of selfish agents can decide how to share their recommen-        verse factors divided into two groups. The first set of cri-
dations with the others. In [26], the authors introduce rec-     teria consisted of precision metrics while the other set con-
ommender agents to enable the user’s interaction with the        tained the following Subjective Evaluation Criteria: Con-
system and to combine the outputs of the recommendation          text, Contextualization of recommendations, Extensibility,
algorithms with other techniques such as other users book-       Serendipity, Creativity, Scalability, Sparsity, Domain depen-
marks and tags.                                                  dence, and Adoptability
   Another example of MAS architecture that may be used             In our research, we aim to address some of these subjec-
for implementing a recommender system is the blackboard          tive criteria to improve user experience, and also develop
architecture. This architecture may be visualized by the         an architecture that is easily adaptable to other domains.
metaphor [11] of a group of independent experts with di-         We use contextual filtering to model user preferences. Our
verse knowledge who are sharing a common workspace (the          architecture enables one to implement flexible and generic
blackboard). They work on the solution together and each         recommender systems that can easily be extended with new
of them adds some contribution to the blackboard, whenever       independent modules in a hierarchical structure. Our ap-
possible, until the problem is solved.                           proach promotes diversity and serendipity among the rec-
   The blackboard model provides an efficient platform for       ommendation outputs as each module processes information
problems that require many diverse sources of knowledge.         from a different point of view.
It allows a range of different experts represented as diverse
computational agents, and provides an integration frame-         3.3   Explaining recommendations
work for them. It seems a promising platform for recom-             We mentioned above that aspects such as user satisfac-
mendation tasks, and has already been incorporated in [12,       tion play an important role in the evaluation of a recom-
21].                                                             mender system. As noted by [25], a limitation of many rec-
                                                                 ommenders is that they work as black-box systems and do
3.    OVERVIEW OF CARE SYSTEM                                    not provide the users with any reasons for providing a partic-
                                                                 ular recommendation. Some of the commercial systems are
3.1   Architecture                                               striving to overcome this limitation by producing a rationale
                                                                 accompanying each recommendation. A number of diverse
   CARE (Context-Aware Recommender with Explanation)
                                                                 styles have emerged to provide this rationale [25]: Case-
is built as a hybrid architecture that adapts a mixed ap-
                                                                 Based (... because you highly rated Item A..., used in Netflix
proach to recommendations, and incorporates some features
                                                                 [2]), Collaborative (Customers who bought this Item were
of the multi-agent blackboard architecture. We implemented
                                                                 also interested in... used by Amazon), Content-Based (We
each module as an independent subsystem that uses some
                                                                 are playing this music because it has a slow tempo by Pan-
particular approach to generating a recommendation by in-
                                                                 dora [1]). In [26], the authors use information visualization
corporating a particular contextual feature. As some of
                                                                 techniques to improve interaction with their recommender
those factors may be non-deterministic, we present the fi-
                                                                 system. Such system transparency not only increases the
nal result as an array of alternate choices and allow the user
                                                                 user satisfaction, but also helps the users in making easier
to choose from the recommendations generated by analyzing
                                                                 and faster decision in selecting an item.
diverse contextual factors. Hence the diversity of final rec-
                                                                    In CARE, each module is provided with an explanation-
ommendation outputs is ensured by presenting the analysis
                                                                 generating function, which produces a description of the fea-
from multiple points of view. This approach also incorpo-
                                                                 tures that determined the recommendation. The style of this
rates serendipity, and gives the users a choice of possible
                                                                 message is dependent on the module’s implementation. The
actions. The users actions can be noted and used for order-
                                                                 final explanation may combine different styles of messages
ing future recommendations.
                                                                 produced independently by separate modules. We incorpo-
   Our solution also embodies some aspects of the feature
                                                                 rate modules that process information on different levels of
augmentation approach — we perform the recommendations
                                                                 abstraction, hence the final description contains rationales
hierarchically on different levels of abstraction. We intro-
                                                                 at multiple granularity levels. Our goal is to generate a
duce some inter-level recommenders that are responsible for
                                                                 rationale explaining to the user why she or he should find
defining the features of items that are most liked by the
                                                                 certain items interesting (contextual reason, e.g. because it
users in a given context. Their outputs are used to filter the
                                                                 is rainy and what features make this particular item a rel-
data with identified characteristics, which is then sent as an
                                                                 evant choice (e.g. because you like rock music when it is
input to the higher layer of recommendations.
                                                                 rainy).
3.2   Evaluation
   Most of the solutions for automatic recommendations are       4.    GOAL-DIRECTED DESIGN
focused on development of techniques improving the over-            In designing the CARE system, we follow the principles of
all performance and accuracy of ratings prediction. Ac-          Interaction Design [10], according to which the design of a
cordingly, most popular evaluation approaches incorporate        system is developed iteratively through continuous interac-
precision metrics for the estimations. However, there are        tion with the user. In the subsequent sections, we summarize
other factors that impact the effectiveness of recommenda-       the conclusions from the interviews with three users and a
tions and influence the user experience.                         movie-domain expert.
4.1    Domain expert’s opinion                                    mon yet interesting movies when alone; finding lights come-
   Following the Interaction Design paradigm, we consulted a      dies to watch with his girlfriend
film analysis academic to find out what factors may influence        Scenario 1
the popularity of a movie among the users.                           It is a cold winter Friday and Mark and his girlfriend want
   The expert noted that the genre is not the only feature        to spend the evening with a light movie and a glass of wine.
that the users consider when deciding which movie to watch.       Mark opens CARE and a message pops out:
Other factors which may determine their preferences are nar-         Hi Mark! Finally, it’s the weekend! It’s freezing, isn’t
rative description, its tempo, atmosphere and tension.            it? Are you dreaming of little holidays? What about Woody
   Moreover, the users often want to watch the same kind of       Allen’s ”Vicky Cristina Barcelona” to warm you up a little?
movies that they have already watched. Thus, they select          I know you like this director. Or maybe you had a tough
well-known names, plots or recognizable brands. Such a            week and feel like watching something to cheer you up with
brand may be defined by the director, movie star or award         a bit of dark humor, like ”Grand Budapest Hotel”?
such as Oscar or some Film Festival.                                 Scenario 2
   Considering all these factors, our system design should           On Monday, Mark’s girlfriend is off for a ladies night with
embody modules that analyze relevant movie features such          her friends so finally he can choose a movie on his own.
as genre, cast, director, awards won as well as information       CARE greets him:
about the atmosphere of the movie. The prototype imple-              Hi Mark! Maybe something positive for the new week?
mentation incorporates the genre filtering modules, and we        How about ”Intouchables”? Or maybe you’re fed up with the
plan to extend it with modules that will analyze other fac-       city life in Krakow and want to watch the story of a man in
tors as well.                                                     the heart of nature, like ”Into the wild”? You like non-fiction
   Another major factor that influences a user’s choice is the    movies!
current trend or fashion. There are some must-see movies
that many users desire to watch. Moreover, some people            5.   SYSTEM ARCHITECTURE OF CARE
rely on the public opinion more than on their own impres-            General architecture of the CARE system is presented in
sions. In our design, the public opinion is modelled by a         Figure 1. Modules in our prototype system work on different
collaborative filtering recommendation algorithm.                 levels of abstraction.
                                                                     First group of modules perform contextual features filter-
4.2    Defining User Goals                                        ing based on the input with current context, user informa-
   We interviewed three potential users to determine their        tion and ratings history with context. The goal of this pro-
expectations from a recommender system. The volunteers            cessing phase is to determine the most relevant item features
were technical faculty graduates who are familiar with using      for a given context. Each component on this level analyzes
recommender systems to find items of their interest. Each         the information about a single contextual information. To
of them was interviewed separately, in their natural environ-     address the problem of sparsity, we also incorporate a mod-
ment. They were asked to describe their experiences in one        ule that considers all users’ ratings without any contextual
of the three domains of recommendations: books, movies            filtering. The output of each filter is a list of items charac-
and music. First, each person was asked to describe his or        terized by the identified features. This architecture is exten-
her general preferences in the given area and if they could       sible with different types of filters that analyze other aspects
identify some factors that may influence it. Then they were       of recommendations (such as demographic data). In this pa-
asked to describe some particular situations in which they        per we focus only on the contextual information processing.
use recommendations, considering the context details. The            In the next stage of recommendation process, we incorpo-
final question was about the expected recommendation out-         rate recommender algorithms that select items that should
put in these situations. We are planning to extend this re-       be most liked by the user, considering each of the item
search by incorporating interviews with a broader group of        groups received from the former stage as a separate rec-
users with more diverse backgrounds.                              ommendation problem. The modules on this stage may rep-
   It was observed that every person has some general tastes,     resent diverse recommendation techniques and algorithms,
but particular preferences change according to the time and       however our prototype implementation includes collabora-
the mood. Thus, the system should consider some contex-           tive filtering algorithms. The result of recommendation is
tual information in generating the recommendations. How-          the best choice of items for each set of items.
ever, some of these factors, such as the user’s mood, who            Each component generates a short description of its re-
they are with, and so on, may be difficult to predict. Hence      sults and the reason of recommendation. The messages are
the approach we chose is to give the user a choice of possible    finally composed by the explanation templates module and
actions considering different contextual or affective states so   presented to the user along with the recommended items.
that the user can decide what she or he needs at the moment.         The hierarchical structure of the system and the inter-level
   Finally, we found that the users like to know why any          filtering of item features enables a more thorough explana-
particular item is recommended to them. Hence the sys-            tion of the process in generated outputs. Hence the output
tem should aggregate information from different levels of         does not only provide the user with the information Item A
abstraction, and present it to the user in an intuitively un-     was recommended because it is summer, but also emphasizes
derstandable way. We plan to present a rationale for each         the feature that was crucial for this choice (Item A was rec-
recommendation as an accompanying text message.                   ommended because you seem to like this type of items during
                                                                  summer.).
4.3    User scenarios                                                The system is being developed using Django, a Web frame-
  Persona: Mark                                                   work for Python. The system interface will be provided as
  Goals: getting movies recommendations; finding uncom-           a web application, however at present the system output is
                                                                  sequent sections:

                                                                    1. Initialization with contextual input data.

                                                                    2. Contextual type-splitting - identifying significant con-
                                                                       textual factors and relevant data types.

                                                                    3. Collaborative filtering items recommendation for each
                                                                       of the types defined in 2.

                                                                    4. Explanation generation for each of the recommended
                                                                       types and a corresponding contextual factor.

                                                                  6.2.1    Input data
                                                                    Input for the recommendation is the user data and the in-
                                                                  formation about the context in which the recommendation
                                                                  takes place. This data may contain information explicitly
                                                                  provided by the user (such as whether they are alone or
                                                                  with a companion) or implicit information extracted auto-
                                                                  matically from the date and location data (such as day of
                                                                  week, time of the day, weather, and so on).

Figure 1: General architecture of the CARE system.                  Example:

                                                                    Context:
in plain textual form as presented in the results section.        Season: Summer
                                                                  Day type: working day
                                                                  Time: evening
6.    EXPERIMENT                                                  Weather: sunny
  We present phases of the recommendation algorithm along         Companion: alone
with an illustrative example of recommendations for user
John.
                                                                  6.2.2    Contextual type-splitting
6.1    Testing data                                                  For the context-aware recommendation process, we intro-
  CARE system architecture is applicable to many recom-           duced contextual type-splitting algorithm which is an adap-
mendation domains where the context may influence user            tation of the standard contextual item-splitting approach.
preferences. Possible domains of application include books,       We incorporated an additional abstraction level and treated
music or movies as well as restaurants recommendations            the item features as the recommendation objectives. Table
as user’s choice may depend on aspects such as changing           2 illustrates the difference between approaches.
weather or time. Here we present the results from testing
our prototype on the LDOS-CoMoDa dataset [18] that con-              • Contextual item-splitting
tains movie ratings along with contextual information, and             In the first phase of the basic algorithm, each item is
user and item characteristics. Contextual data contain in-             associated with the most relevant contextual feature
formation about the season, type of day (weekend, working              that diversifies its ratings. Then the ratings for this
day or holiday), time of day (morning, afternoon, evening),            item are split according to this division. The mean rat-
companion, and so on.                                                  ing values for each item are compared for the situation
  The dataset also contains information about the mood of              where particular circumstance occurs and otherwise.
the movie and it could be interesting to consider this data
as well. However, the dataset only provides the dominant               For example, we could compare ratings for a particular
and end emotional values, without any information about                movie that were given during the weekend with ratings
the user’s mood before watching the movie. Since we treat              from all other days. If they are significantly different,
contextual factors as facts known at the moment of recom-              we can infer that the user preferences for this item are
mendation (as the initial data), we cannot make a recom-               influenced by the day of the week.
mendation considering user’s mood after or during watch-
ing the movie. In future work, we plan to add a feature to           • Contextual type-splitting
query user’s mood at the moment of recommendation, and                 In our approach, we perform analogical computations,
consider this information as a contextual parameter.                   but instead of comparing the contexts for each movie,
  Table 2 contains a part of John’s ratings for the analyzed           we analyze each context for a group of movies with a
example along with contextual information.                             common feature (such as a genre). As a result we can,
                                                                       for example, find out that the user prefers to watch
6.2    Recommendation process                                          horror movies during the weekends than on other days.
   We present below a brief description of the different stages        This step may be generalized to recommend items grouped
of our algorithm along with illustrative examples. The main            by other features, such as the director, country of ori-
steps of algorithm are listed below and described in the sub-          gin, etc.
 movie id         genre        rating    daytype           time      weather      season     companion
 23          action movie        1      working day      evening      sunny      autumn         alone
 160         action movie        2      working day      evening      sunny      autumn         alone
 2755        action movie        4      working day      evening      rainy       winter        alone
 3898        action movie        5       weekend          night      cloudy       spring     with family
 3942        action movie        3      working day      evening      sunny       spring        alone
 4020        action movie        5       weekend          night       rainy      summer         alone
 3992        action movie        5      working day     afternoon     sunny      summer      with family
 3962       animated movie       4       weekend         evening      rainy       spring        alone
 65              comedy          3      working day      evening      sunny      autumn         alone
 101             comedy          2      working day     afternoon    cloudy      autumn         alone
 4025            comedy          5      working day      evening      sunny      summer         alone
 4054            comedy          5        holiday         night      cloudy      summer         alone
 30           crime movie        4       weekend         evening      rainy      autumn         alone
 227          crime movie        2      working day       night      cloudy      autumn         alone
 3715         crime movie        1      working day      evening     cloudy       winter        alone
 248          crime movie        5       weekend          night       sunny       winter     with family
 149              drama          5       weekend         evening      sunny      autumn         alone
 61               drama          2       weekend        afternoon     sunny      autumn         alone
 239              drama          3        holiday         night       rainy      autumn       in public
 242              drama          4        holiday        evening     cloudy      autumn         alone

                                 Table 1: User’s ratings with contextual information.


     Exemplary ratings with a context                               (as presented in [28]), however its use is limited for normally
 User Item Item type Rating Context                                 distributed data. In other cases, it may be replaced by other
 U1     I1        T1        1        C1                             statistical methods such as Wilcoxon signed-rank test.
 U1     I3        T1        3        C1                               The features significance testing in a context is performed
 U1     I2        T2        5        C2                             as follows:
 U1     I3        T1        5        C2
 U1     I2        T2        5        C1                                • For each type ti of items (eg. for each of the genres) we
                                                                         compare the mean rating for items of this type when
 Contextual items splitting
                                                                         each of the input contextual circumstances ci occurs
 User Item       Rating
                                                                         and otherwise (eg. ratings for comedies in summer
 U1    I3C1         3
                                                                         and other seasons).
 U1    I3C2         5
                                                                         signif icance(ci , tj ) = ttest(Ratingstj |ci ), Ratingstj |¬ci )
 Contextual types splitting
 User Item type Rating                                                 • If the statistical test for both groups of ratings split
 U1      T 1C1         2                                                 by the contextual feature ci indicates a significant dif-
 U1      T 1C2         5                                                 ference in mean ratings, and the mean rating for type
                                                                         when ci occurs (Ratingstj |ci ) is higher then otherwise
Table 2: Contextual splitting - basic approach and                       (Ratingstj |¬ci ), we conclude that the type ti is a rele-
proposed modification.                                                   vant recommendation in given context ci .
                                                                      Example:
     This approach allows us to give more transparent and
     intuitive recommendations for the user by presenting             Contexts significance testing:
     the features that lead to the final recommendation.              Input context: summer, working day, evening, sunny, alone
     It also addresses a major drawback of the context pre-           Ratings in summer vs other seasons: mean ratings for
     filtering approaches, namely the data sparsity after ap-       comedies are significantly higher during summer.
     plying the filter. As the number of recommendations              Ratings on working days vs other days: no relation found.
     for a particular type of movies is significantly higher          Ratings in the evening vs other time: mean ratings for
     than for each movie separately, we expect the results          comedies are significantly higher in the evening.
     to be more accurate. Reducing number of compar-                  Ratings on sunny days vs other weather: no relation found.
     isons to groups of items also contributes to decreasing          Ratings for movies watched alone and other companion:
     complexity of computations and speeds up the recom-            no relation found.
     mendation process. In subsequent steps, the recom-
     mendations are performed for selected groups only.
                                                                    6.2.3    Types pre-filtering
                                                                      After identifying the types of movies that are most rele-
  We verify the significance of each contextual feature using       vant for a given context, we filter the set of ratings for each
the two-tailed Student’s t-test, assuming the p-value thresh-       type separately. For example, if we consider a recommen-
old of 10%. Additionally, we consider the significance of           dation for Saturday morning and we find out that horror
only those features where the mean rating is higher when            movies are the most preferred genre during the weekend,
a particular context occurs. The t-test is a basic approach         and comedies get the highest ratings in the mornings, we
first consider recommendations for horror movies and then           recommendations along with accompanying rationales to help
for comedies separately.                                            the user choose the most interesting item. In CARE (Context-
   We also calculate general recommendations considering            Aware Recommender with Explanation), the recommenda-
the user preferences of all the items, without any pre-filtering.   tion process is performed hierarchically, and with trans-
This addresses the sparsity problem for context recommen-           parency at each abstraction level so as to produce detailed
dations and deals with the situation when no relevant con-          explanations for the suggested choices. Our approach pro-
textual information is provided.                                    motes a diversity of recommendation results since each piece
                                                                    of contextual information is analyzed separately, and the
6.2.4      Items recommendation                                     most appropriate items are recommended with a rationale
   After filtering the items by their types, we perform a           accompanying each suggestion.
standard collaborative-filtering recommendation algorithm              Our architecture enables one to implement a flexible and
to find the most suitable choices considering a particular          generic recommender systems that can easily be extended
user’s taste. We calculate the similarity between users using       with new independent modules in a hierarchical structure.
Pearson’s correlation measure. Then we consider the ratings         In the current stage of our research, we have tested the
of the most similar users with the K-Nearest-Neighbours al-         performance of the CARE prototype on a movie-ratings
gorithm. In further research we plan to address the problem         dataset. Following the suggestions of a domain expert, we
of scalability by users clustering.                                 plan to extend the system with modules that incorporate
   For each of the identified categories we perform a sepa-         other diverse movie features such as the director, cast, at-
rate recommendation process, hence the final output con-            mosphere and so on. We also plan to follow the Interaction
tains the recommendation results from diverse perspectives.         Design principles during the evaluation of our system and
For the current implementation, we incorporated the stan-           will perform user testing with a working system. In future
dard user-based CF algorithm. However the system may be             work, we will also address the evaluation of results quality
easily extend by other modules performing different recom-          with standard methods such as RMSE or nDCG.
mendation algorithms since the calculations are performed              Our approach is applicable to other domains as well. Cur-
independently.                                                      rently we are working on adapting this architecture for sup-
                                                                    porting legal decision making, and moral and ethical reason-
     Example:                                                       ing.

   Performing user-based collaborative filtering algorithm to       8.   REFERENCES
find expected highest-rated movies for each category and
                                                                     [1] Pandora. http://www.pandora.com, 2006.
general user’s preferences without any context:
                                                                     [2] Netflix dataset. http://www.netflixprize.com/, 2009.
   crime story: ”The Usual Suspects”
   action movie: ”Pirates of the Caribbean: At World’s End”          [3] G. Adomavicius and A. Tuzhilin. Context-aware
   all movies: ”Le Concert”                                              recommender systems. In Proceedings of the 2008
                                                                         ACM Conference on Recommender Systems, RecSys
6.2.5      Explanations generation                                       ’08, pages 335–336, New York, NY, USA, 2008. ACM.
   A major goal of our research is to develop a recommen-            [4] G. Adomavicius and A. Tuzhilin. Context-aware
dation system that can present the recommendations along                 recommender systems. In Recommender Systems
with accompanying explanations. Hence, we incorporated                   Handbook, pages 217–253. 2011.
modules responsible for generating textual messages to give          [5] M. Balabanović and Y. Shoham. Fab: Content-based,
rationales for recommendations. Each sentence of the ac-                 collaborative recommendation. Commun. ACM,
companying message consists of the following information:                40(3):66–72, Mar. 1997.
item type; recommended item; context.                                [6] L. Baltrunas and F. Ricci. Context-based splitting of
   The message is generated in the form of a textual tem-                item ratings in collaborative filtering. In Proceedings
plate. Future improvements of CARE will consider increas-                of the Third ACM Conference on Recommender
ing the serendipity aspect of the recommendations by gen-                Systems, RecSys ’09, pages 245–248, New York, NY,
erating more advanced and surprising commentaries for the                USA, 2009. ACM.
outputs.                                                             [7] L. Baltrunas and F. Ricci. Experimental evaluation of
   The messages generated by all the modules that analyzed               context-dependent collaborative filtering using item
the situation from different perspectives are aggregated in              splitting. 24(1-2):7–34, 2014.
one template and presented to the user as a message.                 [8] D. Bridge, M. H. G oker, L. McGinty, and B. Smyth.
                                                                         Case-based recommender systems. The Knowledge
     Example:                                                            Engineering Review, 20:315–320, 9 2005.
                                                                     [9] R. Burke. Hybrid recommender systems: Survey and
   Producing a textual explanation containing descriptions               experiments. User Modeling and User-Adapted
from all former steps of algorithm:                                      Interaction, 12(4):331–370, Nov. 2002.
   Hi John! You might like a comedy ”Le Concert” as it              [10] A. Cooper, R. Reimann, and D. Cronin. About Face:
is something in your taste. You might like a drama like                  The Essentials of Interaction Design. John Wiley &
”Shutter Island” because it is evening. Maybe you feel like              Sons, Inc., New York, NY, USA, 2014.
watching a comedy like ”Intouchables” because it is summer?         [11] D. D. Corkill. Blackboard systems. AI Expert, 6, 1991.
                                                                    [12] A. H. Dong, D. Shan, Z. Ruan, L. Zhou, and F. Zuo.
7.     CONCLUSIONS AND FUTURE WORK                                       The design and implementation of an intelligent
     We proposed an architecture to generate context-aware               apparel recommend expert system.
[13] B. S. Francesco Ricci, Lior Rokach. Introduction to             Proceedings of the 2013 international conference on
     recommender systems handbook. In F. Ricci,                      Intelligent user interfaces - IUI ’13, page 351. ACM
     L. Rokach, B. Shapira, and P. B. Kantor, editors,               Press, 2013.
     Recommender Systems Handbook, pages 1–35.                  [27] Y. ZHANG, H. Liu, and S. Li. A Distributed
     Springer US, 2011.                                              Collaborative Filtering Recommendation Mechanism
[14] G. Guo, J. Zhang, and N. Yorke-Smith. A novel                   for Mobile Commerce Based on Cloud Computing.
     bayesian similarity measure for recommender systems.            2011.
     In Proceedings of the Twenty-Third International           [28] Y. Zheng, B. Mobasher, and R. D. Burke. The role of
     Joint Conference on Artificial Intelligence, IJCAI ’13,         emotions in context-aware recommendation. In
     pages 2619–2625. AAAI Press, 2013.                              L. Chen, M. de Gemmis, A. Felfernig, P. Lops,
[15] A. Karatzoglou, X. Amatriain, L. Baltrunas, and                 F. Ricci, G. Semeraro, and M. C. Willemsen, editors,
     N. Oliver. Multiverse recommendation: n-dimensional             Decisions@RecSys, volume 1050 of CEUR Workshop
     tensor factorization for context-aware collaborative            Proceedings, pages 21–28. CEUR-WS.org, 2013.
     filtering. In Proceedings of the fourth ACM conference     [29] C.-N. Ziegler, S. M. McNee, J. A. Konstan, and
     on Recommender systems, pages 79–86. ACM, 2010.                 G. Lausen. Improving recommendation lists through
[16] Y. Koren and R. Bell. Advances in collaborative                 topic diversification. In Proceedings of the 14th
     filtering. In F. Ricci, L. Rokach, B. Shapira, and P. B.        International Conference on World Wide Web, WWW
     Kantor, editors, Recommender Systems Handbook,                  ’05, pages 22–32, New York, NY, USA, 2005. ACM.
     pages 145–186. Springer US, 2011.
[17] P. Lops, M. De Gemmis, and G. Semeraro.
     Content-based recommender systems: State of the art
     and trends. In Recommender systems handbook, pages
     73–105. Springer US, 2011.
[18] A. Odić, M. Tkalčič, J. F. Tasič, and A. Košir. In
     G. Adomavicius, editor, Proceedings of the 4th
     Workshop on Context-Aware Recommender Systems
     in conjunction with the 6th ACM Conference on
     Recommender Systems (RecSys 2012), volume 889,
     2012.
[19] L. Qin and X. Zhu. Promoting diversity in
     recommendation by entropy regularizer. In
     Proceedings of the Twenty-Third International Joint
     Conference on Artificial Intelligence, IJCAI ’13, pages
     2698–2704. AAAI Press, 2013.
[20] F. Ricci, L. Rokach, B. Shapira, and P. B. Kantor,
     editors. Recommender Systems Handbook. Springer,
     2011.
[21] A. Ruiz-Iniesta, G. Jiménez-Dı́az,
     M. Gómez-Albarrán, et al. A framework for the rapid
     prototyping of knowledgebased recommender systems
     in the learning domain. Journal of Research and
     Practice in Information Technology, 44(2):167, 2012.
[22] J. Sabater, M. Singh, and J. M. Vidal. A Protocol for
     a Distributed Recommender System, 2005.
[23] A. Said, S. Berkovsky, and E. W. De Luca.
     Introduction to special section on camra2010: Movie
     recommendation in context. ACM Trans. Intell. Syst.
     Technol., 4(1):13:1–13:9, Feb. 2013.
[24] J. Schafer, D. Frankowski, J. Herlocker, and S. Sen.
     Collaborative filtering recommender systems. In
     P. Brusilovsky, A. Kobsa, and W. Nejdl, editors, The
     Adaptive Web, volume 4321 of Lecture Notes in
     Computer Science, pages 291–324. Springer Berlin
     Heidelberg, 2007.
[25] N. Tintarev and J. Masthoff. Designing and evaluating
     explanations for recommender systems. In F. Ricci,
     L. Rokach, B. Shapira, and P. B. Kantor, editors,
     Recommender Systems Handbook, pages 479–510.
     Springer US, 2011.
[26] K. Verbert, D. Parra-Santander, P. Brusilovsky, and
     E. Duval. Visualizing recommendations to support
     exploration, transparency and controllability. In