1 Introduction

With the exponential growth of network information, improving the efficiency of information utilization and alleviating the problem of information overload have become popular research areas. A recommender system is an important way to solve above problems, and plays an important role in e-commerce, information retrieval, e-tourism, online advertising, and mobile applications, among others [1]. Recommender systems are defined as programmes that attempt to recommend the most suitable items to particular users by predicting a user’s interest in an item based on related information about items [2]. Recently, Yera et al. [3] analysed more than a hundred papers to improve the performance of recommender systems using fuzzy techniques.

With the rapid development of mobile devices and global position system (GPS), location-based social networks (LBSNs) have become very popular and attracted lots of attention from industry and academia. Typical location-based social networks include Foursquare, Gowalla, Facebook Place, and GeoLife, among others. Until June 2016, Foursquare has collected more than 8 billion check-ins and more than 65 million place shapes mapping businesses around the world. Over 55 million people in the world use Foursquare each month [4]. As shown in Fig. 1, users can build connections with their friends, upload photos, share their locations via check-in for points of interest (e.g., restaurants, tourist spots, and stores, etc), and publish relevant reviews. The task of recommending new, interesting places is referred to as a point-of-interest (POI) recommendation. POI recommender systems play an important role in LBSNs since they can both meet users’ personalized preferences for visiting new places and help to increase revenues by providing users with intelligent location services, such as location-aware advertisements.

Fig. 1
figure 1

A location-based social network

At present, most POI recommendation algorithms [5,6,7,8,9,10]are based on historical check-in behaviours and contextual information (e.g., ratings, temporal, geographical, social relations, labels, and categories) mined from users’ preferences of POIs. The premise of a points-of-interest recommendation based on convolution matrix factorization methods is that the frequency of users’ check-in reflects the users’ POI preferences. Above recommended methods is that the frequency of users’ check-in reflects the users’ POI preferences. From the distribution of the number of users’ checked-in to Foursquare [11], we can know that users’ attitude to check-in POIs is not very positive, as more than 50 % of POIs were checked by the same user only once. Therefore, only using sparse users’ check-in data and contextual information as the basis for the recommended model will have a big deviation from the final results.

In reality, in addition to the analysis of users’ historical check-in data and contextual information, users’ preferences can also be analysed by users’ POIs reviews text. For example, one user evaluated one restaurant “The taste of this restaurant is good, dishes taste partial spicy!” From the above review, we know that this user’s emotional tendency is positive, while the degree of interest to this restaurant is relatively high. Therefore, in view of the sparseness of historical check-in data, this paper combines POIs review information and contextual information to improve the quality of POI recommendations. However, there is a small challenge for existing recommendation models, which is that it is difficult to find an effective way to fuse data from multiple heterogeneous data sources. The main contributions of this paper are summarized as follows:

Based on the analysis of large-scale data, POI recommendations contain a variety of data from different areas and structures. Therefore, this paper proposes using a convolution matrix factorization method to integrate heterogeneous data, that integrates heterogeneous data based on large-scale data.

We propose a novel POI recommendation model called the Review Geographical Social (ReGS). This model uses a convolution neural network to build a POI review model based on review text and puts two factors of user social relations and geographical influence into the convolution matrix factorization model to achieve improved predictions of users’ preferences.

Extensive experiments on two real-world datasets collected from Foursquare showed that the ReGS is superior to other state-of-the-art POIs recommendation models for precision and recall rates.

2 Related work

2.1 Recommendation based on contextual information

