<!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>Recommendation of shopping places based on social and geographical influences</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Romain Picot-Clémente</string-name>
          <email>romain.picotclemente@telecom-bretagne.eu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Cécile Bothorel</string-name>
          <email>cecile.bothorel@telecom-bretagne.eu</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Lab-STICC, LUSSI department, Télécom Bretagne, Institut Mines-Télécom</institution>
          ,
          <addr-line>Brest</addr-line>
          ,
          <country country="FR">France</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Lab-STICC, LUSSI department, Télécom Bretagne, Institut Mines-Télécom</institution>
          ,
          <addr-line>Brest</addr-line>
          ,
          <country country="FR">France</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The project tackled in this article is a shopping recommender system that aims at providing recommendations of new interesting shopping places to users, by considering their tastes and those of their friends, since social friends are often sharing common interests. This kind of system is a Location-Based Social Network. It considers social relationships and check-ins; i.e. the action of visiting a shopping place. In order to recommend shopping places, we are proposing a method combining three separated graphs, namely the social graph, the frequentation graph and a geographic graph into one graph. Hence, in this merged graph, nodes can represent users or places, and edges can connect users to each other (social links), users with places (frequentation relations) or places to each other (geographic relations). Given that check-in behavior of users is strongly dependent on the distances, the geographic graph is constructed considering the density of probabilities that a check-in is done according to its distance to the other check-ins. The Katz centrality is then used on the merged graph to compute the scores of candidate locations to be recommended. Finally, the top-n unvisited shopping places are recommended to the target user. The proposed method is compared to methods from the literature on a real-world datatset. The results confirm the real interest of considering both social and geographic data beyond the frequentations for recommending new places. Generally, our method outperforms significantly the compared methods, but under certain conditions that we analyze, we show it gives sometimes mixed results. Social shopping; recommender systems; places recommendation; location-based social networks.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Categories and Subject Descriptors</title>
      <p>H.3.3 [Information storage and retrieval]: Information Search and
Retrieval – information filtering, search process, selection process.</p>
    </sec>
    <sec id="sec-2">
      <title>General Terms</title>
    </sec>
    <sec id="sec-3">
      <title>1. INTRODUCTION</title>
      <p>With the development of social networks and the widespread use of
smartphones, users are sharing more and more contents in mobile
situations. In Location-Based Social Networks (LBSNs) like
Foursquare1, sharing places with friends is even the finality.
In this paper, we are interested in the recommendation of shopping
places. The aim of this project is to improve the user shopping
experience by providing potential interesting new shopping places</p>
    </sec>
    <sec id="sec-4">
      <title>2. RELATED WORKS</title>
      <p>
        In the field of recommender system, there are two main families of
techniques to make recommendations [
        <xref ref-type="bibr" rid="ref6">8</xref>
        ] : a family of techniques
based on collaborative filtering to seek similarities of user profiles
based on ratings (the number of stars, the list of past purchases,
places visited, etc..) and a family of techniques based on similarities
1 https://fr.foursquare.com/
2 Available at http://snap.stanford.edu/data/#locnet
of profiles on the basis of content descriptors. The paper [
        <xref ref-type="bibr" rid="ref7">9</xref>
        ]
compared these methods with different types of similarity measures
and different evaluation methods on two reference datasets.
According to these tests, they argue that the collaborative filtering
methods usually give better results than content filtering methods, at
least when there are sufficient available ratings. However, when a
new user or a new content appears in the system, collaborative
filtering methods have difficulties in providing effective
recommendations for new users or to recommend new content,
because no historical information are available on them. This
problem called the “cold start problem” is overcome by content
filtering methods. Nevertheless, these techniques need reliable
metadata: it appears that the users profiles or descriptive sheets of
places are not reliable, declarative preferences are often inconsistent;
collecting relevant information describing places to attract visitors
can be costly and complex, or even impossible when taking shops.
In this article, we assume the worst case where there are no
descriptors on users and places, except their GPS coordinates. Thus,
we reject the content based methods and we focus on collaborative
filtering methods for the recommendations based on spontaneous
actions of users like their ratings on items, and in our case, like
check-ins in LBSNs. Among these spontaneous actions, still often
underexploited in recommendation, there are also social activities,
like creating relationships or interacting, on platforms allowing it.
Some studies have taken into account the social graph beyond the use
of user-item relationships for recommendations. The paper [
        <xref ref-type="bibr" rid="ref8">10</xref>
        ]
