Preference-Aware Successive POI Recommendation with

Preference-Aware Successive POI
Recommendation with Spatial and Temporal
Influence
Madhuri Debnath(B) , Praveen Kumar Tripathi, and Ramez Elmasri
University of Texas at Arlington, Arlington, TX, USA
{madhuri.debnath,praveen.tripathi}@mavs.uta.edu, [email protected]
Abstract. There have been vast advances and rapid growth in Location
based social networking (LBSN) services in recent years. Point of Interest (POI) recommendation is one of the most important applications in
LBSN services. POI recommendation provides users personalized location recommendation. It helps users to explore new locations and filter
uninteresting places that do not match with their interests. But traditional POI recommendation cannot suggest where a user may go the next
day or next hour based on their current location or status. In this paper,
we consider the task of personalized successive POI recommendation,
recommending to a user the very next location where he might be interested to go next based on his current location. Multiple factors influence
users to choose a POI, such as user’s categorical preferences, temporal activities and location preferences, popularity of a POI as well as
sequential patterns of a user. In this work, we define a unified framework
that takes all these factors into consideration to build a better successive
POI recommendation model. We evaluate our system with a real-world
dataset collected from Foursquare. Experimental results show that our
proposed framework works better than other baseline approaches.
Keywords: Successive POI recommendation
network
1
·
Location-based social
Introduction
In recent years, location based social network (LBSN) services have gained a vast
amount of attention and popularity among users. Foursquare [1], Yelp [2] and
Facebook Places [3] are a few of the examples of LBSN services. LBSNs allow
users to share their life experiences via mobile devices. “Check-in” is a process
by which users post their arrival to a location. They also share their experiences
by leaving comments or tips on that location. A Point of Interest (POI) location
can be a “Restaurant”, “Travel spot”, “Park” and so on.
It was reported that there are over 30 million registered users in Foursquare.
The number of check-ins posted by them by January 2013 was over 3 billion [4].
The “check-ins” contain abundant information about their daily activities as
c Springer International Publishing AG 2016
E. Spiro and Y.-Y. Ahn (Eds.): SocInfo 2016, Part I, LNCS 10046, pp. 347–360, 2016.
DOI: 10.1007/978-3-319-47880-7 21
348
M. Debnath et al.
well as their preferences among the POIs. For example, people who often visit
a gym must be interested in physical exercise. Also, people who visit the same
place may share similar interests. Location histories and opinions of one user can
be exploited to recommend an unvisited location to another user if they share a
similar interest.
The task of POI recommendation is to provide personalized recommendation
of POI locations to mobile users. The recommended locations should match their
personal interests within a geospatial range [5]. Recently, POI recommendation
in LBSNs has attracted much attention in both research and industry [6,7].
However traditional POI recommendation systems consider all check-ins as a
whole and generate recommendations [8–12]. They do not consider the users’
sequential movement information. Therefore, they cannot suggest where a user
may go in the next few hours based on their current location or status.
In this work, we consider the task of personalized successive POI recommendation. Successive POI recommendation refers to the problem of recommending
users the very next location based on his current location and current time. This
task recommends those locations that a user may not visit frequently or before,
but he/she may like to visit at successive timestamps [13]. For example, successive POI recommendation can suggest a user location to have fun after dinner,
or a location for outdoor activities in a nearby park after his work.
The essential difference between traditional recommendation system and successive POI recommendation system is that the performance of successive recommendation tasks is largely influenced by users’ current visiting locations [14].
Also the shift from one location to another location depends on their categorical
preferences and periodic patterns. One may go to a coffee shop to grab a cup of
coffee first, then head to work or university. On a weekend people often go to
shopping, then go to a restaurant for dinner or lunch.
Fig. 1. Sequential check-in data of three users
Figure 1 gives examples of sequential check-in data of three users. User 1
goes to dinner from the office. User 3 goes to a bar after office. If user 1 and
user 3 share similar interests, user 1 also may become interested to go to a bar
after office. Thus collaborative information shared by the users can be used to
recommend them the possible next locations based on their current location.
In [15], we proposed a preference-aware, location-aware and time-aware POI
recommendation system. The method used User-based Collaborative Filtering
Preference-Aware Successive POI Recommendation
349
method for POI recommendation while incorporating four other factors: (1)
Categorical preferences, (2) Temporal influence, (3) Geographical preferences
and (4) Popularity of POIs. In this paper, we extend this work and propose
a preference-aware successive POI recommendation system with incorporating
spatial and temporal influence (PLTSRS) that offers a particular user a set of
POI locations based on his current location, current time and his personal interests. The contribution of this paper can be summarized as follows:
– We model personal preferences of users based on the category information of
their location histories. We further analyse the temporal influence on their
activities. We incorporate time dimension to model time-specific user preferences.
– We mine sequential patterns from check-in location of each user. Then, we construct personalized Category-To-Category transition probability matrix using
first order markov chain [16].
– We analyze users’ spatial behavior and incorporate spatial influence to generate spatial-aware location recommendations.
– Our recommendation model uses popularity factor of individual location by
calculating time-specific popularity.
– We develope a successive POI recommendation model PLTSRS (PreferenceAware, Location-Aware and Time-Aware Successive POI Recommendation
System), which jointly considers user’s personalized sequential movement
information, temporal categorical preferences, location preferences and popularity of POIs. To best of our knowledge, this is the first work that uses all
the factors together to build a successive POI recommendation model.
– We evaluate our proposed framework with one large scale LBSN dataset from
foursquare [1].
2
Related Work
With the easy availability of users’ check-in data in LBSN, many studies have
been conducted for POI recommendation. In this section, we briefly introduce
two lines of research related to our task: (1) Traditional POI recommendation,
(2) Successive POI recommendation.
Traditional POI recommendation systems have been extensively studied in
the last several years. Two popular approaches have been used to generate recommendation model: Collaborative Filtering algorithm and Non-Negative Matrix
Factorization algorithm.
In [6], the User-based CF approach considers a combination of social influence and spatial influence. Their experiments report that geographical influence
has a significant impact on the accuracy of POI recommendation, whereas the
social friend link contributes little. Their results also indicate that user-based
CF works much better than Item-based CF. In [10], the authors exploit spatial
influence as well as temporal influence for building a recommendation model.
They incorporate time factors in the basic CF based model by computing similarity between two users by considering check-in information at a specific time t,
350
M. Debnath et al.
rather than that of all times. In [11], the authors explore user preferences with
social and geographical influence for POI recommendation. They model user
preferences using predefined categorical information of location data.
In [8], the authors propose a geographical probabilistic factor analysis framework for recommendation that takes various other factors into consideration, viz.
user-item preferences, POI popularity and geographical preferences of individual users. In [17], the authors propose a friendship based collaborative filtering
(FCF) approach for POI recommendation.
In [15], the authors propose a User Based Collaborative Filtering method
based framework which combines 4 factors: categorical preferences, temporal
influence, spatial influence and popularity of a location. They incorporate time
factors by generating time specific categorical preferences. Clustering method
has been used to model location preference of each user. Popularity of each
location has been calculated by combining both regional factor and temporal
factor.
Lately a few successive POI recommendation works have been conducted.
In [7], the authors propose a probabilistic model to integrate category transition probability and POI popularity to solve the problem. But they did not
incorporate spatial influence here.
In [18], the authors propose a Factorized Personalized Markov Chain (FPMC)
model for next-item recommendation. In [13], the authors propose FPMC-LR
model by extending FPMC model with localized region constraint to solve successive POI recommendation task. They divide the geographical space into a
grid. Locations of the grid cell the user is currently visiting and its surrounding
8 grid cells are used as candidate locations. This condition is called Localized
Region Constraint. In [19], the authors propose a personalized metric embedding method (PRME ) to model personalized check-in sequences for next new
POI recommendation.
3
3.1
Preliminaries
Data Structure
In this paper, we use one real-world LBSN dataset from Foursquare. This dataset
has three key data structure: (1) User, (2) POI location and (3) Check-in.
(1) Each user u is represented by a unique id. Let U = {u1 , u2 , u3 , . . . un } be the
set of users.
(2) Each POI location has a unique POI id and geographical position (latitude
and longitude). Let L = {l1 , l2 , l3 , . . . , lm } be the set of POI locations. Each
location l is also associated with category information, which represents its
functionality. In Foursquare, there are 8 primary categories (“Food”, “Arts
and Crafts” etc.). Each primary category includes other sub-categories. In
this paper, we only consider the sub-category information of a location for
simplicity. The word category and sub-category will be used interchangeably
throughout the paper.
140
6000
120
5000
Check-in Frequency
# of categories checked by user
Preference-Aware Successive POI Recommendation
100
80
60
40
20
0
0
500
1000
User
(a) Number of unique
checked-in by users
1500
351
Arts & Crafts
College
Food
Outdoors
Work/Office/Home
Nightlife
Shop
Travel
4000
3000
2000
1000
0
0
5
10
15
20
25
Hour of the day
categories (b) Check-in frequency at different
hour of the day
Fig. 2. Data analysis: categorical preference and temporal influence
(3) “Check-in” is a process by which a user u announces his physical arrival or
presence at a venue in location based social network. Let Chij = {ui , lj , t} be
a check-in tuple, which represents that user ui checked in POI lj at time t.
3.2
Data Analysis
In this section, we present some data analysis results to see how different factors
(Spatial, Temporal, Preference) influence a user to choose a location to visit.
Categorical Preference Constraints. Personal preference plays an important rule for a user to choose a POI. They prefer to visit a location only if the
category of that location matches their interests. To have a better idea, we count
the number of unique categories visited by users. We sort the users based on the
count and plot the result (see Fig. 2a). We have a total of 252 categories. We see
that the number of categories visited by most of the users is less than 60. Users
generally do not visit locations of all categories, they visit a location only if they
like the category. So a good POI recommendation system must recommend a
location to a user that matches with his preferences.
Temporal Influence. User activities are significantly influenced by time [10].
We count the check-in frequency of 8 primary categories at different hours of the
day (see Fig. 2b). Result shows that category “Shop” is more active from 3 pm
to until 12 am. On the other hand, category “Nightlife” starts after 10 pm and
continues until 5 am.
We have done analysis to see how frequently people visit locations. We plot
the Cumulative Distribution Function (CDF) of the time differences between
successive check-in data (see Fig. 3a). Result shows that 90 % of successive checkins have a time difference less than 200 min.
352
M. Debnath et al.
1
0.9
0.9
0.8
0.7
Pr[X<=x]
Pr[X<=x]
0.8
0.6
0.5
0.4
0.7
0.6
0.5
0.3
0
200
400
600
800
1000
Time difference between successive check-ins
(in minutes)
0.4
0
20
40
60
80
100
Successive check-in distance (in km)
(a) Time difference between two suc- (b) Geographical distance between two
cessive check-ins (in minutes)
successive check-ins
Fig. 3. Data analysis: spatial and temporal influence
Spatial Influence. Geographical position of a POI location plays an important
role. Figure 3b shows the Cumulative Distribution Function (CDF) of geographical distance between two successive check-ins. Result shows that about 90 % of
successive check-ins have a geographical distance less than 20 km.
3.3
Problem Formulation
Let U be the set of users and P be the set of locations. Lu denotes the check-in
histories of user u. Given a user u(u ∈ U ), his check-in histories Lu , his currently
visiting POI lnow (lnow ∈ L) and corresponding visiting timestamp tnow , the task
is to recommend a new POI lnext (lnext ∈
/ Lu ) to u to visit within time range tnow
to tnext . Here, (tnext − tnow ) ≤ Tmax . Here, Tmax is a user defined time interval
parameter.
3.4
User-Based Collaborative Filtering
User-based CF first finds similar users based on their interests/ratings on items
using a similarity measure. Then the recommendation score for an item is computed by the weighted combination of historical ratings on the item from similar
users [20].
Given a user u ∈ U , the recommendation score that u will check-in a POI l
that she has not visited yet is computed with the following equation,
wuv
v∈U
(1)
Ru (l) =
|v|
Here v ∈ U are list of users who have visited the same location l and wuv is
the similarity score between u and v.
Preference-Aware Successive POI Recommendation
4
353
PLTSRS Framework
Our proposed framework is comprised of two major steps. (1) Offline Modeling
and (2) Online Recommendation.
The Offline Modeling step has 3 components. (1) Learning User’s Categorical
Transition Probabilities, (2) Time-specific Personal Preference Discovery and (3)
Calculating Time-Specific Popularity of Locations.
In the first component, we learn each user’s categorical transition probability
denoted by Tu (ci , cj ). Tu (ci , cj ) is calculated using first order markov chain that
indicates the probability of user u to move from a location of category ci to
location with category cj . In the second component, we learn each user’s personal
categorical preference on category c denoted as Pu (c). As preference depends on
time, we learn time-specific categorical preference on category c at time segment
(t )
ts denoted as Pu s (c). In the third component, we calculate the time-specific
popularity of each POI location l denoted as ρ(ts ) (l).
The Online Recommendation has two components. (1) Spatial-Aware Candidate Selection and (2) Successive Location Recommendation. The first component selects a set of candidate locations based on u’s current location lnow . This
component improves the efficiency of the approach significantly as the number
of candidate locations is much smaller than the total number of locations. Given
a user u, his current location lnow and current time tnow , the second component
calculates the location ratings of all candidate locations based on the factors
mentioned above. The top-K locations are recommended to user u.
4.1
Offiline Modeling
Categorical Transition Probability. In this step, for each user u, we first
extract the successive location pairs from his check-in sequences. A location pair
(li , lj ) is a successive pair if the time difference between u’s visit at location li
and location lj is less than the time interval threshold Tmax . Then, we map the
locations of the successive location pairs with corresponding category information to mine the successive category pairs (cx , cy ). Here, cx is the category of li
and cy is the category of lj . We build a Category-To-Category transition probability matrix of user u denoted as Tu . The transition matrix Tu ∈ [0, 1]|C|×|C| ,
Tu (i, j) specifies the probability for a user u to move from location with category
ci to a location with category cj . Transition probability Tu (i, j) is calculated as:
(u)
Tu (i, j) =
(u)
(u)
|{(l1 , l2 ) : l1
(u) (u)
|{(l1 , l2
(u)
∈ Ci ∩ l2
:
(u)
l1
∈ Cj }|
∈ Ci }|
(2)
Figure 4a shows the transition matrices of individual users. Entries with “?”
refers to missing values as there is no data to estimate probabilities. A single user
generally does not visit all categories, so there may be a lot of missing values
in his transition matrix. To solve this problem, we use low-rank non-negative
matrix factorization [21] algorithm to factorize each transition probability matrix
Tu into two low rank matrices Wu ∈ IRk×|C| and Hu ∈ IR|C|×k , with k |C|
354
M. Debnath et al.
Fig. 4. Categorical transition probability
being the number of latent factors. After obtaining Wu and Hu , the probability
matrix Tu is approximated as T̄u , T̄u (i, j) being the approximated probability of
transition from category ci to category cj (see Fig. 4b).
Personal Preference Discovery. In this step, we model each individual user’s
categorical preferences from his/her check-in history. Categorical preference of a
user u denoted as Pu (c) represents u’s affinity to visit a location with category
c. Pu (c) is generated using following equation [15].
Pu (c) = CF (c, Lu ) × ILF (c, L)
(3)
Here CF (c, Lu ) is the measure of how many times user u has visited the locations with a category c. Intuitively, a user would visit more locations belonging
to a category if he likes it. Here Lu is the location set visited by u. ILF handles
the Rare-Item problem [22]. Some locations are not visited by a user very often.
For example, the number of visits to a restaurant is generally more than that of
a museum. If a user visits location of a category that is rarely visited by other
users, it means that the user could like this category more prominently [11].
CF is calculated using Eq. (4) and ILF is calculated using Eq. (5).
CF (c, Lu ) =
ILF (c, L) = log
|{u.li : li ∈ c}|
|Lu |
|U |
|{uj .l ∈ L : lj .c ∈ uj .C}|
(4)
(5)
Here, |{u.li : li ∈ c}| is user u’s number of visits in category c, |Lu | is the
total number of user’s visit in all locations. |U | is the number of total users in
the system. |{uj .l ∈ L : lj .c ∈ uj .C}| is the number of users who visit category
c among all users in U . User similarity between two users is calculated based on
their categorical preferences. We use Cosine Similarity [23] to find the similarity
between two users u and v denoted as wuv .
Preference-Aware Successive POI Recommendation
355
Temporal Categorical Preference. As categorical preference may vary over
time, we intend to find time-specific categorical preferences of each user. We
divide the whole day into equal length of time segment (ts ). In this paper, we
use time slot length = 1 h. So the whole day is divided into 24 time segments.
Given a user u, time segment ts , category c, temporal preference of user u on
(t )
category c, denoted as Pu s (c) is calculated using following equation [15].
(ts )
s)
)
Pu(ts ) (c) = CF (ts ) (c, L(t
u ) × ILF (c, L
(6)
(t )
Here CF (ts ) (c, Lu s )
(t )
time segment ts . Lu s is
is the Category Frequency of user u and category c at
the location set visited by u at ts . ILF (c, L(ts ) ) is the
Inverse Location Frequency for category c. L(ts ) is the list of all locations that
(t )
has been visited at ts . CF (ts ) (c, Lu s ) and ILF (c, L(ts ) ) are calculated using
following equations.
(ts )
s)
CF (ts ) (c, L(t
u )=
ILF (c, L(ts ) )) = log
(t )
|{u.li
(ts )
: li
∈ c}|
(t )
|Lu s |
|U (ts ) |
|{uj .l ∈ L : lj .c ∈ uj .C}|
(7)
(8)
(t )
Here, |{u.li s : li s ∈ c}| is the number of visits by user u at category c
(t )
at time segment ts . |Lu s | is total visits by user u at time ts . |U (ts ) | is the
total number of unique users in the system that has checked-in at time ts .
|{uj .l ∈ L : lj .c ∈ uj .C}| is the total number of unique users that visit at category c at time ts .
Temporal Popularity of a Location. Popularity of a location plays a significant role to attract user. People tend to visit a more popular POI for better
satisfaction. However, popularity also varies over time. For example, a bar is
more popular at night, whereas people tend to visit a museum during morning
or afternoon. For better recommendation, we intend to calculate popularity score
of each POI on each time segment. Popularity of a POI l at time ts is calculated
using following equation [15].
|U (ts ) (l)| |Chk (ts ) (l)|
1
(ts)
(9)
+
ρ (l) = ∗
2
|U (l)|
Chk(l)
Here |U (ts ) (l)| is the number of users that visited l at time ts , |U (l)| is the
total number of users visited l. |Chk (ts ) (l)| is the number of check-ins at l at
time ts and Chk(l) is total number of check-ins at location l.
4.2
Online Recommendation
Spatial-Aware Candidate Selection. Geographical position of a POI plays
a significant role to attract users [6,10]. People tend to visit nearby places. The
356
M. Debnath et al.
41.05
41
40.95
40.9
40.85
40.8
40.75
40.7
40.65
40.6
40.55
−74.2
−74.1
−74
−73.9
−73.8
−73.7
−73.6
−73.5
d
(a) POI locations
(b) Spatial-Aware candidate selection
Fig. 5. Incorporating spatial influence (Color Figure online)
propensity of a user to choose a POI decreases as the distance between the user
and the POI increases [8]. Consider the example in Fig. 5a. Black points represent
all the POI locations of NY City. Red points are the check-in distribution of a
single user. It is obvious that, this person does not move all over the city, rather
his movement data is limited to some geographical regions. We have borrowed
this example from [15]. Also Fig. 3b indicates that 90 % of successive check-ins
have distance less than 20 km.
To incorporate spatial influence, we divide the whole problem space into
square grids whose side length is d km. Locations of the grid cell the user is
currently visiting and its surrounding 8 adjacent grid cells are used as the candidate grid cells. The locations of the candidate grid cells are used as the candidate
locations for recommendation (see Fig. 5b). Distance between two points are calculated using Haversine Formula [24].
Successive Location Recommendation. Given a user u, his current location
lnow with category cnow , we first generate spatial-aware candidate location list
S (u) (L). Let the current time be tnow . In this section, we present the method
to rank the candidate locations. Tmax is a user-defined time interval parameter.
Top-K locations are recommended to user u that he may want to visit within
time range tnow to tnext , where (tnext − tnow ) ≤ Tmax .
Let, the recommended location be lnext . Category of lnext is cnext . In Offline
method, we have calculated time-specific categorical preference of user u at cat(t )
egory c denoted as Pu s (c). Given the time interval Tmax , we find the preference
(t
,t
)
of u for cnext from time range tnow to tnext defined as Pu now next (cnext ).
Pu(tnow ,tnext ) (cnext ) = max{Pu(ts ) (cnext )}
(10)
where ts ≥ tnow and ts ≤ tnext . For example, let tnow = 10 am, Tmax = 6 h.
so, tnext = 4 pm. So u’s preference for cnext from time range 10 am to 4 pm is
(t )
(t )
(t )
calculated as max{Pu 10 (cnext ), Pu 11 (cnext ), ...Pu 16 (cnext )}
Preference-Aware Successive POI Recommendation
357
We find the popularity of location lnext at time range tnow to tnext denoted
as ρ(tnow ,tnext ) (lnext )
ρ(tnow ,tnext )(lnext ) = max{ρ(ts ) (lnext )}
(11)
where ts ≥ tnow and ts ≤ tnext .
The rating of location l for user u, denoted as Rutnext (lnext ) is calculated as:
Rutnext (lnext )
=
v∈U
wuv
|v|
∗ Pu(tnow ,tnext ) (cnext ) ∗ T¯u (cnow , cnext ) ∗ ρ(tnow ,tnext ) (lnext )
(12)
Here, v ∈ U are the list of users who also visited the same location lnext at
specified time range tnow to tnext .
5
5.1
Experiments
Dataset
We use the real-world check-in dataset from Foursquare [1]. The dataset includes
227,428 check-in data from New York City, USA. The dataset has data from 12
April 2012 to 16 February 2013 (10 months). We obtain this dataset from [25].
Each check-in Chij contains user (ui ), location id (lj ) and time (t). Each location
id lj is associated with geographical position (lat, lon) and category c. It contains
check-in data of 1,083 users and 38, 383 locations. To get more effective results,
we removed POIs that have lower than 10 check-ins. After preprocessing, the
dataset contains 4,597 locations and 164,307 check-ins.
For experiment, we use the data of first 8 months as training set. The training
data is used to learn the users’ temporal categorical preferences and categorical
transition probability and popularity of POIs. The rest of the data is used as a
test set.
Evaluation Method. To evaluate our proposed method, we use two wellestablished metrics: precision and recall [26]. Precision and recall are calculated
using the following equations.
pre@N =
number of relevant recommendations
N
(13)
re@N =
number of relevant recommendations
total number of ground truths
(14)
Here, N is the number of recommendation results. Ground truth refers to the
set of locations where user has truly visited within the specified time range. So,
Pre@N measures how many POIs in the top-N recommended POIs correspond
to the ground truth POIs. re@N measures how many POIs in the ground truths
has returned as top-N recommendation.
358
M. Debnath et al.
0.5
0.4
0.4
Precision
Recall
Precision
Recall
0.3
0.3
0.2
0.2
0.1
0.1
0
10
15
N
0
20
(b) Effects of different Tmax
(a) Precision and Recall
0.4
0.3
0.1
Recall
Precision
0.15
0.05
0
6 hours 9 hours 12 hours
Time interval parameter length
0.2
0.1
POP-L UCF
PCF NMF PLTSRS
N = 10
0
POP-L UCF
(c) Pre@10
PCF NMF PLTSRS
N = 10
(d) re@10
Fig. 6. Experimental results
5.2
Experimental Results
We have used d = 10 km for grid cell size in all our experiments. Figure 6a shows
the precision and recall value of our proposed method. We show the results for
N = 10, 15 and 20. In this result we use Tmax = 6 h.
We compare our method with the four following baseline approaches,
(1) Popularity-Based Recommendation Method (Pop-L): This is a
spatial-aware popularity based recommendation method. Based on the current location, it first generates spatial aware candidate locations. Candidate
locations are ranked based on their popularity.
(2) Location-Based Collaborative Filtering (UCF): This method applies
Collaborative Filtering method directly over locations. This baseline utilizes
the users location histories with a user-location matrix. User similarity is
calculated using the location vector of users. Finally the locations are ranked
using CF method. We consider the current location as a query location
and generates spatial-aware candidate locations first to adapt this model for
successive recommendation.
(3) Preference-Based Collaborative Filtering (PCF): This method is
the baseline Preference-Aware approach. This method first generates users’
categorical preferences from their location histories. Then it generates
user-preference matrix. Similarity between two users is calculated using
Preference-Aware Successive POI Recommendation
359
their preference vector. Finally CF method is used to rank the candidate
locations.
(4) Non-negative Matrix Factorization (NMF): This is the base-line low
rank non-negative matrix facorization based recommendation method. This
method first generates user-location matrix using their location histories.
User-location matrix is factorized into two low rank matrices W and H.
Note that all methods use the current location as query location. We find
spatial aware candidate locations first to adapt them for successive location recommendation. Figure 6c and Fig. 6d show the precision and recall values respectively. UCF works better than Pop-L. PCF approach works better than UCF
as PCF can handle the data sparsity problem. NMF approach works better
than PCF, but our proposed method PLTSRS outperforms all other baseline
approaches.
We change the value of Tmax to see how the value of Tmax affects the results.
Figure 6b shows the precision and recall of our algorithm for Tmax = 6 h, 9 h and
12 h. Tmax = 6 h gives us the best result.
6
Conclusion
In this paper, we present a novel approach for successive POI recommendation
task. This approach recommends to a user a set of locations where he might
be interested to visit next based on his current location and time. This method
considers a combination of users’ time-specific categorical preferences, categorical transition patterns, spatial influences and popularity of POIs. To the best
of our knowledge, this is the first work that combines all the factors (temporal,
user-preferences, categorical transition patterns, spatial and popularity) for successive POI recommendation task. Experimental results show that our method
outperforms other baseline approaches. In future work, we plan to incorporate
social relationships to strengthen our recommendation model.
References
1.
2.
3.
4.
5.
https://foursquare.com
https://yelp.com
https://www.facebook.com/places/
http://statspotting.com/foursquare-statistics-20-million-users-2-billion-check-ins/
Zheng, Y., Zhou, X.: Computing with Spatial Trajectories. Springer Science &
Business Media, New York (2011)
6. Ye, M., Yin, P., Lee, W.C., Lee, D.L.: Exploiting geographical influence for collaborative point-of-interest recommendation. In: Proceedings of the 34th International
ACM SIGIR Conference on Research and Development in Information Retrieval,
pp. 325–334. ACM (2011)
7. Sang, J., Mei, T., Sun, J.-T., Xu, C., Li, S.: Probabilistic sequential pois recommendation via check-in data. In: Proceedings of the 20th International Conference
on Advances in Geographic Information Systems, pp. 402–405. ACM (2012)
360
M. Debnath et al.
8. Liu, B., Fu, Y., Yao, Z., Xiong, H.: Learning geographical preferences for point-ofinterest recommendation. In: Proceedings of the 19th ACM SIGKDD International
Conference on Knowledge Discovery and Data Mining, pp. 1043–1051. ACM (2013)
9. Horozov, T., Narasimhan, N., Vasudevan, V.: Using location for personalized POI
recommendations in mobile environments. In: International Symposium on Applications and the Internet, SAINT 2006, p. 6. IEEE (2006)
10. Yuan, Q., Cong, G., Ma, Z., Sun, A., Thalmann, N.M.: Time-aware point-ofinterest recommendation. In: Proceedings of the 36th International ACM SIGIR
Conference on Research and Development in Information Retrieval, pp. 363–372.
ACM (2013)
11. Bao, J., Zheng, Y., Mokbel, M.F.: Location-based and preference-aware recommendation using sparse geo-social networking data. In: Proceedings of the 20th
International Conference on Advances in Geographic Information Systems, pp.
199–208. ACM (2012)
12. Gao, H., Tang, J., Hu, X., Liu, H.: Content-aware point of interest recommendation
on location-based social networks. In: Proceedings of the 29th AAAI Conference
on Artificial Intelligence (2015)
13. Cheng, C., Yang, H., Lyu, M.R., King, I.: Where you like to go next: successive
point-of-interest recommendation. In: IJCAI (2013)
14. Zhang, W., Wang, J.: Location and time aware social collaborative retrieval for
new successive point-of-interest recommendation. In: Proceedings of the 24th ACM
International on Conference on Information and Knowledge Management, pp.
1221–1230. ACM (2015)
15. Debnath, M., Tripathi, P.K., Elmasri, R.: Preference-aware poi recommendation
with temporal and spatial influence. In: FLAIRS (2016)
16. Markov, A.A.: An example of statistical investigation of the text eugene onegin concerning the connection of samples in chains. Sci. Context 19(04), 591–600 (2006)
17. Ye, M., Yin, P., Lee, W.C.: Location recommendation for location-based social
networks. In: Proceedings of the 18th SIGSPATIAL International Conference on
Advances in Geographic Information Systems, pp. 458–461. ACM (2010)
18. Rendle, S., Freudenthaler, C., Schmidt-Thieme, L.: Factorizing personalized
Markov chains for next-basket recommendation. In: Proceedings of the 19th International Conference on World Wide Web, pp. 811–820. ACM (2010)
19. Feng, S., Li, X., Zeng, Y., Cong, G., Chee, Y.M., Yuan, Q.: Personalized ranking
metric embedding for next new POI recommendation. in: Proceedings of IJCAI
(2015)
20. Su, X., Khoshgoftaar, T.M.: A survey of collaborative filtering techniques. Adv.
Artif. Intell. 2009, 4 (2009)
21. Lee, D.D., Seung, H.S.: Algorithms for non-negative matrix factorization
22. Jones, K.S.: A statistical interpretation of term specificity and its application in
retrieval. J. Documentation 28(1), 11–21 (1972)
23. Tan, P.-N., Steinbach, M., Kumar, V.: Introduction to Data Mining. AddisonWesley, Boston (2006)
24. Goodwin, H.: The haversine in nautical astronomy. In: Proceedings of US Naval
Institute, vol. 36, pp. 735–746 (1910)
25. Yang, D., Zhang, D., Zheng, V.W., Yu, Z.: Modeling user activity preference by
leveraging user spatial temporal characteristics in LBSNs. IEEE Trans. Syst. Man
Cybern. Syst. 45(1), 129–142 (2015)
26. Powers, D.M.: Evaluation: from precision, recall and F-measure to ROC, informedness, markedness and correlation (2011)