Abstract
POI recommendation finds significant importance in various reallife applications, especially when meeting with locationbased services, e.g., checkins social networks. In this paper, we propose to solve POI recommendation through a novel model of dynamic tensor, which is among the first triumphs of its kind. In order to carry out timely recommendation, we predict POI by utilizing a completion algorithm based on fast lowrank tensor. Particularly, the dynamic tensor structure is complemented by the fast lowrank tensor completion algorithm so as to achieve prediction with better performance, where the parameter optimization is achieved by a pigeoninspired heuristic algorithm. In short, our POI recommendation via the dynamic tensor method can take advantage of the intrinsic characteristics of checkins data due to the multimode features such as current categories, subsequent categories, and temporal information as well as seasons variations are all integrated into the model. Extensive experiment results not only validate the superiority of our proposed method but also imply the application prospect in largescale and realtime POI recommendation environment.
1. Introduction
The mobile recommendation system has played an indispensable role in people’s daily life. For instance, people naturally put up mobile phone to find the restaurants to eat, stores to go, and amusement parks to spare the time. With the proliferation of global positioning system (GPS), locationbased social networking services (LBSNs), e.g., Foursquare, Facebook Places, Google Places, and so on, tighten the relationships among people. Through these platforms, people can easily access the information of popular points of interest (POI) which might well cater to their preferences. Therefore, comprehensive analysis of POIs via online checkins data can make recommendation more accurate and suitable for people’s need.
Accurate and prompt recommendation is the key component of an ideal POI recommender system. For example, when a user just leaves the train station at summer night, hotels and restaurants, rather than bars and nightspots, should be recommended due to the common sense that searching for places to settle down is the priority even though he or she is a king or queen of nightclub. The situation can be briefly described in Figure 1. Subsequently, after a short rest, bars or nightspots will appear in the user’s recommendation list when he/she tries for another search. Plus, if the user arrives at noon, the system should accordingly recommend dessert shop or cafe instead of nightspots. Also, different seasons may lead to different recommendation in the same situation, such as hot pot restaurants in the freezing winter and cold drinks shops in the scorching summer.
Credible POI recommendation heavily relies on user checkins data. In order to meet the realtime nature of the task, conventional methods usually resort to matrix factorization to solve the sparsity of userPOI matrices [1, 2]. However, intrinsically speaking, checkins data contain multimode information, which is a feature overlooked by existing methods. To put it in other words, the methods based on matrix factorization suffers from the limitation that the information of checkins data is not fully made use of and the usage mainly focuses on lowdimensional patterns, thereby sacrificing the highdimensional patterns of data.
Intuitively, if a model handles data with higher dimensions, it can mine more information and the prediction result can accordingly become more accurate and reliable [3]. It has been shown in recent studies that tensor, a matrix with highdimensional expansion, can better explain multimode data in comparison to other structures [4]. Consequently, the methods based on tensor are proposed to tackle POI recommendation problems. Since data are fixed in different dimensions, for instance, only users’ current location and next location data are presented as a 2way tensor, and the similarity are calculated between users or between locations. Based on the similarity, the model recommends the locations visited by other users. Owing to higher number of appended dimensions, the prediction performance of tensorbased methods overmatches the matrixbased methods [5].
Consequently, there are many methods based on tensor factorization put forward to improve the performance. Cheng et al. first added the successive timestamp in the POI recommendation. They put forward the next personalized POI recommendation problem; a checkin tensor is constructed and factorizing personalized Markov chain (FBMC) is harnessed [6] to restrict the movement. To recommend to users the most possible successive POIs, a spatialtemporal latent ranking model, which highlights the significance of time, is put forward by Zhao et al. [7]. Nonetheless, previous methods neglect the personalized factor and fail to combine the location information with realtime situations. Li et al. [5] proposed timeaware factorizing personalized Markov chain (TAFBMC), where they adopt a 4dimension tensor to store spatial and temporal characteristics of checkins data. The relevance between two successive checkins is explored, and a timedecay factor is leveraged to weigh shorttime interval and longtime interval checkins data in prediction.
Despite the superiority of TAFBMC, there are at least two shortcomings:(i)Model Complexity. The whole model is constructed upon a static tensor, which means they put all checkins data in each calculation. Although TAFBMC contains the timedecay factor to decline the effect of primal data, the computing complexity is the same and the value of the factor is hard to decide.(ii)Redundancy Caused by User Dimension. The user is regarded as an extra dimension, which not only artificially expands the scale of data but also diverts from the fact that people tend to seek for uniformity in the big data background. Additionally, when a new user enters the recommender system, the personalized feature fails to yield promising performance.
Consequently, a clear gap between existing research and potential application can be identified.
In this article, we investigate to close the gap by developing a more accurate approach, namely, Prido (POI recommendation via dynamic tensor), which makes full advantage of multimode checkins data so as to improve the performance of POI recommendation. Specifically, in accordance with the successful application of tensor in the field of recommendation, we conceive a dynamic tensor model for POI recommendation. On top of it, we also develop a heuristic tensor completion method, which is on the basis of lowrank tensor completion approach. In contrast to existing approaches, Prido considers more features—current category mode, next category mode, month mode, and temporal mode—of checkins data, and leverages more advanced tensor completion algorithm with effective optimization strategy, for higher accuracy and efficiency. As to empirical assessment, we conduct extensive experiments on realworld data and compare the proposed method with a number of stateoftheart methods. The empirical results prove that Prido remarkably improves the overall performance in comparison to the competitors.
1.1. Contributions. As a nutshell, the contributions of the article can be summarized to four ingredients:(a)We propose to model POI recommendation with a dynamic tensor structure to exploit all available feature aspects, which is, to our best knowledge, among the first attempts(b)A 4dimension tensor is constructed to capture users’ preference between two successive categories in different seasons and different hours(c)The category information is recommended by leveraging a fast lowrank tensor completion method, equipped with pigeoninspired algorithm to optimize the parameters and(d)The proposed method is validated on realworld checkins datasets and demonstrated to offer remarkable improvement over alternatives as far as efficiency and accuracy are concerned
1.2. Organization. Section 2 overviews related works on various recommendation methods in the domain of POI recommendation. After necessary background knowledge, the proposed method Prido is introduced in Section 3 including specific model and algorithms. Experimental studies are reported in Section 4, and the conclusion is elaborated in Section 5.
2. Related Work
As a special form of item recommendation, POI recommendation, which converts the online checkins data into physical behavior suggestions, helps both academic and industrial development. Thus, a large number of methods are devoted to dealing with POI recommendation task.
Collaborative filtering (CF) was used to handle the POI recommendations problem in [8], which then became a widely used technique and was developed persistently. CFbased systems can be roughly divided into two parts, i.e., memorybased CF systems and modelbased CF systems. In the former, there are also two subclasses, i.e., (1) userbased systems, which calculated the similarity between each pair of users [9] and (2) itembased systems, which computed the similarity between each pair of items [10]. As for modelbased CF, it was developed in another direction, in which data mining techniques were added into the system so as to boost performance. Cheng et al. proposed a method which fused matrix factorization with geographical and social influence factors for POI recommendation [11]. Meanwhile, Gao et al. utilized the social network information to deal with the coldstart problems [12]. Noteworthy is that these CF models could not reveal the multifeatures of checkins data. Therefore, the methods failed to deal with the data sparsity issue.
Recently, people pay more attention to the expansion of factors so as to enhance the explanatory power of the model. Based on Bayesian network, Park et al. introduced user profile to evaluate the matching between user profiles and restaurant profiles and output recommendation results in accordance to the matching scores [13]. Then, Ye et al. took advantage of a powerlaw distribution, including geographical influence, to achieve more accurate POI recommendation [14]. A combination of kernel density estimation and geographical influence was proposed by Chow to model the checkin behavior [15]. Zhang and Chow adopted a contrived gravity model to exploit the spatiotemporal sequential influence on location recommendations [16]. Yuan et al. incorporated the time factor when computing the similarity between two users in terms of the historical checkins at the same time [17]. The significance of social impact on POI recommendation has also been presented in previous studies, through which the quality of longterm recommendation can somehow be improved [18]. With geographical correlations, social correlations, and categorical correlations among users and POIs taken into consideration, Zhang and Chow introduced a kernel estimation method to tackle POI recommendation [19]. Transforming the linear model into a nonlinear model, Zhang et al. proposed a matrix factorization method to learn the most potential interactions among two or more attributes [20]. However, previous models all transform the POI problems into a geographical feature in traditional item recommendation tasks, where the intrinsic relations of checkins data are neglected.
Despite the boom of neural networks and their successful applications in many fields, there is little progress in the POI recommendation domain, for the heterogeneity nature of checkins data, where the transformation of input may increase the complexity of the model. Among various neural networks, recurrent neural networks (RNN) have been proved to outperform other methods in modeling sequential data of arbitrary length with its recurrent calculation of hidden representation [21]. Chen et al. proposed to detect users’ interests from their locationbased tweet and then established the mapping between locations and user interests [22]. Liu et al. modeled users’ checkins data in a sequential manner and then utilized RNN to solve the recommendation problem [23]. In the mean time, Zhang et al. proposed nonlinear transformation to extract the userbased and POIbased spatial intents, respectively, to tackle the coldstart problem [24]. Among others, graphbased approaches [25] may also be applied to locationbased social networks but not yet in POI recommendation.
Over the recent years, tensor, the highdimensional expansion matrix, is proved to have prominent advantage when compared with other methods in terms of explaining data with multimode [3, 4], for instance, it has been successfully applied to traffic flow prediction [26]. Illuminated by traditional tensor completion methods, new solutions such as CP, Tucker, tensor train [27], and tensor network [28] were proposed to optimize the structure of tensor methods. Undoubtedly, it is hard for a solution to overmatch the others over all scenarios since different POI recommendation tasks require different models to capture the core of problem and the fittest models ought to deal with diverse realistic demands. In order to fully exploit the latent patterns of data, we proposed Prido in this paper, which is validated to achieve promising outcomes.
3. Methodology
In this section, the dynamic tensor model is elaborated, followed by the introduction of the tensor completion algorithm for personalized tensor, followed by the pigeoninspired parameter optimization procedure.
3.1. Dynamic Tensor Model for Category Prediction
The fundamental knowledge of tensor is detailed at first, and the dynamic tensor model designed for personalized recommendation is then presented.
3.1.1. Tensor Basics
Tensor is a highdimensional data representation, the expression of which can be 1mode (vector) and 2mode (matrix). A tensor with mode is denoted as , where represents mode quantity, and the specific elements are , where . As for the matriculating operator, the target of which is to unfold a tensor into a matrix is denoted as and the elements of the tensor is mapped to the matrix element , where
The reverse of matriculation is represented by similarly.
Specifically, the primary task of tensor unfolding is dimension reduction, turning it into a matrix. Instead of sampling eigenvalues simply from one order after another, tensor unfolding samples them from different orders in an alternating way to realize the transmission and the blending among eigenvalues from different orders in a tensor. For example, unfolding a tensor of in the first dimension will get a matrix, of which the six columns are constituted from the second and the third orders’ eigenvalues alternately. As regards to tensor folding, it is the inverse operation of unfolding.
The product of two tensors with the same size is defined as the sum of the products of their entries,
With regard to any , the product between matrix and tensor is denoted as , which is further converted to the product of matrices,
The Frobenius norm of a tensor is denoted by . Evidently,
3.1.2. Tensor Stream
Tensor stream is represented by a series of tensors, denoted by , where each with . The series is indexed by time, which is presented in Figure 2. Dynamic tensor blocks with each are denoted by means of the combination of tensors in tensor stream from the initial one, as Figure 3 shows.
Since the Foursquare datasets possess temporal traits, evidently the adjacent historical data are crucial for improving overall performance. As a result, the prediction of category recommendation can be transformed into tensor structure completion task.
3.1.3. Dynamic Tensor
Our goal is to offer specific user POI recommendations during the selected time period, on the basis of the existing data. Considering that the category dataset merely contains checkins data, by comparing FBMC [6], FBMCLR [29], and TAFBMC [5], we choose the probability formula in TAFBMC to perform data transformation. Adopting the average of locations probability, which reduces repetitive computation of categories, TAFBMC sharply saves the time cost and the equation is formalized as
The soundness was proved in [5].
represents the probability of all users leaving current category and entering next category at . denotes the set of locations, and denotes the set of location categories, where represents the set of categories might belong to. means the category of current location , and represents the category of current location . According to reallife schedules, we divided 24 hours of a day into 6 intervals, before dawn (), forenoon (), noon (), afternoon (), evening (), and night ().
A tensor with 4way is utilized to construct the category data, including current categories, next categories, months, and time periods. The whole structure accordingly is converted to , where and represent the current categories and next categories, t denotes the day intervals, and m is the number of historical months. The structure is further elaborated in Figure 4.
Furthermore, we elaborate the dynamic tensor as follows. Existing category dataset with missing data constitutes , which is used for predicting . The transformation can be expressed as
In the forecasting phase, the dynamic tensor updates itself by refreshing with the prediction result of . The new is defined as , and the size of is fixed in . In other words, prediction data take the place of the primary data.
After predicting the missing data, the current category data integrity will be improved; the number and the length of utilized data will also get enhanced.
In a nutshell, the overall algorithm concerning the structure of dynamic tensor completion is encapsulated in Algorithm 1.

