1. Introduction
It is a well-known fact in psychology that humans always tend to behave in a consistent way [1,2], which makes it possible to learn and predict the patterns of human behaviors. On the other hand, the Location-Based Social Networks (LBSNs) [3] are playing an increasingly important role in daily life, through which users can share their locations and location-related contents at any time. LBSNs provide masses of valuable data for researching the patterns of human behaviors. These data have tremendous potential for exploitation for various applications, such as questioning and answering, advertising, activity discovery and recommendations [4], among which Point-of-Interest (POI) recommendation is attracting more and more attention from researchers in recent years.
The consistency of behaviors means that the human behaviors always follow a particular pattern and preference in a certain period. Therefore, in the POI recommendation task, users’ behavior patterns and preferences can be captured from the historical trajectories first, and then they can be extended to make the next recommendation. However, most of the existing POI recommenders can only recommend the next POI or a top-k list of candidate POIs [5,6,7,8], while sometimes successive POI sequence recommendations are more practical. For example, when one wants to plan an itinerary, what he/she expects is not a single POI recommendation, but a POI sequence recommendation. A POI sequence contains a set of POIs and the order in which they are visited. Itinerary-planning is a very tedious and time-consuming process because users always need to take into account the time constraint, distance constraint, cost constraint and so on. Therefore, it would be great if there is a POI sequence recommender to automatically recommend POI sequences (i.e., itineraries) for users, which will free users from the tedious and time-consuming itinerary-planning process. Compared with the single POI recommendation, the POI sequence recommendation is more challenging because of the following major reasons: (1) POI sequence recommendation aims to recommend a contextually coherent POI sequence which exactly meets user’s interest and preference, instead of just a single POI; (2) users’ preferences may change over time, which increases the difficulty of dynamic recommendation; and the (3) POI sequence recommendation is more sensitive to various factors (e.g., spatial, temporal, categorical, etc.) [9].
There are only a few studies focusing on POI sequence recommendation. To model the POI sequence recommendation task, some researchers proposed popularity-based approaches [10,11], which aim to find a POI sequence that maximizes the POI popularity. In these cases, all users will get the same recommendation. In addition, other personalization-based approaches [12,13,14] have also been developed to recommend a customized and unique tour itinerary for each tourist based on his/her interests and preferences. Nevertheless, most of the existing systems have some common drawbacks: (1) they need to predefine the starting and ending POIs for each recommendation, so they are not completely automatic; and (2) they can not capture the evolution of user preferences over time, so it is difficult to make dynamic recommendations.
This paper proposes a novel POI sequence recommendation framework, named Dynamic Recommendation of POI Sequence (DRPS), which models the POI sequence recommendation as a Sequence-to-Sequence (Seq2Seq) learning task, namely, the input sequence is a historical trajectory, and the output sequence is exactly the POI sequence to be recommended. Many studies have been carried out to address the Seq2Seq learning problem, such as [15,16]. Enlightened by the fact that the Deep Neural Network (DNN) has made a great success in various fields [17], the architecture of DRPS is designed based on the DNN. More specifically, DRPS is mainly composed of an encoder and a decoder. The encoder is designed to learn the contextual information implied in the input sequence, based on the contextual information; then, the decoder will generate the next POI one by one to form a POI sequence recommendation. In addition, in order to achieve better performance, this model comprehensively takes into account the POI embedding feature, the geographical and categorical influences of historical trajectory, and the positional encoding. The proposed method is evaluated on the Weeplace dataset, and the experimental results show the effectiveness of DRPS in a POI sequence recommendation task.
To summarize, the major contributions of this paper are:
this paper proposes a novel POI sequence recommendation framework named DRPS, which can make dynamic POI sequence recommendation according to the historical trajectory;
in order to make full use of various information about POIs, the POI embedding feature, the geographical and categorical influences of historical trajectory and the positional encoding are jointly taken into account in DRPS;
this paper also proposes two new metrics, i.e., the Aligned Precision (AP) and the Order-aware Sequence Precision (OSP), which consider both the POI identity and visiting order, in order to evaluate the recommendation accuracy of the POI sequence;
detailed experiments are conducted to evaluate the proposed method, and the experimental results demonstrate the effectiveness of DRPS in a POI sequence recommendation task.
The rest of this paper is organized as follows: Section 2 briefly reviews the related work. Section 3 elaborates on the proposed method. In addition, the experimental results are presented in Section 4. Finally, Section 5 concludes this paper.
2. Related Work
The POI recommendation tasks generally fall into two categories: single POI recommendation and POI sequence recommendation. For the single POI recommendation, a lot of literature has developed various recommenders by leveraging different aspects of POIs and users, such as geographical influence, temporal influence, social influence, and user preferences. For example, in order to improve the performance of POI recommendation, Wang et al. [18] integrated the geographical influence of POIs into a standard recommendation model to capture a user’s preference. For temporal influence, Hosseini et al. [19] propose a probabilistic generative model, named Multi-aspect Time-related Influence (MATI), to promote the effectiveness of the POI recommendation task. The MATI model firstly detects a user’s temporal multivariate orientation using her check-in log in LBSNs, then performs recommendation using temporal correlations between the user and proposed POIs. Griesner et al. [20] used matrix factorization algorithms to model the geographical and temporal influences of POI check-ins, and then proposed the GeoMF-TD model for POI recommendation. Yuan et al. [21] also leveraged the temporal influence to improve the efficiency and effectiveness of the recommendation system. Zhang and Chow [22] proposed the Rank-GeoFM algorithm to learn the geographical, social and categorical correlations from the historical check-in data of users on POIs, and then utilize them to predict the relevance score of a user to an unvisited POI in order to make recommendations for users. Ye et al. [23] combined the social influence with a user-based collaborative filtering model and utilized a Bayesian model to model the geographical influence. In addition, Aliannejadi and Crestani [24] utilized a probabilistic model to construct the mapping between user tags and location taste keywords, which made it possible to exploit various directions to address the data sparsity problem for POI recommendation. Feng et al. [25] proposed an algorithm named Personalized Ranking Metric Embedding (PRME) to jointly learn the sequential transition and user preference implicit in POIs. To recommend a “Smart POI” for a user according to the user preferences, based on the categories and geographical information, Alvarado-Uribe et al. [26] incorporated an aggregation operator into the user-based collaborative filtering algorithm and then proposed the Hybrid Recommendation Algorithm (HyRA). Moreover, because of the powerful learning ability of DNN, some DNN-based approaches were also proposed to enhance the performance of POI recommendation. Ding and Chen [7] designed the RecNet to incorporate various features implicit in LBSNs, such as co-visiting pattern, geographical influence and categorical correlation, and learn their high-order interactions for personalized POI recommendation. Yang et al. [27] proposed a deep neural architecture named Preference and Context Embedding (PACE) to model user preference over POIs, which utilizes the smoothness of semi-supervised learning to alleviate the sparsity of collaborative filtering. Chang et al. [28] also proposed an embedding-based method, called Content-Aware Hierarchical Point-of-Interest Embedding Model (CAPE), to utilize the text content that provides information about the characteristics of a POI and the relationships between POIs for POI recommendation.
For POI sequence recommendation, De Choudhury et al. [10] first proposed an approach to automatically construct a travel itinerary based on the Orienteering Problem, which aims to find a POI sequence that could maximize the POI popularity. Similarly, by modifying the Orienteering Problem, Gionis et al. [29] utilized a POI category to recommend an itinerary that is constrained by a POI category visiting order (e.g., library→restaurant→park). Bolzoni et al. [11] also designed the CLuster Itinerary Planning (CLIP) algorithm to recommend an itinerary based on clustering, where the POIs are clustered first; then, the clusters are used for itinerary generation. Obviously, these approaches heavily focus on the popularity of POIs, while the personalization would be left in the basket. To solve this problem, some personalization-based methods were developed. Lim et al. [14] proposed the PERSTOUR algorithm to recommend personalized POI sequences for the user, which considers not only the POI popularity, but also the user preference and the trip constraints. Baral et al. [30] proposed the Hierarchical Contextual POI Sequence (HiCaPS) model to formulate the user preference as a hierarchical structure and then developed a hierarchy aggregation technique for the POI sequence recommendation. Debnath et al. [31] designed a preference-aware POI sequence recommendation framework named Preference-Aware, Time-Aware Travel Route Recommendation (PTTR-Reco), which incorporates a time dimension to model the time-specific user preference, so PTTR-Reco aims to recommend the POI sequence that matches the time-specific preference of individual user. As mentioned earlier, the POI sequence recommendation can be modeled as a Seq2Seq learning task. It has been proven that a recurrent neural network (RNN) is quite effective in the Seq2Seq learning task. For instance, Sutskever et al. [16] used a multilayered Long Short-Term Memory (LSTM) to map the input sequence to a vector of fixed dimensionality, and then designed another deep LSTM to decode the target sequence from the vector. This Seq2Seq fashion significantly improved the performance in the English to French translation task. In addition, Cui et al. [32] proposed a model named Multi-View Recurrent Neural Network (MV-RNN) for sequential recommendation. MV-RNN takes multi-view features as inputs and then applies a recurrent structure to dynamically capture the sequential information implicit in inputs. Finally, a separate RNN and a united RNN are respectively designed on the hidden state of MV-RNN to achieve more effective recommendation. Nevertheless, the strong modeling power of DNN has not been well exploited in POI sequence recommendation. To fill this gap, this paper proposed the DRPS to make a dynamic POI sequence recommendation based on the historical trajectory.
3. Methodology
3.1. Problem Statement
A POI sequence consists of a set of POIs and the order of visiting them. Now, the POI sequence recommendation task can be defined as follows: given a user’s historical trajectory , the goal is to recommend a contextually coherent POI sequence for the user, where n is the length of historical POI sequence, and k is the length of the recommended POI sequence. Here, a contextually coherent POI sequence is exactly a POI sequence closely following the historical trajectory. The contextual coherence means that it should meet the same interest and preference implicit in the historical trajectory of the user. For instance, if a user has visited such a POI list: , it can be considered that is exactly a contextually coherent POI sequence of . POI sequence recommendation is actually a Seq2Seq learning task. Corresponding to the Seq2Seq model, the historical POI sequence and the recommend POI sequence can be denoted as input sequence and target sequence, respectively.
3.2. Overview of the Proposed Framework
Usually, a historical POI sequence implicitly represents the recent preference and behavior pattern of a user. The objective of a POI sequence recommender is to capture this preference and behavior pattern, and extend them to recommend the next POI sequence. This problem is modeled as a Seq2Seq learning task in this paper. Enlightened by the Transformer model [33], a neural machine translation model that is powerful for modeling a Seq2Seq task, this paper proposes a framework named Dynamic Recommendation of POI Sequence (DRPS). The DRPS is mainly composed of an encoder and a decoder (Figure 1). This encoder–decoder structure is the key to model the Seq2Seq learning task. The encoder is used to learn the contextual information implied in the input sequence H, and the decoder is used to generate the POI sequence recommendation R. To capture abundant information from the input POI sequence, the DRPS integrates the POI embedding, category embedding, geographical influence and positional encoding as the input of the encoder. Following the decoder, the main branch will recommend the next POIs one by one to form a POI sequence recommendation, and the other two auxiliary branches are respectively used to predict the categories and locations of the corresponding POIs. As additional constraints, these two auxiliary branches are designed to help train the model. Note that, in the recommended POI sequence, the POIs are generated one by one, and, when generating the next POI, the decoder also takes the previously generated POIs as additional input.
3.3. Details of Module Design
The DRPS framework can be divided into three modules, i.e., an input module, an encoder–decoder module, and an output module. The details about each module are described in the following sections.
3.3.1. Input Module
In order to learn rich contextual information implicit in the POI sequence, four features of POI sequences are considered in the input module, including POI embedding, category embedding, geographical influence, and positional encoding, as shown in Figure 1.
POI embedding Intuitively, a POI sequence can be represented with a set of ordered POI IDs. However, the ID is insufficient to characterize a POI. Feature embedding is an important representation learning technique that can embed the original feature into a more effective vector representation [34]. Similarly, a learnable POI embedding is used to map each POI ID to a d-dimension latent vector in this research, which actually describes the intrinsic feature of POI. Formally, the POI embedding of a POI sequence is denoted by a matrix , where the l is the length of POI sequence, and d is the dimension of latent vector. The POI embedding is first randomly initialized and then it can be learnt by training the neural network.
Category embedding Category is an important attribute of POI, which is widely used in many POI recommendation systems, such as Ding and Chen [7], Bolzoni et al. [11], Lin et al. [35]. The categorical influence of a POI sequence is also taken into account in DRPS. A POI sequence actually corresponds to a POI category sequence. Similar to POI embedding, the category embedding is also used to map each POI category to a d-dimension latent vector . Thus, the category embedding of a POI sequence S can be denoted by a matrix .
Geographical influence It has been proven that geographical influence has a significant impact on POI recommendation [18]. The geographical influence exists not only between POIs and POIs, but also between POIs and users. According to Tobler’s first law of geography, the closer two POIs are, the more similar they are, which makes the geographical coordinates an important way to measure the similarity between POIs. On the other hand, the geographical influence can also reflect the preference of users to locations. For example, users may prefer to visit places close to home. Therefore, the geographical influence is an important aspect of POI characteristics. To model the geographical influence of POI, a Multi-Layer Perceptron (MLP) [36] is adopted to convert the coordinates of each POI to a d-dimension vector . Namely, the is given by Equation (1):
(1)
where is the coordinates of a POI, and are the biases, and are the weight matrices, and ReLU [37] is a nonlinear activation transformation. The biases and the weight matrices are the parameters that need to be trained. Similarly, a matrix is used to describe the geographical influence of a POI sequence S.Positional encoding To make use of the order of the POI sequence, which provides vital contextual information, the “positional encoding” is introduced into DRPS. As in Vaswani et al. [33], each position is encoded to a d-dimension vector; in this way, a matrix can be constructed to represent the positional encoding of a POI sequence. Specifically, each element of is given by Equation (2):
(2)
where is the positon of a POI in the sequence, and denotes the i-th dimension of the d-dimension vector.After the above features of POI sequence are calculated, they will be integrated together by following naive summation:
(3)
Then, is fed into the downstream module.
3.3.2. Encoder–Decoder Module
The encoder–decoder structure has strong power for a Seq2Seq learning task [15,16]. This paper also follows this structure. Specifically, an encoder is designed to capture the contextual information implied in the input sequence H; then, a decoder is used for generating the POI sequence recommendation R based on the output of encoder, as shown in Figure 1.
Encoder The encoder consists of a stack of N identical blocks. Each block contains a multi-head attention (MHA) layer and a feed-forward layer. The attention mechanism has proven to be an effective approach for a sequence modeling task in a deep neural network [38]. The attention function can be perceived as mapping a set of key-value pairs (K-V) and a query (Q) to an output, where the keys, values and queries are all derived from different transformation of the integrated feature. The output is actually a weighted sum of the values, where the weight assigned to each value depends on the similarity of the query to the corresponding key. Here, a MHA structure similar to Vaswani et al. [33] is added into DRPS. Formally, MHA is given by Equation (4):
(4)
where the function is used to concatenate , and(5)
The function is defined as Equation (6)
(6)
where is the dimension of K, and the function is used for normalizing the output probabilities. The above parameters’ matrices , , , are all trainable. Following the MHA layer, a two-layer Feed-Forward Network (FFN) is used to generate the output of encoder. The FFN is given by Equation (7),(7)
where and are the weight matrices, and are the biases. In addition, the residual connection [39] is also employed to improve the performance.Decoder The decoder also consists of a stack of N identical blocks. While each block, compared with the encoder, has an additional Masked Multi-Head Attention (Masked-MHA) layer, which takes the previous output of a POI sub-sequence as input when generating the next POI. The mask ensures that the POI recommendation for position i depends only on the known outputs at positions less than i. In addition, the MHA layer in the decoder also takes the output of the encoder as input and is then followed by a two-layer FFN. The residual connection is also exploited in the decoder.
3.3.3. Output Module
The output module contains three branches, i.e., a main branch and two auxiliary branches. The main branch is used to recommend the next POI one by one to form a POI sequence recommendation. In addition, the other two auxiliary branches are respectively used to predict the categories and locations of the corresponding POIs, which aims to add additional constraints to the learning task to help train the model and improve the performance. Combining these three branches, the total loss can be written as follows:
(8)
where is the Cross Entropy function, is the one-hot encoding of true POI ID on position i, and is the recommendation probabilities of all POIs on position i. Similarly, is the one-hot encoding of a true POI category and is the predicted probabilities of all categories on position i. is the Mean Square Error function, and are respectively the true and predicted location of POI on position i. The training objective is to minimize the loss function .3.4. Dynamic Recommendation
Users’ historical trajectories always change over time, which means that their interests and preferences may also change over time. Therefore, a dynamic recommendation system is more practical than a static one. In this research, when the model finishes training, DRPS can easily make dynamic recommendations by allowing the input POI sequence to change over time. When the input POI sequence changes, the DRPS can dynamically capture the recent interest and preference of the user, and then recommend the most suitable POI sequence. In contrast to other approaches, which require expensive computation resources to re-calculate the features of the changing input, the DRPS can easily recommend a POI sequence dynamically in an end-to-end way.
4. Experiments
In this section, a series of experiments are conducted to evaluate the performance of the proposed framework DRPS.
4.1. Experimental Settings
4.1.1. Dataset
In this paper, the experiments are conducted on the Weeplace dataset [40], which is collected from Weeplace, a website that aims to visualize users’ check-in activities in LBSN. This dataset contains 7,658,368 check-ins generated by 15,799 users over 971,309 POIs. These POIs cover the whole world. In addition, the category and location (i.e., the longitude and latitude) of each POI are also provided in this dataset. Considering the practicability, the dataset is divided into different parts by the city, and then the proposed method is evaluated on some major cities, including New York, San Francisco, Brooklyn, and London. Table 1 presents the statistic details of the data of each city.
In the dataset, the users with less than 40 check-ins and the POIs with less than 10 visits are ignored. Each user may have a long historical trajectory, therefore, many samples can be constructed for each user by moving a lag along the history. In each sample, the first n POIs compose the input POI sequence, denoted by , and the latter k POIs compose the target POI sequence, denoted by , where n and k are the lengths of input and output, respectively. In this paper, the lag is also set as k.
4.1.2. Evaluation Metrics
In the single POI recommendation tasks, precision@k and recall@k are usually chosen as evaluation metrics, both of which are evaluated on the top k POIs in a ranked recommendation list. Nevertheless, what needs to be recommended in the POI sequence recommendation tasks is not a ranked POI list, but an ordered POI sequence. Thus, precision@k and recall@k are no longer appropriate in this work. The most used metrics for evaluating POI sequence recommendation are precision, recall, and F1 score [6,30,35,41]. However, a common drawback of these metrics is that they all ignore the order of POI in the sequence, while the order is actually an important aspect of POI sequence recommendation. To solve the problem, two new metrics named Aligned Precision (AP) and Order-aware Sequence Precision (OSP) are proposed to evaluate the recommendation accuracy of POI sequence, considering both the POI identity and visiting order.
Specifically, AP is calculated by Equation (9):
(9)
where and are the ground truth and recommendation on position i, respectively, and(10)
Equation (9) shows that the AP is equal to 1 only when each position of sequence is correctly recommended. In other words, if a POI sequence recommendation contains correct POI identities but the wrong order, its AP will be still 0. Obviously, the metric AP is so strict. Therefore, a gentler but still effective metric OSP is also proposed in this research, which is given by Equation (11):
(11)
where measures the degree of overlap between the recommended POI sequence R and ground truth G (without considering the order), and measures the order precision of the overlapped sub-sequence, where C is the number of all POI pairs in the overlapped sub-sequence, and M is the number of the pairs that contain correct order.For example, if a recommended POI sequence is and the corresponding ground truth is , it can be easily calculated that AP . As for OSP, the overlapped sub-sequence can be obtained first, which contains four common POIs, so . In addition, all the ordered POI pairs in the overlapped sub-sequence include , i.e., . Nevertheless, only have correct orders as ground truth, so . Naturally, it can be calculated that the OSP . This example shows that AP is much stricter than OSP, and OSP considers not only the degree of overlap between sequences, but also the order in sequence.
Besides AP and OSP, the most used metrics, i.e., the precision and recall, are also used to evaluate the models in this research. The precision and recall can be calculated from the confusion matrix, and they are both averaged over all the POIs.
4.1.3. Baseline Methods
The proposed model DRPS is compared with the following baseline methods:
Random Selection (RAND) In the RAND model, each POI in the recommended sequence is randomly selected from all POIs.
Additive Markov Chain (AMC) [42] The AMC model recommends POI sequence by exploiting the sequential influence. Specifically, given a historical trajectory of user u, when recommending the POI on position p, AMC first calculates the probability of the user visiting each POI based on all the POIs before position p; then, the POI with maximum probability will be recommended on position p.
LOcation REcommendation (LORE) [41] The LORE model first mines sequential patterns implicit in POI sequences and represents the sequential patterns as a dynamic Location–Location Transition Graph (L2TG). Based on the L2TG and geographical influence, LORE can then predict the user’s probability of visiting each POI.
LSTM-Seq2Seq [16] The LSTM-Seq2Seq model adopts a multilayered Long Short-Term Memory (LSTM) to map the input sequence to a vector of a fixed dimension, and then uses another deep LSTM to decode the target sequence from the vector.
4.1.4. Parameter Setting
In the experiments, all the samples are divided into three subsets, i.e., a training set, a validation set and a test set, and their proportions are 70%, 20% and 10%, respectively. The training set is used to train the model parameters of DRPS, the validation set is used to select the parameters when training, and the test set is used to evaluate the performance of the model. In addition, the dimension d of input feature is set to 64, the number of blocks N in encoder (decoder) is set to 2, and the number of the “header” of the MHA layer m is set to 8. In addition, the experiments are conducted with two different settings of input/output POI sequence lengths , including (30, 5) and (25, 10). In order to evaluate the performance of the proposed algorithm more effectively and reduce the risk of overfitting, every experiment in this paper is repeated 10 times, and the mean and variance of multiple results are used to measure the performance of the model. In addition, all the experiments are implemented with TensorFlow [43].
4.2. Experimental Results
A series of experiments are carried out according to the above settings. The performances of different POI sequence recommendation approaches in terms of AP and OSP are presented in Table 2 and Table 3. The difference between Table 2 and Table 3 is the setting of input/output POI sequence lengths, that is, the former is (30, 5) and the latter is (25, 10).
It is apparent in Table 2 and Table 3 that DRPS significantly outperforms the other baselines when measured with AP and OSP on all four cities. The RAND method gives the recommendation just by naively random selection without utilizing any additional information, so its accuracy is very low but stable. The AMC and LORE achieve similar performance. More specifically, when the input length is longer (30) and output length is shorter (5), LORE is better than AMC in most cases. Conversely, when the input length gets shorter (25) and output length gets longer (10), AMC almost always outperforms LORE. LSTM-Seq2Seq reaches the closest performance to DRPS, while, no matter how long the input/output sequences are, DRPS always achieves the best performance. On the other hand, it is easy to find that the values of OSP are always higher than the ones of AP, which verifies that, as mentioned in the previous analysis, AP is stricter than OSP.
In addition to AP and OSP, the precision and recall are also chosen to evaluate the above models. Table 4 and Table 5 present the experimental results. Table 4 is for the case where the input and output lengths are, respectively, 30 and 5, and Table 5 is for the case where the input and output lengths are, respectively, 25 and 10.
Based on the results, it can be observed that DRPS can still outperform almost all the baselines when measured with precision and recall. In addition, with the input length getting shorter and the output length getting longer, the POI sequence recommendation also gets harder. Surprisingly, DRPS can still achieve competitive (even better) performance, which proves that DRPS is powerful for the POI sequence recommendation task.
4.3. Effect of Components
As described in Section 3.3.1, four features are considered in the input module of DRPS, including the POI embedding (PE), category embedding (CE), geographical influence (GI), and positional encoding (Pos). This part aims to investigate the effect of each of these components. Specifically, each component is removed from the input module, respectively, for demonstrating the effectiveness of the corresponding component. The experimental results have been shown in Table 6.
According to the results presented in Table 6, when the POI embedding and positional encoding are removed from the input module, the AP and OSP always get lower values, and the AP and OSP always get higher values when removing the category embedding and geographical influence. It means that POI embedding and positional encoding are the more important features in POI sequence recommendation. Meanwhile, the category embedding and geographical influence are also effective at improving the model performance.
4.4. Cold-Start Scenario
Recommendation systems always face the cold-start problem, where the recommendation systems have difficulty recommending reliable results because of the initial lack of data. Similarly, DRPS also faces the challenge of a cold-start when the input data are limited. In this paper, those users who have less than 35 and more than 15 check-ins are used to validate the performance of the proposed algorithm in a cold-start scenario. Specifically, each incomplete trajectory is extended to a sequence of a fixed length (35) by padding with leading-zeros. Then, the first 30 POIs are input into the trained model to get a recommendation, and the last five POIs are used to evaluate the recommendation accuracy. The experimental results have been presented in Table 7. It can be found that the performances of all methods (except for RAND) in a cold-start scenario get worse (compared with Table 2). However, DRPS is still significantly superior to the other baselines.
4.5. An Illustrative Example
Figure 2 illustrates an example from New York. The solid grey lines represent the historical trajectory of a user. This trajectory starts with P and ends with Q. The solid blue lines are the ground truth transitions after Q of this user. In addition, the dash purple lines are the recommended sequence by DRPS. In this case, the ground truth of output sequence is (A, B, C, D, E), and the recommended sequence is (A, C, B, D, F). According to Equations (9) and (11), the AP and OSP can be easily calculated, that is, AP = 0.4 and OSP = 0.67.
5. Conclusions and Future Work
This paper proposes the framework DRPS to recommend POI sequence based on users’ historical trajectories. DRPS first models the POI sequence recommendation as a Seq2Seq learning task, and then develops a DNN-based architecture to solve it. DRPS takes the POI embedding feature, the geographical and categorical influences of historical trajectory as input, and outputs the POI sequence recommendation that the user is most interested in. Owing to the end-to-end workflow, DRPS can easily make dynamic POI sequence recommendation by allowing the input to change over time. In addition, other than precision and recall, two new metrics named AP and OSP are proposed to evaluate the recommendation accuracy of POI sequence. Differing from precision and recall, AP and OSP both take into account the visiting order of POI sequence, which provide a more reasonable way to evaluate the recommendation accuracy of POI sequence. In addition, the experimental results of each of the above metrics demonstrate the significant advantages of DRPS in the POI sequence recommendation task.
DRPS has shown its effectiveness; however, there are still some works worthy of further exploration. First, in order to get better recommendations, some other helpful information, such as the social relationship in LBSNs, should be also considered in the future. Second, considering more practical constraints when making recommendations is another important work in the future. These constraints may include time constraint, cost constraint, distance constraint, etc.
Author Contributions
Jianfeng Huang conceived and conducted this research; Yuefeng Liu, Yue Chen and Chen Jia helped in date analysis and language correction; Jianfeng Huang and Yuefeng Liu wrote the paper.
Funding
This research was funded by the National Natural Science Foundation of China, Grant No. U1433102.
Conflicts of Interest
The authors declare no conflict of interest.
Figures and Tables
Table 1Statistics of the data of each city.
City | #Check-In | #User | #POI |
---|---|---|---|
New York | 720,350 | 4811 | 28,333 |
San Francisco | 330,975 | 3220 | 13,366 |
Brooklyn | 159,946 | 2724 | 7334 |
London | 147,610 | 1935 | 10,405 |
Performance comparison on four cities in terms of AP and OSP under the setting where the input and output lengths are, respectively, 30 and 5. The numbers in bold face indicate the ones with the best performances.
% | New York | San Francisco | Brooklyn | London | ||||
---|---|---|---|---|---|---|---|---|
AP | OSP | AP | OSP | AP | OSP | AP | OSP | |
RAND | ||||||||
AMC | ||||||||
LORE | ||||||||
LSTM-Seq2Seq | ||||||||
DRPS |
Performance comparison on four cities in terms of AP and OSP under the setting where the input and output lengths are, respectively, 25 and 10. The numbers in bold face indicate the ones with the best performances.
% | New York | San Francisco | Brooklyn | London | ||||
---|---|---|---|---|---|---|---|---|
AP | OSP | AP | OSP | AP | OSP | AP | OSP | |
RAND | ||||||||
AMC | ||||||||
LORE | ||||||||
LSTM-Seq2Seq | ||||||||
DRPS |
Performance comparison on four cities in terms of precision and recall under the setting where the input and output lengths are, respectively, 30 and 5. The numbers in bold face indicate the ones with the best performances.
% | New York | San Francisco | Brooklyn | London | ||||
---|---|---|---|---|---|---|---|---|
Precision | Recall | Precision | Recall | Precision | Recall | Precision | Recall | |
RAND | ||||||||
AMC | ||||||||
LORE | ||||||||
LSTM-Seq2Seq | ||||||||
DRPS |
Performance comparison on four cities in terms of precision and recall under the setting where the input and output lengths are, respectively, 25 and 10. The numbers in bold face indicate the ones with the best performances.
% | New York | San Francisco | Brooklyn | London | ||||
---|---|---|---|---|---|---|---|---|
Precision | Recall | Precision | Recall | Precision | Recall | Precision | Recall | |
RAND | ||||||||
AMC | ||||||||
LORE | ||||||||
LSTM-Seq2Seq | ||||||||
DRPS |
Effect of different components on four cities in terms of AP and OSP under the setting where the input and output lengths are, respectively, 30 and 5.
% | New York | San Francisco | Brooklyn | London | ||||
---|---|---|---|---|---|---|---|---|
AP | OSP | AP | OSP | AP | OSP | AP | OSP | |
DRPS | ||||||||
Without PE | ||||||||
Without CE | ||||||||
Without GI | ||||||||
Without Pos |
Performance comparison in a cold-start scenario. The numbers in bold face indicate the ones with the best performances.
% | New York | San Francisco | Brooklyn | London | ||||
---|---|---|---|---|---|---|---|---|
AP | OSP | AP | OSP | AP | OSP | AP | OSP | |
RAND | ||||||||
AMC | ||||||||
LORE | ||||||||
LSTM-Seq2Seq | ||||||||
DRPS |
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer
© 2019 by the authors.
Abstract
Point-of-Interest (POI) recommendation is attracting the increasing attention of researchers because of the rapid development of Location-based Social Networks (LBSNs) in recent years. Differing from other recommenders, who only recommend the next POI, this research focuses on the successive POI sequence recommendation. A novel POI sequence recommendation framework, named Dynamic Recommendation of POI Sequence (DRPS), is proposed, which models the POI sequence recommendation as a Sequence-to-Sequence (Seq2Seq) learning task, that is, the input sequence is a historical trajectory, and the output sequence is exactly the POI sequence to be recommended. To solve this Seq2Seq problem, an effective architecture is designed based on the Deep Neural Network (DNN). Owing to the end-to-end workflow, DRPS can easily make dynamic POI sequence recommendations by allowing the input to change over time. In addition, two new metrics named Aligned Precision (AP) and Order-aware Sequence Precision (OSP) are proposed to evaluate the recommendation accuracy of a POI sequence, which considers not only the POI identity but also the visiting order. The experimental results show that the proposed method is effective for POI sequence recommendation tasks, and it significantly outperforms the baseline approaches like Additive Markov Chain, LORE and LSTM-Seq2Seq.
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer