## 3 Methodology  
### Artificial Neural Network  
Artificial neural networks (ANNs) are computing systems whose working principles are inspired by biological neural networks, which are constituents of a nervous system and contain a great number of interconnected nerve cells. The back-propagation neural network (BPNN) is a feed forward ANN using the back-propagation learning algorithm proposed by [PERSON] et al. [42] and [PERSON] et al. [43] and has been proved to be efficient and effective in predicting ground settlements [31; 44; 45].  
As shown in Figure 1, a general BPNN model consists of three layers: an input layer, a hidden layer, and an output layer. Each layer includes a set of neurons, and each neuron in the hidden layer or the output layer is connected to all neurons in the previous layer. The learning process of a BPNN consists of two steps: forward propagation of signal and back propagation of error [46]. In the forward propagation, input signal \(\mathbf{X}=(x_{1},x_{2},\ldots,x_{i},\ldots x_{m})^{T}\) enters the input layer, propagates forward through the hidden layer to form hidden layer signal \(\mathbf{H}=\big{(}h_{1},h_{2},\ldots,h_{j},\ldots h_{l}\big{)}^{T}\), and finally appears at the output layer as an output signal \(\mathbf{Y}=(y_{1},y_{2},\ldots,y_{k},\ldots y_{n})^{T}\). Connections between adjacent layers can be formulated by the following equations:  
\[h_{j}=f\Big{(}\sum_{i=0}^{m}v_{ij}x_{i}+a_{j}\Big{)},\;j=1,2,\ldots,l \tag{5}\]  
\[y_{k}=f\Big{(}\sum_{j=0}^{l}w_{jk}h_{j}+b_{k}\Big{)},\;k=1,2,\ldots,n \tag{6}\]  
where \(\mathbf{V}=\begin{bmatrix}v_{11}&\ldots&v_{1l}\\ \ldots&v_{ij}&\ldots\\ v_{m1}&\ldots&v_{ml}\end{bmatrix}\) are weights of links between the input layer and the hidden layer; \(\mathbf{W}=\begin{bmatrix}w_{11}&\ldots&v_{1n}\\ \ldots&w_{jk}&\ldots\\ w_{l1}&\ldots&w_{lm}\end{bmatrix}\) are weights of links between the hidden layer and the output layer; \(\mathbf{A}=\big{(}a_{1},a_{2},\ldots,a_{j},\ldots a_{l}\big{)}^{T}\) and \(\mathbf{B}=(b_{1},b_{2},\ldots,b_{k},\ldots b_{n})^{T}\) are biases associated with neurons in the hidden layer and the output layer, respectively; the transformation function \(f(x)=\frac{1}{1+e^{-x}}\) is a unipolar Sigmoid function to transmit signal from the input layer to the hidden layer, and from the hidden layer to the output layer.  
After obtaining the output signal, it is compared to the target output signal \(\mathbf{D}=(d_{1},d_{2},\ldots,d_{k},\ldots d_{n})^{T}\). Consequently, an error signal of the output layer \(\mathbf{E}=(e_{1},e_{2},\ldots,e_{k},\ldots e_{n})^{T}\) is generated if the output signal is inconsistent with the target output signal, and \(e_{k}\) is calculated by Equation (7):  
\[e_{k}=d_{k}-y_{k},\;k=1,2,\ldots,n\]Furthermore, the error signal of the hidden layer \(G=\left(g_{1},g_{2},\ldots,g_{j},\ldots g_{n}\right)^{T}\) is calculated by Equation (8):  
\[g_{j}=\frac{d\left(h_{j}\right)}{dx}\sum_{k=1}^{n}w_{jk}e_{k} \tag{8}\]  
Next, the error signal will be propagated backward through the hidden layer to the input layer to adjust weights, i.e., \(\mathbf{V}\) and \(\mathbf{W}\), and biases, i.e., \(\mathbf{A}\) and \(\mathbf{B}\), in Equations (5) and (6) using the following equations:  
\[v^{\prime}_{ij}=v_{ij}+\beta g_{j}h_{j} \tag{9}\]  
\[a^{\prime}_{j}=a_{j}+\beta g_{j} \tag{10}\]  
\[w^{\prime}_{jk}=w_{jk}+\beta e_{k}d_{k} \tag{11}\]  
\[b^{\prime}_{k}=b_{k}+\beta e_{k} \tag{12}\]  
where \(\beta\) is the learning rate. A BPNN learns about the relationships between the input signal and the output signal through this iterative process, and theoretically, the BPNN becomes more knowledgeable about such relationships after each iteration. The learning process will continue until the error signal of the output layer is smaller than the maximum permissible error.