Firstly, we input the existing sets and target time into the model as the initial data and expected targets. Dynamic tensor , prediction sets , and are combined to ensure the processing flow. Then, with initialized as , the procedure of Prido starts. According to existing data and former parameters , PIO can determine the current optimal parameter . Taking as input, FALRTC completes and outputs current result . In accordance with the nature of dynamic tensor, we refresh the original data with the predicted result as existing data for the next round. Then, time t proceeds to . Prido will repeat the operation until reaching the target time . Finally, the prediction in , , can be obtained.
Thus far, we have not explained the intrinsic characteristics of PIO and FALRTC, which will be covered in the following subsections.
3.2. Fast Incremental Tensor Completion
A tensor completion algorithm to realize fast dynamic tensor completion is proposed so as to cope with POI recommendation task.
3.2.1. Optimization Formulation
Current heuristic methods such as Tucker decomposition [4] and CP decomposition [30] aim at transforming tensor into other kinds of data structures. Especially, in CP decomposition, tensor is represented by a larger r as the linear combination of r tensors (vectors) with rank1:
As far as Tucker decomposition is concerned, tensor is decomposed into matrices and one small core tensor :
These methods require data structure transformation. But as this process goes, the error gradually accumulates because of the accompanied inevitable distortion of the original dataset.
Unlike traditional methods, we focus on dynamic tensor completion, in which low computational costs, fast convergence, and high accuracy are required. Consequently, the fast lowrank tensor completion algorithm, namely, FALRTC [31], is harnessed, which proves to be more efficient compared with other approaches.
3.2.2. Algorithmic Solution
In order to improve convergence speed and tackle the tensor trance norm minimization problem, FALRTC is put forward.
With regard to POI recommendation, for current category, next category, and seasons and interval modes is considered as the basic element for computing. The specific task is to work out the optimization problem, presented as follows:where is the constant satisfying and . The difficulty of efficiently solving the optimization problem is mainly caused by the nonsmooth terms in the equation.
The convergence rate can be reduced to by substituting gradient information with subgradient information, and refers to the number of iterations [32]. However, this value for minimizing general functions is [32]. In order to solve a nonsmooth optimization problem [33], FALRTC aims to (1) transform the original checkins data into smooth data and (2) tackle the smooth problem, and the solution is utilized to cope with the original problem. Liu et al. [31] provides detailed introduction.
3.3. Parameter Optimization Procedure
The optimization algorithm applied to each dynamic completion parameter optimization is developed in this section.
We mainly utilize the pigeoninspired optimization (PIO) to optimize the parameters of the dynamic tensor completion method and pinpoint the patterns of each step. As introduced in [34], PIO, which is a populationbased swarm intelligence algorithm, imitates pigeons’ navigation homing behavior. In the algorithm, Duan and Qiao adopted two operators to describe two stages of the homing phenomenon.
3.3.1. Map and Compass Operators
In the first stage, pigeons can briefly picture the topographic map in the head by means of magnetic sense. They take the height of the sun as compass to modify flight path. After approaching the destination, the dependence on the sun decreases.
3.3.2. Landmark Operator
In the second stage, when approaching the destination, the pigeons take more attention on the landmark. When spotting the familiar building, they will fly straightly to the goal. Otherwise, they will follow leaders that are familiar with the landmark.
Similarly, in the beginning, PIO sets initial location and velocity for these pigeons. Then, the new location and velocity of each pigeon is updated accordingly as follows:where denotes the map compass operator, represents the random number values in , denotes the current iterations, and is the global optimum in iterations. The first stage operation will repeat until iterations.
In the second stage, with landmark operator utilized, pigeons compare the operator with destination. If marching well, the pigeons fly straightly to the goal. After each iteration, half of the pigeons which are far away from the destination might be weeded out. , which is the central location of the remainder, will be set as the new landmark. The second stage operation will repeat until iterations. The combined system is defined as follows:where is the quality of the pigeon individual and defined as follows:
The whole twostage operation is depicted in Algorithm 2.