proposes a method for factorizing the rating matrix users-items based
on the singular value decomposition (SVD) by minimizing an
objective function. A term called “social regularization” is included
into the function. This term is constructed considering the direct
friends of the user in the social network. The results of this method
are compared to a similar method that does not consider a social
regularization. This comparison shows that the use of social data
gives an improvement of the recommendations.
      </p>
      <p>
        In [
        <xref ref-type="bibr" rid="ref9">11</xref>
        ], the authors propose to combine user similarity matrices from
the implicit social network and the explicit one. In their example,
they compute two user similarity matrices, one based on the
friendship social network (users-users) and one based on the bipartite
network (users-items). These two matrices are combined in one
similarity matrix by a weighted sum, where weights define the
importance of each network in the computation. Then, they
generalize this model to consider more graphs. Their tests on Flixster
and Epinions show that their algorithm gives better recommendations
than traditional collaborative filtering methods based on the
neighborhood (see section 4.1). We will describe this method in the
context of our project in the section 4.3, in order to compare it with
our solution.
      </p>
      <p>
        In [
        <xref ref-type="bibr" rid="ref10">12</xref>
        ], the authors propose a recommender system of groups based
on the friendship social network, and based on the users-groups
relations. For this purpose, they first describe a way to combine the
social graph with the users-groups graph. Then, they suggest two
methods for recommending groups: one based on the proximity in the
unique graph using the Katz measure and a method modeling users
and groups by latent factors. These two methods give good results,
but the method using the Katz measure is the most efficient in terms
of computation time and recommendations quality. Their method will
be described in the context of our project in the section 4.4, in order
to be compared with our solution.
      </p>
      <p>In our project, we are more specifically interested in recommendation
of places. This implies that we have at our disposal the geographical
coordinates of items to possibly improve the recommendations. Very
few studies have focused on geosocial recommendations.</p>
      <sec id="sec-4-1">
        <title>Nevertheless, we can</title>
        <p>representative of the field.</p>
        <p>
          mention a few recent works that are
The paper [
          <xref ref-type="bibr" rid="ref11">13</xref>
          ] focuses on recommending places in LBSNs. It
highlights the fact that most current algorithms of recommendation
does not take into account all aspects of LBSNs. It proposes an
algorithm Random Walk With Restart in a graph where the nodes are
the users and the places. Users are connected to other users if a
friendship relation exists, and users are connected to places according
to the check-ins. The algorithm is compared to other popular
algorithms of the domain on the Gowalla and Foursquare (via
Twitter) datasets, and gives better results than these latters.
Nevertheless, this algorithm does not take into account of a major
aspect of LBSNs which is the geographic position of the places. The
paper [
          <xref ref-type="bibr" rid="ref12">14</xref>
          ] takes it into account. It proposes a method considering the
geographic, the social and the frequentation aspects in a LBSN. This
algorithm unifies three scores of prediction for each place, based on:
the similarity between users based on their check-ins; the similarity
between users based on their friendship social network; the
geographic information. They based the scores of the geographic
information on the naïve Bayesian theory to predict the probability
score of a check-in in a given place, by calculating the product of the
probabilities of each distance between a given place and the visited
places under the distribution law. The three scores are unified in one
score by a weighted sum to give more or less importance to each
criterion (social, frequentation, geographic). The method has been
compared to several methods and they show that taking into account
both social data and geographic data, with frequentation data
improves the recommendation of places. This method will be called
(F + S + G) in the remainder of this article and will be compared to
our method in section 5.2.
        </p>
        <p>The results given by this latter algorithm are interesting for
improving the recommendations in LBSNs but we believe it is
possible to improve recommendations by searching for more
advanced correlations between places and users. Thus, the method we
are proposing aggregates three graphs – the social graph, the
frequentation graph and a geographic graph – into one graph that is
then used to propagate weights by the Katz centrality method in order
to highlight new candidate locations to be recommended.</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>3. KatzFSG: A KATZ-BASED ALGORITHM</title>
    </sec>
    <sec id="sec-6">
      <title>CONSIDERING FREQUENTATION, SOCIAL</title>
    </sec>
    <sec id="sec-7">
      <title>AND GEOGRAPHIC INFORMATION</title>
      <p>This section describes the method, called KatzFSG, we are
proposing for recommending new places to users according to their
check-ins and their social network. It is composed of three parts, the
first one focuses on the definition of the different graphs. The second
part insists on the creation of the geographic graph which is one of
the main aspects of the method. The third part describes the way the
merged graph is made and how it is used to induce recommendations
by a propagation of weights using the Katz centrality method.</p>
    </sec>
    <sec id="sec-8">
      <title>3.1 Definitions</title>
      <p>The social graph , also called adjacency graph, is based on the
