## 2 Materials and Methods
### Machine Learning Approach  
The role of machine learning approaches in volcanic seismology has widely increased in the last decades, especially with the constantly increasing volumes of seismic data and the limitations of manual classification [52]. Volcano-seismic signal classification is a crucial component of volcanic monitoring, accomplished by using several ML methods, such as multi-layer perceptrons [29; 30; 34], cluster analysis [53], self-organizing maps [32], support vector machines [54], and even Bayesian belief networks for assessing the seismic soil liquefaction potential [55; 56; 57]. A crucial role has been played by the multi-layer perceptrons, widely employed for earthquake prediction [26; 58]. It is a feed-forward neural network, consisting of three layers: an input, hidden, and output layer. Data flow forward from the input layer to the output layer. The neurons are fully connected; that is, each node in one layer is connected to each node in the next layer. An arbitrary number of hidden layers, placed between the input and output layers, form the computational engine of the MLP. The neurons of the MLP are trained with the back-propagation algorithm, which modifies the internal state to reduce the error between the model output and the expected output. MLPs are designed to approximate any continuous function and can solve nonlinearly separable  
Figure 2: Map of Colima volcano with the seismic stations (magenta circles) (map data ©2021 Google). problems. The need to process an increasing volume of data, with no degradation in terms of efficiency, finds in the deep neural networks (DNNs) an effective predictive model with multiple hidden layers between the input and output. DNNs can discover intrinsic patterns within large datasets and fine-tune their internal parameters in each layer using the back-propagation algorithm. In volcanic seismology, MLPs have been widely used for classification of seismic events, although recent studies have focused on specialized deep neural networks, such as convolutional neural networks [34] or recurrent neural networks [31], capable of processing large amounts of seismic data; in particular, CNNs have found wide use for earthquake detection [59] or classification of seismic events [34]. In the light of these observations, the workflow in Figure 3 sketches the overall process to automatically classify the background noise signals. Figure 3: Workflow of the ML process. Figure 3 shows the dataflow of our high-level processing for noise background classification. The raw data, i.e., the background seismic signals from the presented volcanoes, are preprocessed, splitting it into separate time windows lasting 24 s (20 s devoted to the event signal and 4 s due to the overlapping windows). Due to the different types of acquisitors gathered from the stations, the raw signals were resampled at 100 Hz to get the sample normalization. This normalization process is described in [34]. The samples are separated into two parts: one for ML model training and validation and the other part called _unlabeled data_ is the unseen signals that will be classified by the ML model once trained. Then, depending on the ML model employed, the normalized raw data (_labeled data_) are further processed or not, before being given as input to the model. Precisely, in the case of the MLP model, the data are preprocessed by linear predictive coding (LPC) filtering, which is widely used for signal processing [60; 61] to extract relevant features, while in the CNN approach, the raw data are input. Similarly, the _unlabeled data_ may be preprocessed or not, depending on the classification model selected. Therefore, in Figure 3, LPC filtering must also be performed on the _unlabeled data_ if they are given as input to the MLP model. The _labeled data_ are validated by (stratified) k-fold cross-validation, to guarantee a reliable and robust classification model. Cross-validation, indeed, allows for improving the flexibility of a model and thus the performance of the proposed model.