<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Towards creating a non-synthetic group recommendation dataset</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Matthijs Rijlaarsdam</string-name>
          <email>mscrijlaarsdam@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Sebastiaan Scholten</string-name>
          <email>j.s.m.scholten@tudelft.nl</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Cynthia C. S. Liem</string-name>
          <email>C.C.S.Liem@tudelft.nl</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Delft University of Technology</institution>
          ,
          <addr-line>Delft</addr-line>
          ,
          <country country="NL">The Netherlands</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2019</year>
      </pub-date>
      <fpage>16</fpage>
      <lpage>20</lpage>
      <abstract>
        <p>Recommender systems can be useful in group settings, e.g. when choosing a movie to watch with a group. However, while considerable research in group recommendation has been performed, we still lack truly ecological datasets on group recommendations in real life consumption scenarios. Much of the existing work considers hypothetical consumption scenarios, and commonly, individual ratings are aggregated, but no actual group consumption takes place in which situational diferences per group are taken into account. In this paper, we outline a vision for acquiring more realistic and ecological group consumption data, based on a crowdsourcing application that will acquire individual ratings per group consumption event. We discuss various design decisions that will allow us to gather these ratings efectively from a large group of people, and demonstrate and evaluate the viability of our approach towards reaching group consensus through rating session simulations.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>CCS CONCEPTS</title>
      <p>• Information systems → Test collections; Recommender systems.</p>
    </sec>
    <sec id="sec-2">
      <title>INTRODUCTION</title>
      <p>Recommender systems are often tailored to the individual.
However, in real life, many of the scenarios relevant to recommender
systems actually occur in group contexts. At diferent moments,
an individual user may be a part of diferent groups with
diferent preferences. In such cases, not only the individual’s preference
should be taken into account, but also the preferences at the group
level, at that particular moment, and given that particular group
composition.</p>
      <p>
        Currently, group recommender systems are mostly based on