friendship relations between users. In this graph , nodes represent
users, and edges connect nodes corresponding to users with a
friendship relation. The matrix representing this graph is a
symmetric matrix ( is the number of users), where is
when there is a friendship relation between the user and the user
, and is otherwise.</p>
      <p>The frequentation graph is based on the check-ins of users in the
different places. In this bipartite graph, nodes are either users or
places. Edges connect users with the places they have visited (in
which they have made one or several check-in(s)), they are weighted
according to the number of visits. The matrix representing this
graph is a matrix (M is the number of places), where is the
number of time the user has visited the place .</p>
      <p>The geographic graph connects places together. The matrix
representing this graph is a matrix. Our proposition for the
construction of this matrix/graph is described in detail in the
following part.</p>
    </sec>
    <sec id="sec-9">
      <title>3.2 A Geographic Graph based on the check-in behavior of users</title>
      <p>
        As shown in several works [
        <xref ref-type="bibr" rid="ref1">3</xref>
        ] [
        <xref ref-type="bibr" rid="ref2">4</xref>
        ] [
        <xref ref-type="bibr" rid="ref3">5</xref>
        ] [
        <xref ref-type="bibr" rid="ref4">6</xref>
        ], the check-in behavior of
users in a LBSN is highly influenced by the geographic proximity of
places, and more precisely the check-in probability in a place
according to its distance to another check-in follows a power law
distribution. From this observation, we are proposing to construct a
geographic graph linking places together by weights which are the
probabilities of check-ins in them according to their mutual distance.
For this purpose, we first construct the density of probability of the
check-ins following to their distance to another check-in. Figure 1
shows an example of a density of probability.
Then, in order to have the probability of checking-in every place
following to their distance to the other check-ins, this density of
probability is approximated by a curve defined by a power law
function ( ) where is the distance and are the
coefficients.
      </p>
      <p>For finding the optimal coefficients and of this function, we pass
in log-log scale to have a linear model for the distribution function:
(
)
( )
( )
( )
( )
Thus, we seek such that ( ) best approaches the points of the
real distribution. To do this, the method consists in minimizing a
function ( ) such as:
( )
∑( (
)
)
‖ ‖
are the real probability measures for the distances .
(1)
(2)</p>
      <p>For minimizing this function, we choose the gradient algorithm
allowing us to find a value of and such that ( ) approximates
the real probability distribution of check-in according to the distances
of places taken two by two.</p>
      <p>The probability distribution represented by allows connecting each
pair of places by a check-in probability following to their mutual
distance. Thus, for each user, it is possible to create a geographic
graph where the nodes are the places and where the edges connect
places together and are weighted by the check-in probability
computed on the distance between the considered places.
A geographic graph exists for every user. However, it appears that
these graphs do not differ a lot from one user to another. Moreover, a
graph that has been realized for a user with very few check-ins is not
really relevant because there is not enough check-ins to find the real
distribution function. Thus, we propose to generate one unique graph
connecting places together with weights that are based on the
probability distribution of all users, and no longer on a single user.
The geographic matrix is constructed such as
( (
))
(
)</p>
      <sec id="sec-9-1">
        <title>The matrix</title>
        <p>follows:
where (
) is the distance between the places
and .</p>
      </sec>
    </sec>
    <sec id="sec-10">
      <title>3.3 Katz measure on the merged graph</title>
      <p>In our method, we propose to merge the graphs in one unique
graph . So, in this graph, nodes are either places or users, and edges
can connect users together, places together or users with places.</p>
      <p>represents this merged graph and is constructed as
( )</p>
      <p>The proposed method consists then in propagating a weight in the
graph by the Katz measure as follows:</p>
      <p>
        is the weight that is propagated through the graph. For this
algorithm, we are more specifically interested in the effect of the
weight propagation on the users-places relations. These relations are
represented by the block ( ) in the matrix ( ). Given
the expensiveness of this computation, a truncated Katz matrix is
considered:
(
)
∑ (
) ,
being the maximal rank of
calculation
A conservative estimate of the computation cost is ( ),
where is the number of users and is the number of non-zeros
in ( ) . In practice, and like [
        <xref ref-type="bibr" rid="ref10">12</xref>
        ], we choose to stop at the third
rank of calculation3:
(3)
(4)
(5)
(
)
∑
( )
(6)
Finally, for each user , the unvisited places that have the best
weights on the line of the user in the matrix ( ) are
selected. They are then the recommendations to provide to the
corresponding user.
3 Improved algorithm like [
        <xref ref-type="bibr" rid="ref19">21</xref>
        ] could be used to consider more than