A context-aware recommendation system (CARS) [12] is both a recommendation system and a context-aware application system, which was proposed by Aavavius and Tuzhilin et al. They noted that the incorporation of contextual information into the recommendation system will improve recommendation accuracy. So, at present, most POI recommendations focus on how to use a variety of contextual information (e.g., geographical factors and social relations) to recommend POIs. Noguera et al. [13] proposed a mobile CARS that took advantage of the additional information that mobile devices provide. This system allows tourists to benefit from innovative features such as a 3D map-based interface and real-time location-sensitive recommendations. Ye et al. [14] was inspired by the view that friends could share more common interest places. By analysing datasets from Foursquare, they find a strong correlation between social relations and geographical location. Then, they proposed a recommendation model based on a naive Bayesian algorithm to integrate users’ preferences, geographical location and users’ social relations. Cheng et al. [15] integrated users’ social relations and geographical locations into a probability matrix factorization model. They built the users’ check-in probability model as the multi-centre Gaussian model to capture geographical influence. Then, they put geographical influence, social information and geographical information into a generalized matrix factorization model. Lian et al. [16] proposed using a weighted matrix factorization model for POIs recommendation. Due to the phenomenon of spatial aggregation of users’ check-in activity based on LBSNs, they described the spatial aggregation effect from the perspective of a two-dimensional kernel density estimation and integrated it into the matrix factorization model. They explained why the spatial aggregation effect model can address the problem of the user-POI sparse matrix.

2.2 Recommendation based on review texts

To alleviate the sparse effect of users’ historical check-in data for POI recommendations, researchers have began to explore review texts for POI recommendations. Cheng et al. [17] collected 22 million points of check-in data from 220 thousand users and evaluated user mobility patterns using quantitative analysis of relevant user information such as spatial, temporal, social, and textual information. They found that emotional-based review information related to check-in would provide a better understanding of users’ preferences and richer contextual information that could improve the performance of relevant recommendations.

Recently, recommendations based on text models such as Latent Dirichlet Allocation (LDA) and Stacked Denoising Auto-Encoder (SDAE) have been proposed to utilize item description text [18, 19]. However, existing models do not fully capture text information. For example, take the following two sentences, “I trust this man” and “I betray his trust finally”. Since the LDA and SDAE consider the text as a bag of distinguished words, they cannot distinguish each occurrence of the term“trust”. In [20], a convolutional matrix factorization is proposed by using a convolution neural network (CNN) for text recommendations. This model integrates the CNN into a probability matrix factorization (PMF). It uses the CNN to learn items’ latent factors and the PMF to get users’ latent factors. Assuming that this model satisfies the Gaussian distribution, the objective function consists of matrix factorization and the CNN loss function. However, this model is only used in the text recommendations and is not combined with other contextual information factors applied to POI recommendations.

In general, the above recommendation models have achieved good results, but they did not integrate reviews and contextual information into one model using deep neural networks. Therefore, this paper analyses the above various kinds of information and takes contextual and review information of users’ check-in behaviours into the process of inferring users’ POI preferences. Compared with existing recommendation models,the ReGS uses a convolution neural network to learn POIs’ latent vectors from review texts, which can be used to better meet users’ preferences.

3 POI recommendation based on matrix factorization

The problem of personalized POI recommendation is how to recommend POIs to a user given a user’s POI check-in records and other available side information. Let U = {u 1, u 2,..., u M } be a set of LBSN users. Let V = {v 1, v 2,..., v N } be a set of POIs, where each POI has a location l i =[l o n j , l a t j ]T represented by longitude and latitude. \( \mathbf {R}\in \mathbb {R}^{M\times N}\) is a check-in matrix with each element r i j representing the number of observed check-in made by u i at v j . The users’ check-in frequency reflects the users’ POI preferences. The data of users and POIs are mapped into a potentially low-dimensional hidden space km i n(m, n). The basic POIs recommendation model approximates u i ’s latent interests in an unvisited v j by solving the following optimization problems:

$$ \min_{\mathbf{U},\mathbf{V}}\frac{1}{2}\left( \mathbf{I}\odot(\mathbf{R}-\mathbf{U}\mathbf{V}^{T})^{2}\right) $$
(1)

