# Effective Bus Travel Time Prediction System of Multiple Routes: Introducing PMLNet Based on MDARNN
## 4 Results and Discussion
### Model Training  
As mentioned in Section 3.1.3, two basic models, namely LSTM and the proposed MDARNN, are employed in this study. The model selection is task-specific. For Current Driving Segment Travel Time and Transfer Point Waiting Time, locally-driven many-to-one prediction tasks, LSTM is adopted, as it efficiently captures short-term dependencies. For Bus Stop Dwelling Time and Stop-to-Stop Travel Time, which involve long-term dependencies and require integration of local factors in many-to-many predictions, MDARNN is utilized. Its attention mechanisms effectively filter local features, rendering it suitable for addressing the complexity of long-sequence tasks. The corresponding parameter settings are described as follows. * Number of input features: 55 features in total, comprising 7 macro impact factors and 48 local impact factors;
* Encoder hidden layer length: 20 units;
* Decoder hidden layer length: 30 units;
* Time step: 5;
* Batch sizes: 160;
* Initial learning rate: 0.006. * Number of input features: 55 features in total, comprising 7 macro impact factors and 48 local impact factors;
* Number of Neurons: 160 units; \begin{table}
\begin{tabular}{l c c c c} \hline \hline \multirow{2}{*}{**Dataset**} & \multirow{2}{*}{**Total Number of Data**} & \multirow{2}{*}{**Training Dataset**} & \multirow{2}{*}{**Verification Dataset**} & \multirow{2}{*}{**Testing Dataset**} \\  & **(Million)** & & **(Million)** & & **(Million)** \\ \hline \(D_{CDSTT}\) & 13.444 & 8.064 & 2.688 & 2.688 \\ \(D_{BSDT}\) & 7.3 & 4.38 & 1.46 & 1.46 \\ \(D_{SSTT}\) & 10.70 & 6.42 & 2.14 & 2.14 \\ \(D_{TPWT}\) & 0.096 & 0.0576 & 0.0192 & 0.0192 \\ \(D_{PMLNet,T}\) & 4.2 & - & - & 4.2 \\ \hline \hline \end{tabular}
\end{table} 
Table 6: The corresponding results of the dataset partition. * Full connection layer neurons (Current Driving Segment Travel Time module): 10 units;
* Full connection layer neurons (Transfer Point Waiting Time module): 3 units;
* Batch sizes: 160;
* Initial learning rate: 0.006. As shown in Table 7, for the parameter settings of four modules, the initial value of the step size is set to 0.006, and the dynamic adjustment of the learning rate and the updates to the network's weights and biases are executed using the Adam optimizer. Each of the modules undergoes 100 epochs of training, where every epoch encompasses 160 instances for training purposes. All four modules utilize the mean absolute error (MAE) as their loss function and employ the Adam optimizer to minimize the MAE. This approach is used to search for the combination of parameters that minimizes the loss function on the training set. The details of the algorithm are shown in Algorithm 3, while the corresponding explanation is provided in Table 8.  
```
Input:\(s,r,\varepsilon,\rho_{1},\rho_{2},\sigma\) Output:\(\theta\)
1\(s,r\gets 0\);
2\(\varepsilon\gets 0.006\);
3\(\rho_{1}\gets 0.9\);
4\(\rho_{2}\gets 0.999\);
5\(\sigma\gets 10^{-8}\);
6 while\(\theta\) not convergeddo
7 sample \(\{x^{(1)},\dots,x^{(m)}\},y^{(l)}\);
8\(g\gets get\_gradients(m,\theta,x^{(l)},y^{(l)})\);
9\(s\leftarrow\rho_{1}s+(1-\rho_{1})g\);
10\(r\leftarrow\rho_{2}r+(1-\rho_{2})g\odot g\);
11\(\hat{s}\leftarrow\frac{s}{1-\rho_{1}^{2}}\);
12\(\hat{r}\leftarrow\frac{r}{1-\rho_{2}^{2}}\);
13\(\theta\leftarrow\theta-\varepsilon\frac{g}{\sqrt{\hat{r}+\sigma}}\);
14
15 end while return\(\theta\)
```  
**Algorithm 3**Adam Algorithm