# Semi-Supervised GNSS Scintillations Detection Based on DeepInfomax
## 5 Overview of Functioning and System Description  
As mentioned earlier, one of our goals is to be able to harvest the information contained in the temporal correlation among features. For this reason, we consider as input of the system sliding windows of a multivariate serie \(X_{n}\) built as described in Section 4. The input multivariate time series has thus cardinality equal to 10, or, in neural network language, the number of input channels is 10. If we denote the sliding window size as \(N_{win}\), we can formally define the input as the \([10\times N_{win}]\) matrix :  
\[X_{n}= \begin{bmatrix}X_{n-N_{win+1}}^{1}&X_{n-N_{win+2}}^{1}&\dots&X_{n-1}^{1 }&X_{n}^{1}\\ \dots&\dots&\dots&\dots&\dots\\ X_{n-N_{win+1}}^{10}&X_{n-N_{win+2}}^{10}&\dots&X_{n-1}^{10}&X_{n}^{10}\\ \end{bmatrix} ^{T}, \tag{1}\]  
where \(n\) is the last time instant of the window and \(X^{j}\) is the \(j_{th}\) feature We decided to use a causal time window such that the method could be applied to a real-time detection scenario. We allow for a delay, such as in a post processing application, and define the window as \[X_{n}= \begin{bmatrix}X^{1}_{n-\left(\frac{N_{min-1}}{2}\right)}&\cdots&X^{1}_{n}& \cdots&X^{1}_{n-\left(\frac{N_{min-1}}{2}\right)}\\ \cdots&\cdots&\cdots&\cdots&\cdots\\ X^{10}_{n-\left(\frac{N_{min-1}}{2}\right)}&\cdots&X^{10}_{n}&\cdots&X^{10}_{n- \left(\frac{N_{min-1}}{2}\right)}\end{bmatrix} ^{T}. \tag{2}\]  
The performance will improve. Notice that in terms of coding the change is trivial with respect to what we implemented, a simple offset in the indexing is sufficient to switch between the two modalities. Notice also that for this second implementation \(N_{min}\) must be odd. In this work, we consider the first variant and select \(N_{min}=64\). To test the performance of the proposed method, the entire dataset is split into a training part (90%) and a testing part (10%), using the same procedure as in [11]. During training, the sliding windows are processed and compressed according to a variation of DeepInfomax scheme [21] (highlighted in Section 3 and expanded in Appendix A) that produces a feature vector. As previously introduced, this first stage of training is completely unsupervised and, for our application, the purpose of this process is to create the lower cardinality equivalent feature vector that will be used as input of the classifier. To make the picture clearer, the cardinality of the raw input is the size to the 10-dimensional sliding windows, i.e., \(10\times N_{win}=640\), while, in this work, we found that a well performing feature vector cardinality (\(|F|\)) is 20. Thus, for all the time instants for which the scintillation label is available, a classifier is trained with the corresponding feature vector. Notice that the training of compression scheme and classifier is jointly performed end to end using backpropagation. Figure 5 depicts the global architecture of the system used during training. In the spirit of focusing on the important high level description of the method, all the details related to actual networks architectures and optimizer details are relegated to Appendix B. As anticipated, the first part of the scheme is related to the unsupervised feature extraction, while the second part is devoted to classification of labeled datapoints. The whole procedure can be summarized as follows, considering a batch based training:  
1. A batch of input time windows \(\{X_{r}\}\) is is sampled from the training set. 2. The inputs are processed by a first convolutional neural network \(e^{1}_{\eta}(\cdot)\) and a first level compression is performed, generating variables \(\{H_{r}\}\). 3. Through \(e^{2}_{\beta}(\cdot)\), a second neural network with both convolutional and fully connected layers, the final features \(\{F_{r}\}\) are built. 4. Starting from this point of the computation chain, three different parallel processes are performed: 1. **classification** of features \(\{F_{r}\}\) to determine whether a given time instant \(r\) corresponds to scintillation.