aggregation of information in individual user profiles, such as [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ].
Various aggregation strategies, rooted in theories on group
decisionmaking processes, exist for this [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. Major challenges for group
recommender systems involve visualizing the acceptability of a
recommendation and choosing the correct preference aggregation [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ].
      </p>
      <p>
        While group recommendation is actively studied, it should be
noted that no public group recommender research dataset exists.
The past few years, evaluation of group recommendation systems
has typically been done ofline, through metrics on aggregated
individual rating datasets [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. Some existing works consider
surveys or user assessments of hypothetical consumption scenarios,
such as [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]; in other cases, such as PolyLens [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], real-life user logs
were additionally studied, but the corresponding data has not been
released to the community, making it hard to truly assess
groupbased dynamics. Similarly, studies into group recommendation
strategies have been done using a dataset which uses recipe ratings
provided by families of users, however this dataset likely is too
small to fully capture these intra-group efects [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], while also not
having been publicly disclosed [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
      </p>
      <p>
        Being interested in acquiring a more ecological dataset of group
consumption and recommendation, in this paper, we outline a
vision to acquire such a dataset through a crowdsourcing application,
focusing on the problem of group recommendation for movies.
Similar to common user feedback strategies in dating apps, we propose
to acquire fast user feedback by collecting swipes on movie likes
and dislikes through a mobile interface, and consider approval
voting strategies, in which common consensus should be reached by
the group on what to watch. Through a simulation study based on
the Movielens 100k dataset [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], we assess the feasibility of reaching
common consensus as quickly as possible for diferent group sizes,
investigate the ratio of unrated movies suggested to reach
consensus, and the necessary ratio of agreement needed within the group.
With our results showing that reaching common consensus within
several interactions is feasible, it will make sense to implement this
crowdsourcing mechanism in real life and integrate it into group
watching scenarios, thus acquiring more ecological data that can
help us in better assessing and understanding group
recommendation mechanisms and their impact on user preferences in real
life.
2
      </p>
    </sec>
    <sec id="sec-3">
      <title>APPLICATION SCENARIO</title>
      <p>We choose to focus on a group recommender scenario, in which
several users convene as a group, and wish to watch a movie
together. Considering that a movie typically takes several hours to
watch, we assume that the group jointly needs to decide on a single
movie to watch. As a consequence, it makes sense to assume an
approval voting strategy, in which a choice needs to be made that
satisfies everyone.</p>
      <p>Rather than having the group discussing about this, we envision
the use of an app as illustrated in Figure 1. Within this app, users
are ofered various movies to watch, and they can indicate their
desire to currently watch this movie with a swipe, indicating a
binary ‘like’ or ‘dislike’. This way, users can give quick feedback
on many possible movies.</p>
      <p>To elicit the preferences of users in the current situational group
setting, movies will firstly be advised randomly, until suficient
information is gathered to make informed recommendations based
on the diferent current individual user preference profiles.</p>
      <p>After rating these random movies, the users will enter a new
rating round, in which they partially will receive movies from a
random subset of the set of movies that have not been rated by any
user in that session, and partially movies from the set of movies that
have been rated by another user in that session. From these sets, the
movies that the user will like most according to the recommendation
model are actually suggested. These rounds will continue until the
users agree on a movie. Once all the users have reached agreement
up to a certain threshold, the final recommendation will be decided
and displayed to the group.
3</p>
    </sec>
    <sec id="sec-4">
      <title>SIMULATION</title>
      <p>Before developing and deploying the app as proposed in the
previous section, it is important to first understand whether the proposed
underlying mechanisms would indeed make sense. In particular,
we are interested in investigating whether approval voting through
the proposed swiping mechanism would allow for group consensus
to be reached within reasonable time limits. More specifically, we
focus on three main questions:
(1) How does the group size afect the amount of interaction
needed until consensus?
(2) How does the ratio of unrated movies afect the amount of
interaction needed until consensus?
(3) How much agreement should be required within the group,
in order to be able to reach consensus?</p>
      <p>
        To study these questions, we perform a simulation study, based
on the Movielens 100k dataset. The implementation of our simulator
was done in Python, making use of the well-documented Scikit
Surprise [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] toolbox. The program is optimized with eficient data
structures and multiprocessing, allowing for thousands of simulated
sessions per hour on a laptop. The code can be made available on
request.
      </p>
      <p>In Figure 2, a schematic overview of our simulation session setup
can be seen. Our simulation consists of two sides: a group
recommender, trained on the data of 80% of the users in the Movielens
100k dataset, and a user simulator, trained on all Movielens data.
The 20% of the users who were not considered in the group
recommender form the test set, from which groups are formed, for which
the group recommender should provide the right recommendations.</p>
      <p>Globally spoken, at the start of a session, a random set of users
from the test set is selected to form a group. It is assumed that
these users did not see any of the movies known by the group
recommender, and the group recommender does not know the
preferences of these users. The group recommender therefore first
sends a configurable number of random movies to each user to be
rated, as discussed in more detail below.</p>
      <p>After this first round of ratings, it is highly unlikely that
consensus will be reached. Therefore, more rating rounds are needed.
Based on the responses of individual users on the initial random
movie set, the group recommender will therefore generate new sets
of movies to be rated per user. Each of these sets will comprise a
personalized mix of unseen movies that are likely to be liked by
the given user, and movies that have been liked by other users in
the group. This process repeats until consensus is reached.</p>
      <p>The Movielens 100k dataset has 5-point Likert ratings, whereas
our proposed app uses binary relevance levels. For our current
study, we assume a user explicitly likes a movie if the predicted
rating for the movie is at least 4 out of 5.
3.1</p>
    </sec>
    <sec id="sec-5">
      <title>User simulator</title>
      <p>For a given movie and a given user, the user simulator should predict
how a user would rate this movie. For this, we employ an SVD model
trained on the full Movielens 100k dataset. Using grid-search, we
optimize the various parameters of our model such as the learning
rate and regularization parameters. Our final model achieves a
ifnal RMSE of 0.8706, 5-fold cross-validated on the Movielens 100k
dataset.</p>
      <p>We want the user simulator to predict ratings as accurately as
possible. If a ground-truth rating from the original Movielens 100k
dataset is available for a certain (user, movie) pair, the user simulator
returns that as its rating, as opposed to the SVD prediction. As the
user simulator is a separate system from the system we are trying
to test, we are able to do this without violating the assumption that
all users have not watched any movie; the ground-truth rating is
simply a more accurate description of the user’s preference.
3.2</p>
    </sec>
    <sec id="sec-6">
      <title>Group recommendation model</title>
      <p>During a session, movies are shown to users for them to rate
through a swipe. How the users rate these movies reflects their
preference profile. Therefore, after a round of swiping, the group
recommendation model should be updated with information
resulting from these swipes, before generating new movies to swipe in
the next round.</p>
      <p>Because we need to update our recommendation model between
swipe rounds, having to fully train the model every round becomes
unfeasible. For this reason, a matrix-based SVD model is used for
the recommendation model, as well as for the user simulator. A
rating consists of the mean µ , the bias for the user bu , the bias for
the item bi , and the matrix product of the item and user factor
matrices q and p.</p>
      <p>r ˆui = µ + bu + bi + qTi pu</p>
      <p>By using such a model, we are able to do partial training for
a user. We do this by only updating the biases for the users and
movies for whom ratings are added, as well as the user factors pu
corresponding to newly added users.
4</p>
    </sec>
    <sec id="sec-7">
      <title>RESULTS</title>
      <p>Following our three main questions as presented in Section 3, we
present our results in this section. Each plotted data point reflects
the averaged result of 100 simulation sessions.
4.1</p>
    </sec>
    <sec id="sec-8">
      <title>Amount of interaction needed for diferent group sizes</title>
      <p>For this experiment, we want to have the smallest possible
granularity in the amount of swipes needed per user. As a session can only
end after a round, the amount of movies sent to a user per swipe
round should be as small as possible. Because we need to send at
least one movie that is rated by others in the same group, and one
unrated by users in the group, we send 2 movies to each user per
swipe round in this experiment, thus having a rated/unrated ratio
of 0.5. For this first experiment, we set the required agreement ratio
at 1: a movie is only selected if everyone in the group approves
this movie. However, it may happen that a group may not actually
reach consensus, even after many swipes. To assess this in more
detail, we cap the maximum amount of ratings to 500 per user, and
consider a run to be failed in case no positive consensus is reached
yet at this capping moment.</p>
      <p>For all succeeded runs in this experiment, the average amount
of swipes needed before reaching positive consensus for diferent
group sizes is shown in Figure 3.</p>
      <p>From these results, it can be seen that on average, users find
agreement on movies quite quickly, regardless of group size. Failed
run ratios for diferent group sizes are shown in Figure 4.</p>
      <p>As can be seen in Figure 4, mostly the small groups seem to
fail, whereas all groups larger than 11 find agreement. This seems
counter-intuitive, as for larger groups it should be harder to find
a movie everyone agrees with. This suggests that the problem for
smaller groups is not that a movie that pleases everyone does not
exist, but that this movie simply is not found. Since all users in a
group swipe diferent unrated movies, the search space of swiped
movies is larger for larger groups. They are therefore more likely
to find a movie that everyone in the group is willing to watch.</p>
    </sec>
    <sec id="sec-9">
      <title>Efect of diferent ratios of unrated movies</title>
      <p>As discussed in Section 3, after an initial round of rating random
movies, users will get a mix of unrated movies they may like, and
movies that other people in the group liked. To investigate how this
mix should be balanced, for our second experiment, we consider
how this balancing should be done. We consider group sizes ranging
from 5 to 14, and require for users to reach perfect agreement on a
movie. That is, a movie should be found that all users rate positively.
To limit our simulation time, we send 10 movies to each user per
round and limit a session to a maximum of 50 swipes per user. As in
the previous experiment, we focus on how many failed runs occur.
Results are plotted in Figure 5.</p>
      <p>From the plot, it can be seen that, as in the previous experiment,
larger groups have less failed sessions than smaller groups.
Furthermore, with regard to the ratio of unrated movies within the
set of 10 ofered movies, there seemingly is an optimum between
0.4-0.6. There is a clear trade-of between search space and finding
agreement. If the amount of unseen movies is too small, not enough
movies are rated, and a movie satisfying all users in a group might
simply be missed. This probably also causes the larger rate of failure
for small groups. However, if it is too large, not enough movies are
‘exchanged’ between users, and agreement is found too late.
4.3</p>
    </sec>
    <sec id="sec-10">
      <title>Efect of diferent required agreement ratios</title>
      <p>For the previous two experiments we required perfect agreement
between the users in a session, in order for it to end successfully.
However, it may be acceptable to consider consensus to be reached
if a fraction of users within the group approves the movie. This
especially is useful when a run will take too many swipe rounds,
without finding a movie on which everyone in the group agrees; in
that case, such a movie may not exist. In our simulation, we define
a problematically long run to be a session taking longer than 50
swipes per user, as from a user interaction viewpoint, this will likely
be above an acceptable threshold in real life. We investigated how
many failed runs would occur when having diferent agreement
ratios: for 0.5, 0.75 and perfect agreement. To limit the simulation
time, We gave users 10 movies per swiping round before updating
the model, and a 0.5 ratio for unrated movies, as this gave the best
results on average in our second experiment. As visible in Figure
6, the amount of failed runs can easily be halved by lowering the
required agreement. For larger groups, this agreement reduction
is less important, due to the amount of failed runs already being
relatively low.
5</p>
    </sec>
    <sec id="sec-11">
      <title>CONCLUSION AND OUTLOOK</title>
      <p>In order to acquire more realistic group recommender data for
movie-watching scenarios, we proposed the design of a
crowdsourcing application that can assist the decision-making process
towards a movie to watch with a current group of users. Current
results from our simulation study indicate that such a system could
indeed allow for reaching common consensus within few
interaction steps.</p>
      <p>Our simulation setup allows for more extensive studies to be run.
For example, it should be investigated how dynamically updating
the unrated movie and agreement ratio during a run may minimize
failures. Starting with a higher ratio of unrated movies to maximize
search space and adding more already rated movies in later rounds
might optimize the trade-of between search space and finding
agreement. Lowering agreement ratio in later rounds might solve
sessions that are taking too long. It might also avoid getting stuck
on unsolvable groups.</p>
      <p>Also, it will be essential to investigate whether giving a 1 to 5
feedback rating at the end of a movie recommendation session can
indeed be a relevant depiction of group efects in movie enjoyment.</p>
      <p>In real life, there will not always be a full ‘cold start’ within a
group. This might speed up our process towards convergence, and
should both be investigated as part of simulations, and in real life
scenarios.</p>
      <p>Furthermore, users have probably watched some of the movies
suggested. This might significantly lower the efectiveness of our
application, and this should be tested more extensively. Generally,
considering the framing of a preference elicitation app, if the user
has seen a movie already, there should be an interaction option to
skip it right now. For example, if the user swipes up the movie is
incorporated in the rating group session, but the model will not be
trained on it. This way, people won’t negatively rate a movie they
liked but only watched recently. The lowered efectiveness of the
recommender could potentially be mitigated by such a design.</p>
      <p>Our intention is to further expand our simulation studies, and
start testing a prototype of our proposed app in real life with real
groups of users, e.g. at student dormitories.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>Sihem</given-names>
            <surname>Amer-Yahia</surname>
          </string-name>
          , Senjuti Basu Roy, Ashish Chawlat,
          <string-name>
            <surname>Gautam Das</surname>
            , and
            <given-names>Cong</given-names>
          </string-name>
          <string-name>
            <surname>Yu</surname>
          </string-name>
          .
          <year>2009</year>
          .
          <article-title>Group recommendation: Semantics and eficiency</article-title>
          .
          <source>Proceedings of the VLDB Endowment 2</source>
          ,
          <issue>1</issue>
          (
          <year>2009</year>
          ),
          <fpage>754</fpage>
          -
          <lpage>765</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>Shlomo</given-names>
            <surname>Berkovsky</surname>
          </string-name>
          and
          <string-name>
            <given-names>Jill</given-names>
            <surname>Freyne</surname>
          </string-name>
          .
          <year>2010</year>
          .
          <article-title>Group-based recipe recommendations: analysis of data aggregation strategies</article-title>
          .
          <source>In Proceedings of the fourth ACM conference on Recommender systems. ACM</source>
          ,
          <volume>111</volume>
          -
          <fpage>118</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>Shlomo</given-names>
            <surname>Berkovsky</surname>
          </string-name>
          , Jill Freyne, and
          <string-name>
            <given-names>Mac</given-names>
            <surname>Coombe</surname>
          </string-name>
          .
          <year>2009</year>
          .
          <article-title>Aggregation trade ofs in family based recommendations</article-title>
          .
          <source>In Australasian Joint Conference on Artificial Intelligence</source>
          . Springer,
          <fpage>646</fpage>
          -
          <lpage>655</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>Yen-Liang</surname>
            <given-names>Chen</given-names>
          </string-name>
          , Li-Chen Cheng, and
          <string-name>
            <surname>Ching-Nan Chuang</surname>
          </string-name>
          .
          <year>2008</year>
          .
          <article-title>A group recommendation system with consideration of interactions among group members</article-title>
          .
          <source>Expert systems with applications 34</source>
          ,
          <issue>3</issue>
          (
          <year>2008</year>
          ),
          <fpage>2082</fpage>
          -
          <lpage>2090</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>Alexander</given-names>
            <surname>Felfernig</surname>
          </string-name>
          , Ludovico Boratto,
          <string-name>
            <given-names>Martin</given-names>
            <surname>Stettinger</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Marko</given-names>
            <surname>Tkalčič</surname>
          </string-name>
          .
          <year>2018</year>
          . Evaluating Group Recommender Systems. Springer International Publishing, Cham,
          <fpage>59</fpage>
          -
          <lpage>71</lpage>
          . https://doi.org/10.1007/978-3-
          <fpage>319</fpage>
          -75067-
          <issue>5</issue>
          _
          <fpage>3</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>F Maxwell</given-names>
            <surname>Harper and Joseph A Konstan</surname>
          </string-name>
          .
          <year>2016</year>
          .
          <article-title>The movielens datasets: History and context</article-title>
          .
          <source>Acm transactions on interactive intelligent systems (tiis) 5</source>
          ,
          <issue>4</issue>
          (
          <year>2016</year>
          ),
          <fpage>19</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>Nicolas</given-names>
            <surname>Hug</surname>
          </string-name>
          .
          <year>2017</year>
          .
          <article-title>Surprise, a Python library for recommender systems</article-title>
          . http: //surpriselib.com
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>Anthony</given-names>
            <surname>Jameson</surname>
          </string-name>
          .
          <year>2004</year>
          .
          <article-title>More than the sum of its members: challenges for group recommender systems</article-title>
          .
          <source>In Proceedings of the working conference on Advanced visual interfaces</source>
          .
          <source>ACM</source>
          ,
          <volume>48</volume>
          -
          <fpage>54</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>Judith</given-names>
            <surname>Masthof</surname>
          </string-name>
          .
          <year>2011</year>
          .
          <article-title>Group recommender systems: Combining individual models</article-title>
          .
          <source>In Recommender systems handbook</source>
          . Springer,
          <fpage>677</fpage>
          -
          <lpage>702</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <surname>Mark O'Connor</surname>
            , Dan Cosley, Joseph A Konstan,
            <given-names>and John</given-names>
          </string-name>
          <string-name>
            <surname>Riedl</surname>
          </string-name>
          .
          <year>2001</year>
          .
          <article-title>PolyLens: a recommender system for groups of users</article-title>
          .
          <source>In ECSCW 2001</source>
          . Springer,
          <fpage>199</fpage>
          -
          <lpage>218</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <surname>Thomas</surname>
            <given-names>Ulz</given-names>
          </string-name>
          , Michael Schwarz, Alexander Felfernig, Sarah Haas, Amal Shehadeh, Stefan Reiterer, and
          <string-name>
            <given-names>Martin</given-names>
            <surname>Stettinger</surname>
          </string-name>
          .
          <year>2017</year>
          .
          <article-title>Human computation for constraintbased recommenders</article-title>
          .
          <source>Journal of Intelligent Information Systems</source>
          <volume>49</volume>
          ,
          <issue>1</issue>
          (
          <year>2017</year>
          ),
          <fpage>37</fpage>
          -
          <lpage>57</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <surname>Zhiwen</surname>
            <given-names>Yu</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Xingshe Zhou</surname>
            , Yanbin Hao, and
            <given-names>Jianhua</given-names>
          </string-name>
          <string-name>
            <surname>Gu</surname>
          </string-name>
          .
          <year>2006</year>
          .
          <article-title>TV program recommendation for multiple viewers based on user profile merging. User modeling and user-adapted interaction 16,</article-title>
          <issue>1</issue>
          (
          <year>2006</year>
          ),
          <fpage>63</fpage>
          -
          <lpage>82</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>