## 3 Methodology
### Data Preprocessing  
The goal of data preprocessing is to convert the original check-in records to the data, which can be calculated using the machine learning technique. Although lots of useful features exist (e.g., category and review of POI) in each check-in record, the crucial information including user ID, POI ID, check-in timestamps, and location (i.e., latitude and longitude) is considered as the input features to the  
Figure 1: The overview of the proposed GAN based POI recommender system. following modules. Similar to the majority of previous research, in this paper, the technique of Word2 Vec is applied to represent users and POIs using vectors that are capable of capturing the differences among users and POIs [5]. Based on the mechanism of Word2 Vec, each word which has a unique id ranged from 0 to the number of words in the bag will be converted to a specific vector according to the id. The vectors, which are the embeddings representing the corresponding words, are usually initialized based on the Gaussian distribution and updated iteratively within the training processing. Similar to Word2 Vec, the users and POIs are given unique ids that link to the corresponding embeddings (i.e., vectors) where the User/POI embeddings will be updated within the processing of fitting individual sequential check-ins. In general, the vectors are stored in a matrix, and the line number of the matrix is utilized to extract the corresponding vector (i.e., the representation of the user or POI). Therefore, in this paper, each user or POI is labeled as a unique number starting from 0 instead of using a complex character string (e.g., 4c4f4d8d24 edc9b62a5a77 bb). The individual temporal check-in records are described as a numerical sequence which is shown in Figure 1.  
Due to the consideration of **sequential check-ins** and **geographical influence**, the temporal check-ins and the related geographical location should be extracted from the original datasets. For the influence of **sequential check-ins**, the timestamps are used to sort the corresponding check-in records for constructing the individual sequential check-ins of each user instead of being an explicit feature input to the model. Different from traditional recommender systems (i.e., book and movie), the next POI visit is not only dependent on the user preference but also considering the latest visited POIs. In other words, a user cannot visit multiple restaurants in a short time while it is normal for a user to go shopping among several malls. Therefore, the visiting pattern (i.e., the latest temporal visited POIs) not only describes the typical lifestyle but also represents individual preferences. To this end, the 1-stride fixed-size sliding window is utilized to split the individual check-in sequences into independent samples where the last POI of samples is the actual next visited POI. The previous POIs are considered as a visiting pattern. These samples considered as the real training instances will be transformed to the GAN. For the **geographical influence**, the distance between the last visited POI and the next POI is also a significant reference for users to accept the recommendations. In other words, there exists a trade-off between the distance and the user preference if the time is limited. Therefore, we consider the latitude and longitude as a two-dimensional vector to capture the significance of distance and preference to a specific user. In our previous work [30], we conduct experiments to show that, if the POI embedding is updated without the geographical coordinate information, the POI embeddings cannot be related to the geographical context. Therefore, the geographical influence is significant to the performance of POI recommendations. Based on the aforementioned steps, the output of data preprocessing can be categorized into two parts: (1) the real training samples for the following adversarial learning; (2) the input of generator and discriminator.