Where \( \mathbf {I}\in \mathbb {R}^{M\times N}\) is a check-in weight matrix with I = 1 indicating that u i has checked in v j , otherwise I = 0. The above recommendation model learns an optimal set of {U, V} whose product \(\widehat {\mathbf {R}}=\mathbf {U}\mathbf {V}^{T}\) is a non-sparse matrix that approximates the original R. POI recommendations are then performed for each user based on the ranking among her unvisited POIs in \(\widehat {\mathbf {R}}\). To avoid overfitting, two regularization terms on free matrix parameters U and V are added into (2). Hence, we have

$$ \min_{\mathbf{U},\mathbf{V}}\frac{1}{2}\left\| \mathbf{I}\odot\left( \mathbf{R}-\mathbf{U}\mathbf{V}^{T} \right) \right\|_{F}^{2}+\frac{\lambda_{u}}{2}\left\| \mathbf{U} \right\|_{F}^{2}+\frac{\lambda_{v}}{2}\left\| \mathbf{V} \right\|_{F}^{2} $$
(2)

where the regularization parameters λ u , λ v > 0, \(\left \| \cdot \right \|_{F}^{2}\) denotes the Frobenius norm. The optimization problem in (2) minimizes the sum-of-squared-errors objective function with quadratic regularized terms. Gradient based approaches can be applied to find a local minimum.

4 POI recommendation framework based on convolution matrix factorization

On the basis of users’ historical check-in data, this paper proposes a POI recommendation model ReGS that considers semantics regarding user reviews and relevant POIs contextual information.

4.1 Modelling reviews information

Review text usually includes the reasons for users’ ratings, which is conducive to understanding users’ rating behaviours. Cold start problems can be effectively alleviated by deeply analysing reviews. Topic model techniques are often used to mine the“topic” that is hidden in documents. Currently, Latent Dirichlet Allocation (LDA) is the most widely used topic modelling technique. However, CNN can effectively capture local features of documents through modelling components such as local receptive fields [21], shared weights [22], and sub-sampling [23]. Thus, using CNN can provide deeper understanding of documents and generate better latent models than LDA and SDAE. This paper discovers “POIs topics” hidden in review text based on the CNN model. According to the method used in [20], first all words of one review are embedded into a matrix. One review can be represented as a two-dimensional matrix, where the rows of the matrix are the number of words in the review and the columns are the length of the embedded words vector. POIs latent vectors can be determined by convolution, pooling and mapping methods for this matrix. The POI latent vector is generated from three variables: 1) the internal weights W in CNN; 2)D j representing the review of POI j; and 3) epsilon variables as Gaussian noise, which enables us to further optimize the POI latent model for the ratings. Thus, the final POI latent factor based on reviews information is obtained by the following equations.

$$ v_{j}=cnn(W,D_{j})+\varepsilon_{j} $$
(3)

Thus, information from reviews can be leveraged to learn the POI latent vector, as shown below:

$$ min\frac{1}{2}{\sum\limits_{j}^{m}}\left( v_{j}-cnn\left( W,D_{j} \right) \right)^{2} $$
(4)

4.2 Modelling geographical information

Users’ check-in records contain plentiful geographical information, and geographical distance plays an important role in POI recommendations. As is shown in Fig. 2, POIs checked by the same user are in a small range of geographical distances, which can be attributed to geographical influence. In reality, people usually visited one POI (such as a museum) and then travelled to nearby POIs (such as restaurants or a shop store). Adjacent POIs have a stronger geographical relevance than long-distance POIs. According to the Tobler’s first law of geography [24], one user’s propensity for one POI is inversely proportional to the distance between them. This is similar to the observation that the probability of purchasing an item is inversely proportional to its cost. Therefore, users’ check-in places often form a geographical cluster area. Thus, based on the geographical characteristics of users’ check-in data, we can effectively improve the performance of POI recommendations.

Fig. 2
figure 2

Physical distance influence probability distribution of users in Foursquare