three ranks of calculation
Let
where
place .
      </p>
    </sec>
    <sec id="sec-11">
      <title>4. BENCHMARKING METHODS</title>
      <p>This part defines the different methods that will be compared to the
one we are proposing. These methods are taken from the literature we
have discussed previously. The most of them are not designed
originally to recommend places, so we have adapted them for this
purpose. They consider one or more aspects of the system: the social
network, frequentations and/or geographic coordinates.</p>
    </sec>
    <sec id="sec-12">
      <title>4.1 Collaborative filtering based on frequentations (method F)</title>
      <p>
        The method described here is well known in the field of collaborative
filtering, it realizes a collaborative filtering on the user neighborhood
based on the Pearson similarity. It is described in [
        <xref ref-type="bibr" rid="ref13">15</xref>
        ].
      </p>
      <p>be the frequentation matrix connecting users with places,
represents the number of times the user has visited the
The Pearson similarity between the users and based on the
frequentation matrix is denoted ( ). It is calculated as follows:
( )
|
|</p>
      <p>Let be the matrix representing the prediction scores of the future
frequentations of users in the places. , the prediction score of
frequentation of the user in the place , is calculated as follows:</p>
    </sec>
    <sec id="sec-13">
      <title>4.2 Collaborative filtering based on the social relations (method S)</title>
      <p>
        The idea of this algorithm is similar to the one described previously.
It is described in [
        <xref ref-type="bibr" rid="ref14">16</xref>
        ] as friend-based collaborative filtering. It