With PIO applied to optimize the parameters of each step in dynamic tensor, each block owns more explanatory and typical power for the specific sampling month interval. For example, when the model is utilized to recommend the July location category, the parameters trained by PIO in the block from Feb to July evidently outperform the one from Jan to Jun.
4. Experiments and Results
In this section, the experimental results are reported, followed by indepth analysis.
4.1. Experiment Settings
We utilized Foursquare, https://foursquare.com, the most widely used public checkins datasets, for POI recommendation.
4.1.1. Data Sources
We utilized the checkins data in New York and Los Angeles from January 2010 to June 2011, which contain the information of users, locations, categories, and tips. The statistics of the data are depicted in Table 1.
4.1.2. Evaluation Indices
Our target is to recommend a suitable category to the user in need, and a list of TopN recommended categories is provided. Once the user selects at least one item in the suggested list, the recommendation will be reckoned as successful. Specifically, if our recommended categories intersect with users’ real TopN lists, the prediction is deemed to be correct:
4.2. Experiment Results
We experimentally compare our tensor completionbased method with matrix factorization models MF, PMF, and FBMC and tensor factorization models CD, TD TAFBMC, and TADFMPC, and the details are shown in Table 2. Furthermore, to validate the merit of the structure based on dynamic tensor, the original completion method, staticPrido, is applied in the experiment as well. In short, eight methods are assessed in our work.
All experiments were implemented in MATLAB 2013a, and all tests were performed on a PC with Intel Core 2 2.67 GHz and 4 GB RAM. Tables 3 and 4 provide the overall results.
As Tables 3 and 4 and Figure 5 show, Prido outperforms other methods, except TD in . For the similar distribution of the result in two cities, we take New York City into analysis.
(a)
(b)
Overall speaking, the various traditional matrix factorization models perform relatively worse compared with tensor factorization models. In terms of accuracy, even the best method utilizing matrix factorization (FBMC) achieves half the value of the worst one harnessing tensor factorization (TAFBMC). The reason can be attributed to the fact that the matrix is 2dimension tensor in essence, which means at least two dimension information cannot be involved in the structure, and no matter which factorization methods is utilized, missing dimensions inevitably will restrict the latent accuracy. Thus, the further development of POI recommendation has to rely on tensor factorization.
As for the comparisons among tensor factorizationbased methods, CD and TD, as the earliest solutions, their practical arithmetical operations cost much more running time and they also perform badly in the finegrained prediction task. Although TD obtains the best performance in recommendation with the precision at 90.4%, the expense of time reaches almost 2 days, whereas the last four methods solely cost at most 3 hours. In terms of balancing running time with prediction precision, these two conventional methods are not the ideal choices.
Moreover, sPrido outperforms TAFBMC by approximately 3%, which reveals that our 4dimensions tensor structure is effective. Despite the fact that the user factor matters in personalized recommendation, people prefer to do popular things and consequently, the introduction of users’ checkins data is more reasonable than separate analysis. With the month dimension added, the influence of different seasons can be expressed in the model. Nevertheless, TADFMPC defeats sPrido across all metrics since static structure cannot expose the weight of diverse time, in which the premier data have the same influence as recent data for recommendation. To tackle this issue, TADFMPC adopts three different types of decay of the probability over the time factor. Nevertheless, this method neglects the variety of different seasons. Due to the adjacency of seasons, the user’s behavior in autumn is similar to summer, whereas it has little correlation with spring. Therefore, the checkins data in different seasons should not be simply reflected in the same equation. Based on the consideration, we propose Prido, in which adjacent seasons data are put into one dynamic tensor block. As can be seen from the table, Prido improves the result by 2% when compared with TADFMPC.
5. Conclusion
In this paper, a novel dynamic heuristic tensor completion approach on the basis of fast lowrank tensor completion algorithm is proposed to solve the POI recommendation task. Fast lowrank tensor completion (FALRTC) is leveraged as a supplement to the original dynamic tensor structure, so as to improve the performance prediction. Prido is able to capture the inner features of checkins data due to the multimode characteristics such as current categories, next categories, and temporal information as well as seasons variations are all integrated in the model. Experiment results not only validate the superiority of our proposed method but also suggest that there is potential application opportunity as for POI recommendation environment in a large and dynamic scope.
Data Availability
The data used to support this study are available at https://foursquare.com/, which can be publicly accessed without any charge.
Conflicts of Interest
The authors declare that they have no conflicts of interest.
Acknowledgments
This work was partially supported by NSFC under Grant nos. 61872446, 71690233, and 71331008.