In this paper, we assumed that u i ’s preference for several neighbouring locations of v j to represent u i ’s preference for v j . A geographical weight strategy is used to compensate for missing geographical information in the classical matrix factorization models. According to (1,2), with POI recommendations based on geographical characteristics [25], the minimization problem can be expressed as the following equation:

$$ \min_{\mathbf{U},\mathbf{V}}\frac{1}{2}\left( \mathbf{I}\odot (\mathbf{R}-\mathbf{U}\mathbf{H}\mathbf{V}^{T})^{2}\right) $$
(5)

While, H = α U V T + (1 − α)S T, \(\mathbf {S}\in \mathbb {R}^{n\times n}\), \(S_{j,k}=\frac {sim\left (v_{j},v_{k} \right )}{Z\left (v_{j} \right )}\). α is a weight parameter used to control the influence of neighbouring locations. s i m(v j , v k ) indicates the geography weight of the adjacent location v k at the location v j . Z(v j ) is a regularization item, defined as \(Z\left (v_{j} \right )={\sum }_{v_{k}\in C\left (v_{j} \right )}sim\left (v_{j},v_{k} \right )\), while s i m(v j , v k ) uses the Gaussian function to represent, as shown in (6):

$$ sim\left( v_{j},v_{k}\right)=e^{-\frac{\left\| l_{j}-l_{k} \right\|^{2}}{\alpha^{2}}},\forall v_{k}\in C\left( v_{j} \right) $$
(6)

Considering the range of geographical areas, users are unlikely to check in a place that is too far from the users’ geographical location. Therefore, this paper presents a geographical area distance variable F to distinguish geographical range. C(v j ) represents the adjacent locations to v j . In the experiment, F is set to 10000 according to the empirical value. If the recommended POI is not in the user’s current position C(v j ), then this POI is not considered.

4.3 Modelling user social relations

In reality, users often go to places where their friends provide strong recommendations. However, if all trust relations are treated equally, it will be hard to find user characteristics and relations hidden behind trust relations. Zhang et al. [26] proposed a personalized recommendation algorithm integrating trust relationships and time series. Based on the above algorithm, they proposed a model that comprehensively considers factors such as direct and indirect trust among users, a mechanism for trust propagation and user similarity [27]. We use the method above papers mentioned to model user social relations. The details are shown as below. Firstly, we use recursive computing that calculates trust values by analysing the transmission and aggregation characteristics of trust as:

$$ t_{i,f}=\frac{{\sum}_{v\in V^{T}}t_{i,f}\cdot t_{v,f} }{{\sum}_{v\in V^{T}}t_{i,f}} $$
(7)

where i, f, and v are users; t i, f represents the trust value between target user i and user f; v is a node on the shortest path from i to f; and V T is a set of users. These users should be located on the shortest path from i to f and their trust values should be greater than the designated threshold value. The similarity between users i and f can be acquired by calculating the Pearson correlation coefficient:

$$ sim\left( i,f \right)=\frac{{\sum}_{m\in {I}_{i,f}}\left( R_{i,m}-\overline{R_{i}} \right)\left( R_{f,m}-\overline{R_{f}} \right)}{\sqrt{{\sum}_{m\in {I}_{i,f}}\left( R_{i,m}-\overline{R_{i}} \right)^{2}}\times \sqrt{\left( R_{f,m}-\overline{R_{f}} \right)^{2}}} $$
(8)

where sim(i,f) represents the similarity between user i and f. After acquiring the trust value and similarity between users i and f, a weighted average is used to combine the two features. Recommended neighbours with high similarity and trust values gain increased trust. The new trust value T i, f between user i and user f can be acquired by calculating the following equation:

$$ T_{i,f}=\frac{2sim\left( i,f \right)\cdot t_{i,f}}{sim\left( i,f \right)+t_{i,f}} $$
(9)

The objective function of POI recommendations based on social relations is minimized as shown in (10):