consists in computing similarity scores between users based on the
friendship relations, involving both the social matrix and the
frequentation matrix.
( )
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
|
|
{
      </p>
      <p>and represent respectively the influence degrees of similarity
based on the social relations and based on frequentations in the global
similarity score.</p>
      <sec id="sec-13-1">
        <title>The prediction scores matrix is then constructed as follows :</title>
      </sec>
      <sec id="sec-13-2">
        <title>The matrices the matrix and such as:</title>
        <p>The following is the same as in the method S for combining the
similarity values and for computing the prediction scores.</p>
      </sec>
    </sec>
    <sec id="sec-14">
      <title>4.4 Katz algorithm on frequentation and social (method KatzFS)</title>
      <p>
        This algorithm is proposed in [
        <xref ref-type="bibr" rid="ref10">12</xref>
        ], it is used originally for the
recommendation of groups, but we adapt it here for the
recommendation of places in order to compare it to our proposition.
In this algorithm, the social graph and the frequentation graph are
merged in one graph. The idea is to propagate weights into this graph
in order to highlight non-obvious relations.
      </p>
      <p>are merged in one unique graph represented by
(</p>
      <p>)</p>
    </sec>
    <sec id="sec-15">
      <title>4.3 Collaborative filtering based on the fusion of</title>
      <p>social and frequentation similarities (method</p>
    </sec>
    <sec id="sec-16">
      <title>FuseFS)</title>
      <p>
        This method is described in [
        <xref ref-type="bibr" rid="ref9">11</xref>
        ]. It is very similar to the previous
one, but the difference lies in the fact that it is not restricted to users
who are friends for calculating similarities.
      </p>
      <p>Thus, we only show the definition of
(
) and
(
).
( )
( )
|
|
|
|
∑ [(
∑ [(
√∑
(
̅ )</p>
      <p>√∑
√∑
(
̅)
√∑
̅ ) (
̅) (
(
(
̅ )]
̅)]
̅ )
̅)
|
|
|
|
∑</p>
      <p>∑
( )
represents the influence degree of the social graph in the merged
graph. has been normalized before integrating . Weights are then
propagated into the graph by the Katz measure as follows:
Since we are only interested in the users-places block, the
computation is limited to the block ( ) . For the benchmarks,
we will stop the computation at the third rank.</p>
      <p>The recommendations are then made according to the newly obtained
users-places weights by selecting those with the highest scores.</p>
    </sec>
    <sec id="sec-17">
      <title>4.5 Geographic method (method G)</title>
      <p>
        This method called geographic influence recommendation is
described in [
        <xref ref-type="bibr" rid="ref12">14</xref>
        ]. The idea is to take only into account the geographic
coordinates of the visited places in order to deduce unvisited places
that are at interesting distances for users. They first find the check-ins
distribution function for each user, which is a power law function
( ) , where and are the parameters found from the real
distribution of check-ins.
      </p>
      <p>Then, by using the naïve Bayesian method, it is possible to calculate
the probability ( ) that a place is interesting relative to its
distance to the other visited places:
( )
∏
( (
))
∏
is the set of visited places and is a visited place from this set.
( ) is the distance between the two places and .</p>
      <p>Finally, the prediction matrix will be composed of all these
probabilities that have been computed for each user (the distribution
function has to be found for each user).</p>
    </sec>
    <sec id="sec-18">
      <title>4.6 Mixing methods</title>
      <p>The methods described previously can be fused easily to take into
account all aspects: social, frequentation, geographic.</p>
      <p>To do this, for each user, their prediction vectors (the lines of the
prediction matrices corresponding to the user) are normalized and are
summed in a weighted way to give more or less importance to each
method.</p>
      <p>An example of fusing methods is as follows. Let be the prediction
matrix obtained by the method G (section 4.5). Let be the
prediction matrix obtained by the method KatzFS (section 4.4). For
each user , the prediction scores for each place are calculated
such as:
( )
(
)
(18)
and are the coefficients that define the influence degree of the
matrices and in the final matrix. ( ) and ( ) allow
to normalize the values obtained in each matrix on each line. Finally,
the prediction matrix is the matrix connecting users and places
with a score.</p>
      <p>
        Then, in a similar way to this example, mergers of the methods
described above will be proposed. We will test (F+S), (KatzFS+G),
(FuseFS+G) and (F+S+G). This latter is the method called unified
collaborative POI recommendation in [
        <xref ref-type="bibr" rid="ref12">14</xref>
        ].
      </p>
    </sec>
    <sec id="sec-19">
      <title>5. EXPERIMENTATION</title>
    </sec>
    <sec id="sec-20">
      <title>5.1 Dataset</title>
      <p>In order to test our algorithm, we are using a Gowalla dataset. It
consists in a dataset of 196591 users, 950327 friendship relations and
6442890 check-ins of these users in 1279228 different places. The
period of check-ins goes from Februray 2009 to October 2010.
Gowalla was a location-based social network which closed in March
2012 after being acquired by Facebook in late 2011. This dataset has
been chosen because it is publicly available and often used in
research papers. To our knowledge, no LBSN dedicated to shopping
is available.</p>
      <p>Given that the computation time of our algorithm is important, we are
proposing to only rely on some geographic areas to test it. We will
restrain areas to a maximum size of kilometers.
Arbitrarily, the selected areas are: San Francisco, Chicago, Ireland,
South Louisiana and Paris.</p>
      <p>The dataset is divided into time periods of one week from 2009/12 to
2010/10. Each week is used as training dataset and the next week is
used as a test dataset. In order to measure the quality of the results,
recall and precision measures are done. They are based on the
recommendations computed on the training dataset compared to the
real check-ins in the test dataset. The choice of taking one week
periods is mostly influenced by the limited memory available to
handle big matrices on the test machine.</p>
      <p>The measures are averaged on the set of periods in order to have an
average value of the recall and of the precision for a one week period.
This is done for every selected area.</p>
    </sec>
    <sec id="sec-21">
      <title>5.2 Results</title>
      <p>The different benchmarks are conducted on the methods presented in
the previous section, in addition to our method (KatzFSG). As it is
frequent in this kind of benchmarks, we add also a method
“popularity” which recommends the most popular places from the
frequentation matrix.</p>
      <p>The composed methods (which aggregate several matrices for their
computation) need to define parameters for the influence of the
frequentation, the social and/or the geographic proximity. However,
we want here to compare the methods in optimal conditions such that
they give the best possible results. Thus, the best values of these
parameters are found for each period of time in order to obtain in
each case the best possible values for the recall and the precision in
each method. The number of recommendations for each user will
take the following values: 5, 10, 20.</p>
      <p>Table 1, Table 2 and Table 3 show respectively the average value of
the recall for each method with 5, 10 and 20 recommendations by
user. We can see that our method (KatzFSG) gives the best values for
every tested area, in average. Beyond this, these results show again
the interest of using social and/or geographical information for
making recommendations. Indeed, we can see that the method (F+S)
gives better results than (F), and (F+S+G) gives better results than
(F+S). It is also confirmed with the other composed methods.
Figure 2 presents the recall gain of the method (KatzFSG) compared
to (F+S+G), since we consider this method as the reference one for
recommending places in LBSNs. In average, the gain of recall is
about 40% on the different tested areas.</p>
      <p>San Francisco
These results show clearly the interest of using our solution to
improve the quality of the recommendations in a LBSN.
Nevertheless, before choosing our solution, it is necessary to wonder
how far we are willing to sacrifice the computational cost for the
quality improvement. Indeed, for example in San Francisco for 5
recommendations, we can see that the gain in recall is about 20% but
the value is still weak (about 6% in Table 1). In this kind of cases, is
it worth using a costly algorithm since it still gives a bad result? The
answer would depend on the system/application constraints.
F+S+G</p>
      <p>KatzFSG
For the precision values, we present here only the gain of precision of
(KatzFSG) compared to (F+S+G) in Figure 3. The gain of precision
is about 33% in average on the different areas.
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43</p>
      <p>Week
Moreover, we have to keep in mind that we show here only average
values. In some cases, our algorithm is worse than the (F+S+G)
algorithm. For instance, for Chicago, the Figure 4 shows the variation
of recall over the periods for 20 recommendations, and we can see
that the recall given by (KatzFSG) is sometimes smaller than
(F+S+G). We do not show the variation of precision because it is
quite similar.</p>
      <p>These variations are difficult to explain, but when looking at the
variation of the densities of the frequentation and social matrices in
Figure 5, it seems that more the density of the matrices are weak,
more the probability of having worse results from (KatzFSG)
increases.
However, it is not sufficient to explain these variations. Let’s take a
week where (KatzFSG) gives worse recall than (F+S+G). The Table
4 shows the recall values of each method for the week 34. We can see
that the method (F+S) gives the same results as (F+S+G). Moreover,
we show on this table the results of (F+G) and (S+G). We can see
that (F+G) gives the same results as (F) and that (S+G) improves the
results of (S) and (G).
0,25
4,56
4,79
9,63
7,12
9,63
9,63
8,27
7,12
9,63
11,57
11,57
8,33
0,25
4,56
6,00
13,61
9,64
13,93
16,13
13,61
9.0
9,64
13,93
16,13
14,09
0,84
6,84
9,54
20,96
12,73
21,93
23,48
20,96
13,71
12,73
21,93
23,48
21,19
0,014
0,012
0,01
Given these observations, it appears that the geographic part does not
give any new good information to improve the recommendations in
this period because they are already available in the frequentation
part. We can see the similar phenomenon in other cases where
(KatzFSG) is worse than (F+S+G). Thus, we advance the hypothesis
that, in these special cases, the frequentation part and the geographic
part are “redundant”, so that the geographic dimension does not bring
extra knowledge: correlated locations are also close in distance. Are
there any special events in these moments? What is the bias
introduced by the way we generate the geographic graph?
These experiments show that our algorithm generally outperforms
significantly the other algorithms. Let us note that even in the worse
cases in Gowalla dataset, (KatzFSG), (F+S+G) and (F+S) give
comparable results with no significant difference in terms of recall
and precision.</p>
      <p>Frequentation</p>
      <p>Social</p>
    </sec>
    <sec id="sec-22">
      <title>6. CONCLUSIONS</title>
      <p>
        This article presents a method to enhance the user experience when
she is searching for shopping places to go. The purpose is to provide
recommendations of shopping places that should interest her. For
this, we suppose that her previous visited shopping places and her
social network are known. Thus, this kind of recommendation
problem is a LBSN recommendation problem because we can
consider social relations and visits of users in different geographic
locations for making recommendations. This article proposes an
algorithm combining the social graph, the frequentation graph and a
geographic graph in one unique graph, in order to then realize a
proximity computation between users and places in the graph using
the Katz measure. This process allows finding places to recommend
to users according to their frequentations, their friends frequentations,
and the geographic distance between the places. It is compared with
well-known algorithms of the field of recommendation and especially
the algorithm of [
        <xref ref-type="bibr" rid="ref12">14</xref>
        ], that we consider as the reference for making
recommendations in LBSNs. A Gowalla dataset is used to realize the
comparisons.
      </p>
      <p>First of all, the tests done on different areas demonstrate again the
statements of the literature telling that the social and/or geographical
information have a real value for improving the recommendations.
Then, the results show that our method generally improves
significantly the recommendation quality in terms of recall and
precision, whatever the number of recommendations. Nevertheless,
even if our method is better in average than the other methods tested,
it happens sometimes that it is not the case as we have shown on an
example on Chicago. We tried to understand why there are these
phenomenon and we saw that it happens more often when the
densities of the social and the frequentation matrices are weak. After
some extensive testing, we have highlighted the fact that this could
happen when the geographic part and the frequentation part are too
correlated so that the recommendations extracted from the
frequentation part contain already the recommendations extracted
from the geographic part. In the future, we will be interested in
making more experiments to know how to identify these special
cases.</p>
      <p>Moreover, we are interested in the parameters of the algorithms.
Indeed, in the comparison part, we are comparing the algorithms in
the optimal conditions where the parameters are best for the tested
periods. For these comparisons, these parameters are found by
varying them and looking the quality of the recommendations relative
to the check-ins in the following period. Nevertheless, it is not
possible to do this in a real use and the parameters have to be fixed a
priori. For determining them, a study has to be done to approach the
optimal parameters according to the features of the graphs, like their
density.</p>
      <p>Finally, for future works, as we have included in this work the spatial
aspect to the recommendation process, we would like to go further by
including the temporal aspect in order to generate recommendations
based on spatio-temporal regularities.</p>
    </sec>
    <sec id="sec-23">
      <title>7. ACKNOWLEDGMENTS</title>
      <p>This work has been supported by the French FUI Project Pay2You
Places, "labelled" by three Pôles de Compétitivité (French clusters).</p>
    </sec>
    <sec id="sec-24">
      <title>8. BIBLIOGRAPHIE</title>
      <p>[1]</p>
      <p>M. Jamali and M. Ester, "A matrix factorization technique with
trust propagation for recommendation in social networks.," in
4th ACM RecSys Conf., 2010.
[2] I. Konstas, V. Stathopoulos and J. M. Jose, "On social networks
and collaborative recommendation," in SIGIR ’09: Proceedings
of the 32nd international ACM SIGIR conference on Research
and development in information retrieval, New York, USA,
2009.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>D.</given-names>
            <surname>Brockmann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Hufnagel</surname>
          </string-name>
          and
          <string-name>
            <given-names>T.</given-names>
            <surname>Geisel</surname>
          </string-name>
          ,
          <article-title>"The scaling laws of human travel,"</article-title>
          <source>Nature 439</source>
          , pp.
          <fpage>462</fpage>
          -
          <lpage>465</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>N.</given-names>
            <surname>Couldry</surname>
          </string-name>
          ,
          <article-title>"Mediaspace: Place, scale and culture in a media age,"</article-title>
          <source>Routledge</source>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>B.</given-names>
            <surname>Jiang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Yin</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Zhao</surname>
          </string-name>
          ,
          <article-title>"Characterizing human mobility patterns in a large street network,"</article-title>
          <source>arXiv preprint arXiv:0809.5001</source>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>A.</given-names>
            <surname>Noulas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Scellato</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Mascolo</surname>
          </string-name>
          and
          <string-name>
            <given-names>M.</given-names>
            <surname>Pontil</surname>
          </string-name>
          ,
          <article-title>"An empirical study of geographic user activity patterns in foursquare,"</article-title>
          <source>ICWSM</source>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>L.</given-names>
            <surname>Katz</surname>
          </string-name>
          ,
          <article-title>"A New Status Index Derived from Sociometric Index,"</article-title>
          <source>Psychometrika</source>
          , pp.
          <fpage>39</fpage>
          -
          <lpage>43</lpage>
          ,
          <year>1953</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>P.</given-names>
            <surname>Resnick</surname>
          </string-name>
          and
          <string-name>
            <given-names>H. R.</given-names>
            <surname>Varian</surname>
          </string-name>
          ,
          <article-title>"Recommender systems - introduction to the special section</article-title>
          .,
          <source>" Commun. ACM</source>
          <volume>40</volume>
          (
          <issue>3</issue>
          ), pp.
          <fpage>56</fpage>
          -
          <lpage>58</lpage>
          ,
          <year>1997</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>L.</given-names>
            <surname>Candillier</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Jack</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Fessant</surname>
          </string-name>
          and
          <string-name>
            <given-names>F.</given-names>
            <surname>Meyer</surname>
          </string-name>
          ,
          <article-title>"State-of-the-art recommender systems," Collaborative and Social Information Retrieval and Access: Techniques for Improved User Modeling</article-title>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>22</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>H.</given-names>
            <surname>Ma</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Zhou</surname>
          </string-name>
          , C. Liu,
          <string-name>
            <given-names>M. R.</given-names>
            <surname>Lyu</surname>
          </string-name>
          and
          <string-name>
            <surname>I. King</surname>
          </string-name>
          ,
          <article-title>"Recommender Systems with Social Regularization," in The fourth ACM international conference on Web search and data mining (</article-title>
          <source>WSDM '11)</source>
          , New York,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>P.</given-names>
            <surname>Symeonidis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Tiakas</surname>
          </string-name>
          and
          <string-name>
            <given-names>Y.</given-names>
            <surname>Manolopoulos</surname>
          </string-name>
          ,
          <article-title>"Product Recommendation and Rating Prediction based on," in The fifth ACM conference on Recommender systems (</article-title>
          <year>RecSys 2011</year>
          ), New York, USA,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>V.</given-names>
            <surname>Vasuki</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Natarajan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Lu</surname>
          </string-name>
          and
          <string-name>
            <surname>I. Dhillon</surname>
          </string-name>
          ,
          <article-title>"Affiliation Recommendation using Auxiliary Networks,"</article-title>
          <source>in The fourth ACM conference on Recommender systems (RecSys</source>
          <year>2010</year>
          ),
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>A.</given-names>
            <surname>Noulas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Scellato</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Lathia</surname>
          </string-name>
          and
          <string-name>
            <given-names>C.</given-names>
            <surname>Mascolo</surname>
          </string-name>
          ,
          <article-title>"A Random Walk Around the City: New Venue Recommendation in Location-Based Social Networks,"</article-title>
          <source>in IEEE Internationcal Conference on Social Computing Amsterdam</source>
          , The Netherlands,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>M.</given-names>
            <surname>Ye</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Yin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.-C.</given-names>
            <surname>Lee</surname>
          </string-name>
          and
          <string-name>
            <given-names>D.-L.</given-names>
            <surname>Lee</surname>
          </string-name>
          ,
          <article-title>"Exploiting geographical influence for collaborative point-of-interest recommendation,"</article-title>
          <source>in The 34th international ACM SIGIR conference on Research and development in Information Retrieval</source>
          , New York, NY, USA,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>J. S.</given-names>
            <surname>Breese</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Heckerman</surname>
          </string-name>
          and
          <string-name>
            <given-names>C.</given-names>
            <surname>Kadie</surname>
          </string-name>
          ,
          <article-title>"Empirical analysis of predictive algorithms for collaborative filtering,"</article-title>
          <source>in Fourteenth Conference on Uncertainty in Artificial Intelligence, Madison</source>
          ,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>H.</given-names>
            <surname>Ma</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. R.</given-names>
            <surname>Lyu</surname>
          </string-name>
          and
          <string-name>
            <surname>I. King</surname>
          </string-name>
          ,
          <article-title>"Learning to recommend with trust and distrust relationships,"</article-title>
          <source>in The third ACM conference on Recommender systems (RecSys</source>
          <year>2009</year>
          ),
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>A.</given-names>
            <surname>Noulas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Scellato</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Lathia</surname>
          </string-name>
          and
          <string-name>
            <given-names>C.</given-names>
            <surname>Mascolo</surname>
          </string-name>
          ,
          <article-title>"Mining User Mobility Features for Next Place Prediction in Location-based Services,"</article-title>
          <source>in IEEE Internationcal Conference on Data Mining (ICDM</source>
          <year>2012</year>
          ), Brussels, Belgium,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>J.</given-names>
            <surname>Golbeck</surname>
          </string-name>
          ,
          <article-title>"Trust and nuanced profile similarity in online social networks,"</article-title>
          <source>ACM Trans. Web</source>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>33</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>C.</given-names>
            <surname>Bothorel</surname>
          </string-name>
          ,
          <article-title>"Analyse de réseaux sociaux et Recommandation de contenus non populaires," Revue des nouvelles technologies de l'information (RNTI</article-title>
          ),
          <year>2011</year>
          , vol.
          <source>A.5</source>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>J.</given-names>
            <surname>He</surname>
          </string-name>
          and
          <string-name>
            <given-names>W.</given-names>
            <surname>Chu</surname>
          </string-name>
          ,
          <article-title>"A Social Network-Based Recommender System (SNRS)," Annals of Information Systems, Special Issue on Data Mining for Social Network Data</article-title>
          , vol.
          <volume>12</volume>
          , pp.
          <fpage>44</fpage>
          -
          <lpage>74</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [21]
          <string-name>
            <surname>K. C. Foster</surname>
            ,
            <given-names>S. Q.</given-names>
          </string-name>
          <string-name>
            <surname>Muth</surname>
            ,
            <given-names>J. J.</given-names>
          </string-name>
          <string-name>
            <surname>Potterat</surname>
            and
            <given-names>R. B.</given-names>
          </string-name>
          <string-name>
            <surname>Rothenberg</surname>
          </string-name>
          ,
          <article-title>"A Faster Katz Status Score Algorithm,"</article-title>
          <source>Comput. Math. Organ. Theory</source>
          , vol.
          <volume>7</volume>
          , no.
          <issue>4</issue>
          , pp.
          <fpage>275</fpage>
          -
          <lpage>285</lpage>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>