## 5 Results
### Model Implementation Details
#### 5.2.2 Parameter Tuning  
On the dataset NYCBike, the number of time intervals of closeness, daily, weekly are 4, 4, and 4, respectively. On the dataset BJTaxi, the number of time intervals of closeness, daily, and weekly, are 6, 4, and 4, respectively. The timestamp of NYCBike is 1 h, and BJTaxi is a half-hour. We put the learning rate for all models to 0.0002. We optimize the model to apply the Adam optimizer. We trained the proposed models with a maximum training iteration of 200 epochs and used an early stopping strategy. The purpose of early stopping is to stop training if the loss of validation for 15 consecutive epochs does not decrease [46]. In addition, we used ReLu for all layers as an activation function. During the experiment, we set a batch size 64 for batch normalization. Two important factors we need to follow when designing the structure of neural networks are: (1) depth of the network, and (2) convolutional layer hyperparameters and pooling layer. In the second factor, be careful about the filter size of the convolutional layer and pooling size. The NYCBike dataset, owing to the size we set our generated 3 dimension, is small, i.e., \(4\times 8\times 16\). In all branches for NYCBike, we selected only two 3D CNN layers. The kernel size is set (2,2,3) in all branches. The expression 2 in kernel size denotes the temporal kernel size, and the reaming term (2,3) denotes the spatial kernel size. The first layer consists of 32 3D convolutional filters, and the second layer is 64. \begin{table}
\begin{tabular}{c c c} \hline \hline
**Datasets Description** & **BJTaxi** & **NYCBike** \\ \hline Time Span & P1: 07-01-2013–10-31-2013 & P1: 04-01-2014 \\  & P2: 02-01-2014–06-30-2014 & P2: 09-30-2014 \\  & P3: 03-01-2015–06-30-2015 & \\  & P4: 11-01-2015–03-31-2016 & \\ Time interval & 30 min & 60 min \\ Grid Map Size & \(32\times 32\) & \(16\times 8\) \\ Trajectory Data & & \\ Average sampling rate & 60 & 60 \\ Number of taxis/bikes & 34,000+ & 6800+ \\ Available time interval & 22,459 & 4392 \\ External factors (meteorology, time, and event) & data & data \\ Number of holidays & 41 & 20 \\ Weather Conditions & 16 types (Sunny, Rainy) & 16 types (Sunny, Rainy) \\ Temperature/\({}^{\circ}\)C & [\(-\)24,6,41.0] & [\(-\)24,6,41.0] \\ Wind speed/mph & [0,48.6] & [0,48.6] \\ Available images & 21,588 & 4150 \\ Train images & 14,500 & 3345 \\ Test Images & 1251 & 249 \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Statistics of BJTaxi and NYCBike datasets. The gate of LSTM set spatial-temporal kernel size (2,2,3) is applied. The spatial-temporal kernel's goal is to control the spatial-temporal features. The size of the pooling layer is charged with the size (1,2,2) is followed. The additional dropout layer is set to solve the problem of over-fitting. The size of the additional dropout layer is 0.25. In the second real-world dataset BJTaxi, we partition the grid map into \(32\times 32\). The grid map of the BJTaxi is larger than the dataset NYCBike. In all multiple branches, we apply three 3D CNN layers. We describe the parameters of our model (MBSTRU) and (MBSTAL) as follows. The kernel size is set to (2,2,3) for the closeness branch for these three layers. The other two branches, like daily and weekly, set the kernel size (2,2,3) for the first layer, while we set (1,2,3) kernel size for the other two layers. The purpose of the above settings is to align the output size of the branches' closeness, daily, and weekly. We set the number of 3D convolutional filters to 32, 64, and 64 for three 3D CNN layers, respectively. The LSTM gates have spatial-temporal feature information and also follows these three layers. The gate controls the flow of spatial-temporal features with the kernel (2,2,3). The max-pooling layer and dropout layer parameters are like those for the NYCBike dataset. In the spatial-temporal CNN block, we adopt the residual fusion mechanism. Evaluation metrics: We use root mean square error (RMSE) in the evaluation.