$$ min\frac{1}{2}\sum\limits_{i = 1}^{m}\sum\limits_{f\in u}T_{i,f}\left( u_{i}- u_{f} \right)^{2} $$
(10)

4.4 ReGS model

The ReGS model integrates reviews information, geographical information and social relations to predict ratings. The graphical model of the ReGS model is shown in Fig. 3. The objective function is minimized as follows:

$$\begin{array}{@{}rcl@{}} \underset{\mathbf{U},\mathbf{H},\mathbf{V}\geq 0}{min}\delta \!&=&\!\frac{1}{2}\left\| \mathbf{I}\odot \left( \mathbf{R}\,-\,\mathbf{U}\mathbf{H}\mathbf{V}^{T} \right) \right\|_{F}^{2}\\ &&\!+\frac{\lambda_{1}}{2}\sum\limits_{i = 1}^{m}\sum\limits_{f\in u}T_{i,f}\left\| u_{i}\,-\,u_{f} \right\|_{F}^{2}\\ &&\!+\frac{\lambda_{2}}{2}{\sum\limits_{j}^{m}}\left\| v_{j}\,-\,cnn\left( W,D_{j} \right) \right\|_{F}^{2}\,+\,\frac{{\lambda }_{3}}{2}\sum\limits_{k}^{\left|{w}_{k} \right|}\left\| w_{k} \right\|_{2}\\ \end{array} $$
(11)

where λ 1 is the weight parameter to control social relations. λ 2 is the weight parameter to control reviews information.λ 3 is the weight parameter to control internal weights W.

Fig. 3
figure 3

Graphical model of ReGS

4.5 Parameter estimation

This paper uses the gradient descent method [28] and coordinate descent method [29] to solve the local optimal solution of the objective function.

$$\begin{array}{@{}rcl@{}} \frac{\partial \delta }{\partial \mathbf{U}}&=&-\left( \mathbf{I}\odot\mathbf{I}\odot\mathbf{R} \right)\mathbf{V}\mathbf{H}^{T}+\left( \mathbf{I}\odot\mathbf{I}\left( \mathbf{U}\mathbf{H}\mathbf{V}^{T} \right) \right)\mathbf{V}\mathbf{H}^{T}\\ &&+\lambda_{1}\sum\limits_{i = 1}^{m}\sum\limits_{f\in u}T_{i,f}\left( u_{i}-u_{f} \right)+\lambda_{1}\sum\limits_{i = 1}^{m}\sum\limits_{g\in u}T_{i,f}\\ &&\times\left( u_{i}-u_{g} \right) \end{array} $$
(12)
$$\begin{array}{@{}rcl@{}} \frac{\partial \delta }{\partial \mathbf{V}}&=&-\left( \mathbf{I}^{T}\odot\mathbf{I}^{T}\odot\mathbf{R} \right)\mathbf{U}\mathbf{H}+ \left( \mathbf{I}^{T}\odot\mathbf{I}^{T}\left( \mathbf{V}\mathbf{H}^{T}\mathbf{U}^{T} \right) \right)\mathbf{U}\mathbf{H}\\ &&+\lambda_{2}{\sum\limits_{j}^{m}}\left( v_{j}-cnn\left( W,D_{j} \right) \right) \end{array} $$
(13)
$$ \begin{array}{llllllllll} v_{j}\leftarrow \left( \mathbf{U}\mathbf{I}_{j}\mathbf{U}^{T}+\lambda_{2}\mathbf{I}_{k} \right)^{-1}\left( \mathbf{U}\mathbf{R}_{j}+\lambda_{2}cnn\left( W,D_{j} \right) \right) \end{array} $$
(14)
$$ \begin{array}{llllllllll} \frac{\partial \delta }{\partial \mathbf{H}}=-\mathbf{U}^{T}\left( \mathbf{I}\odot\mathbf{I}\odot \mathbf{R} \right)\mathbf{V}+ \mathbf{U}^{T}\left( \mathbf{I}\odot\mathbf{I}\odot\left( \mathbf{U}\mathbf{H}\mathbf{V}^{T} \right)\right)\mathbf{V} \end{array} $$
(15)

