# An ANN Model Trained on Regional Data in the Prediction of Particular Weather Conditions
## Appendix A Fundamentals of Artificial Neural Networks and the Multilayer Perceptron  
The concept of a neural network is defined by mathematical structures that perform calculations or signal processing by elements called neurons. Neurons are arranged in layers. Signals from each neuron of the preceding layer come to each neuron of the following layer. For predictive purposes, multilayer networks are used, containing a minimum of three layers: the input layer, the hidden layer (this number may be greater), and the output layer. The number of neurons present in the input layer corresponds to the number of input features. Input layer elements do not perform data processing. Their role is to receive signals, i.e., input variables for the network, and then to separate them and pass them on without modifying the neurons of subsequent layers. Hidden layers, i.e., between the input and output layers, may have a different number of neurons. Their number in practice is empirically selected and is an important element influencing the quality of the results. The task of the hidden layer is essentially information processing. The task of the output layer is to process data and generate final output signals, i.e., the network response (predicted values). A Multilayer Perceptron is a unidirectional network that contains one or more hidden layers. In this type of network, the data stream flows in one direction--from the input layer, through the subsequent hidden layers, to the output layer. In the hidden layers and the output layer, a neural model with an aggregation of signals using the scalar product and usually a non-linear activation function \(f\) (sigmoid or tangensoid functions are typically used) as using only a non-linear neural model (with a non-linear activation function) guarantees the possibility to use a Multilayer Perceptron in modeling nonlinear phenomena. Learning takes place in a supervised mode, and the most common is backpropagation or another algorithm. Each input is associated with a parameter called the weight, which is subject to modification during the training phase of the network, while, during its operation, it is constant. If, as \(\mathbf{x}\) is denoted by the \(n\)-elementary vector containing the input signals from the training sequence given to the network input, and, as \(\mathbf{w}\) is an \(n\)-elementary vector with corresponding weighting values, this processing of input signals in a mathematical neuron model is described by a general rule defined by the Formula (A1):  
\[y=f(g(x,w)),\] (A1)where \(f\) means _activate_, while \(g\) means _aggregate_. The output signal, which takes the value of the activation function, is separated and passed on to subsequent neurons or is the final network response. An aggregation function \(g\) in neuron models is most often used for the scalar product of x and w vectors according to the Formula (A2) [87]:  
\[x=x\circ w=\sum_{i=1}^{n}x_{i}w_{i},\text{ }i.e.\text{ }s_{k}=v_{k0}+\sum_{k=1}^{n}v _{ki}\cdot x_{i}.\] (A2)  
This means that the sum of the values of the products of the input signals and the corresponding weights is calculated.