The goal of this paper is to optimize parameters U, V, H and W which are in the convolution neural network, whereby, U, V and H are optimized by the formulas (12)–(15). Given U and V, we can learn the weights w l and biases of each layer using the back-propagation learning algorithm as in [30].

5 Experiments

5.1 Foursquare dataset

We choose Foursquare, one of the most popular location-based social networking websites, to analyse review text on LBSNs. We collected two experimental datasets from Foursquare, New York City(NYC) and Los Angeles(LA). Then, we obtained their corresponding check-in records with the same crawling strategy proposed in [31] and collected check-ins that occurred in NYC and LA. Based on the venue id extracted from check-in records, we obtained the POI categories through the “Venue API4”of Foursquare. In pre-processing, we split each dataset into the training set and testing set based on the check-in time rather than using a random partition method, because in practice we can only utilize past check-in data to predict future check-in events. Half of the check-in data with earlier timestamps are used as the training set, and the other half are used as the testing set that needs to be divided into different time slots for evaluation purposes. In the experiments,the training set is used to learn the recommendation models of the evaluated techniques described in Section 4.4 to predict the testing data.

The statistics of the two datasets are shown in Table 1. User-POI check-in matrix densities of these two datasets are 5.63 × 10− 5and 2.04 × 10− 5, respectively. Since the user-POI check-in matrix is sparse, the accuracy of the POI recommendation is generally not high. For example, when the user-POI check-in matrix density is 2.72 × 10− 4, the maximum accuracy is only 0.06 [32]. Because user-POI check-in matrix density is relatively low, it is reasonable to get the lowest accuracy rate and recall rate. Meanwhile, the density of the LA dataset is slightly higher than for the NYC dataset. Therefore, the accuracy and recall rate based of the LA dataset are mostly higher than those of the NYC dataset.

Table 1 Statistic on the Datasets

5.2 Evaluation index

5.2.1 Predicting ratings

Root Mean Square Error (RMSE) [33] is used to measure performance. The definitions are as follows:

$$ RMSE=\sqrt{\frac{1}{\left| T \right|}\sum\limits_{i,j}\left( R_{i,j}- \hat{R_{i,j}}\right)^{2}} $$
(16)

Where R i, j and \(\hat {R_{i,j}}\) denote the observed and predicted ratings, respectively, and T is the testing set. The smaller the values are for both metrics, the better their performance.

5.2.2 Recommending top-k POIs

We use two indicators to evaluate Top-k POI recommendation performance. One is accuracy rate Precision @k and the other is recall rate Recall @k, abbreviated as P@k and R@k, respectively. For a target user u i , P@k for each user is defined as follows:

$$ P@K=\frac{number\; of \;locations \;the \;user\; likes \;in\; top\; K}{total \;number \;of\; locations} $$
(17)

And, R@k for each user is defined as follows:

$$ R@K=\frac{number\; of \;locations \;the \;user\; likes \;in\; top\; K}{total \;number \;of\; locations\;the \;user\; likes} $$
(18)

We select P@1, P@5, P@10, R@1,R@5 and R@10 as the evaluation indicators.

5.3 The method for comparison

We compared our proposed model with the following algorithms:

LCARS [34]

This method built the location-content recommendation system based on the topic model to infer the user’s individual interest and location preferences.

CoRe [32]

This recommendation model integrated user social relations and geographical influence based on robustness rules, in which the geographical influence factors are modeled based on kernal density estimations.

GeoMF [16]

GeoMF is a matrix factorization model that utilized the spatial clustering of user check-in behaviour.

DRW [35]

This recommendation model fused users’ social relations, category information and popularity information of POIs based on the dynamic random walk.

NCPD [36]

This recommendation model integrated geographical information and category information based on the NMF matrix factorization model. Geographical factors are modelled based on the influence of user’s geographical neighbours.

In this experiment, the k value is set to 1, 5, and 10 respectively. When the k value changed, each algorithm recalculated P@k and R@k. Considering the effectiveness of the experiment, the implicit space dimension is set to 200. When the geographical location weight α is set to 0.4 in (6), the recommended performance is best [25].

5.4 Analysis of experimental results

This section evaluates the ReGS model from three perspectives: 1) Comparing the ReGS model with five existing POI recommendation models, 2) Analysing the contribution of the three evaluation indexes, and 3) Discussing the impact of relevant parameters.

5.4.1 Comparison and analysis of recommended models

We used different training data to test our method and list the results in Table 2. The process of model training is performed three times at a time, and the average value listed in Table 2 is the final result to reduce errors. From Table 2, we see that our method has advantages. This is mainly because some methods only used ratings as the input of the model; thus, they have some difficulties when solving the problems of data sparseness and cold start. Other methods utilized ratings and other contextual information to predict ratings by using traditional regression methods, and these methods do not use deep neural networks to extract user and contextual features. Thus, they do not do well when learning user’s interest preferences, and the results have a large deviation.

Table 2 RMSE comparasion

As shown in Tables 3 and 4, the ReGS model incorporates the influence of review factors, social relation factors and geographical factors. Compared with the other five recommendation models, the ReGS model shows better recommendation quality in terms of accuracy and recall rate. With the k value increased, the accuracy declines and the recall rate rises. That is because recommending more locations to users could be conducive to finding more POIs, and users are more willing to check-in at POIs.

Table 3 LA Dataset
Table 4 NYC Dataset

CoRe

This model uses a more robust rule rather than a simple linear weight to fuse users’ social relations and the geographical impact of POIs. Geometrical factors are modelled based on kernel density estimation. Thus, as shown in Tables 3 and 4, the performance of this model ranks third.

LCARS

This method uses the topic model (LDA) to infer the user’s personal interests and local area preferences. Local preferences or personalized interests are expressed as a mixture of topics with each topic being a distribution of POIs learned from POIs check-in data and classified information. However, LCARS ignores geographical and social characteristics of user check-in behaviour. Thus, as shown in Tables 3 and 4, the performance of this model ranks fifth.

GeoMF

GeoMF enhances the potential factors of users and POIs, as well as users’ active region vectors and region influencing vectors of POIs. This model captures spatial clustering from the two-dimensional kernel density assessment and integrates it into matrix factorization. Thus, as shown in Tables 3 and 4, the performance of this model ranks fourth.

DRW

Based on the dynamic random walk model, this model integrates users’ social relations, related categories information and popularity influence. However, it ignores the most important geographical factors of POIs. Therefore, the performance of this model is last.

NCPD

Geographical influence and popularity information are merged based on the NMF matrix factorization model. However, relative to the ReGS, the NCPD model lacks users’ social relations and review information, and the final recommendation accuracy has not improved. As shown in Tables 3 and 4, the performance of this model ranks second.

ReGS

Based on two datasets, the ReGS model performs best. Compared to the NCPD, the recommended performance of the ReGS has improved. The reasons are as follows: 1) Relative to CoRe, GeoMF, NCPD, DRW and LCARS, the ReGS is a comprehensive model that fused users’ reviews text based on their interests, users’ social relations, and geographical factors based on geographical neighbours. 2) Compared to the LCARS based on topic model(LDA) technology, the ReGS is a matrix factorization model based on a convolutional neural network to model review information. Modelling geographical factors based on geographical neighbours features is better rather than the GeoMF based on geographical location similarity.

5.4.2 Factor impact analysis

This section analyses the three factors of reviews information, geographical information and users’ social relations in the ReGS model. These three factors are named Rev, Geo and So, corresponding to (4), (5) and (10). Figure 4a,b shows comparison results of the three factors and two evaluation indexes of accuracy and recall rate on the LA dataset. Figure 4c,d shows comparison results of the three factors and two evaluation indexes of accuracy and recall rate on the NYC dataset. The following conclusions can be drawn from Fig. 4: 1) These three factors are important for POI recommendations; and 2) The ReGS model is significantly better due to the convergence of the three factors, which contributes to improved recommendation accuracy. The reasons for these conclusion is that users are influenced by many aspects of contextual information in real life, rather than one-sided from a certain aspect to predict users’ preferences. Therefore, POI recommendations should take full advantage of a variety of POI contextual information, which is an effective method to solve the cold start and data sparsity problems.

Fig. 4
figure 4

Recommendation accuracy of ReGS compared with its three factors on datasets

5.4.3 Parameter analysis

The ReGS model has three important parameters: 1) Social relations parameter λ 1; 2) Review information parameter λ 2; and 3) The geographical neighbour relations weight parameter α. The value of one parameter is changed while other parameters are fixed to analyse the sensitivity of each parameter and the impact on the final recommendation.

We first analysed the geographical neighbour relations weight parameter α, and set k = 5, λ 2 = 0.04, and λ 1 = 0.01. The effect on the objective function based on two datasets are shown in Fig. 5. As seen from Fig. 5: setting the range of α from 0.4 to 0.5 obtains better results. This indicates that α has a significant impact on the measurement of users’ preferences and geographical neighbour characteristics. α = 0 or α = 1 will result in decreased recommendation accuracy. In particular, when α = 0, since the geographical neighbour characteristics are not taken into account, the recommendation accuracy is the worst. When k = 5, λ 2 = 0.04, the influence of social relations parameter λ 1 to the whole model is shown in Fig. 6. From Fig. 6, the following conclusions can be drawn: 1) λ 1 = 0.01 gets the best recommendation result, but the recommendation accuracy will drop when λ 1 = 0 ; 2) When λ 1 > 0.05, the ReGS model is stable, and will not become sensitive when λ 1 changes. Therefore, the ReGS model is not very sensitive regarding λ 1. Choosing λ 1 = 0.01 as the default value is reasonable. When k = 5, λ 1 = 0.01, the influence of the review text parameter λ 2 to the whole model is shown in Fig. 7. As shown in Fig. 7, when the λ 2 = 0.04, the ReGS model’s accuracy and recall rate improve. However, when λ 2 > 0.04, the ReGS model is stable and not sensitive to λ 2 changes. Therefore, the ReGS model is not very sensitive about λ 2. Choosing λ 2= 0.04 as the default value is reasonable. This is mainly because users may only mention some potential factors rather than all factors in one review.

Fig. 5
figure 5

Effect of parameter α on recommendation accuracy of ReGS

Fig. 6
figure 6

Effect of parameter λ 1 on recommendation accuracy of ReGS

Fig. 7
figure 7

Effect of parameter λ 2 on recommendation accuracy of ReGS

6 Conclusions

In this paper, we presented an integrated analysis of the joint effects of multiple factors that influence one user to choose a POI. We proposed a general framework ReGS that integrates CNN into PMF to learn users’ preferences for POI recommendation in LBSNs. There are several advantages of the proposed recommendation method. First, this model captured the geographical influence on a user’s check-in behaviour by taking into consideration the geographical factors in LBSNs, such as Tobler’s first law of geography. Second, this method effectively models user social rel ations, which are important for location-based services. Last but not least, the proposed approach extended the latent factors from explicit rating recommendation to implicit feedback recommendation settings by considering the review data characteristic based on CNN. Finally, extensive experimental results on real-world LBSN data validated the performance of the proposed method. In the future, we will investigate other deep learning models to replace CNN for further boosting performance including recurrent neural networks and long short-term memory. Furthermore, it would be interesting to investigate the recommendation effect of reviews information compared to other information, such as temporal effects, POIs orders or popularity impacts.