# A Novel Approach to Multi-Provider Network Slice Selector for 5G and Future Communication Systems
## 6 Experimental Evaluation
### Data Analytics  
In the traditional data analysis process, falling in love with the dataset is a part of the first step. Hence, to know and to prepare the data for the mining process, we conducted the tasks of data pre-processing as follows:  
1. Simulation data collection;
2. Data selection;
3. Data purification;
4. Dataset construction. Algorithm 1 details the process discussed above. The experiment considered six attributes organized in the datasets. However, the network provider can add metrics to suit different scenarios as long as it can collect data from the network. To validate this principle, two other criteria were added to the dataset, namely reliability and distance. These, in turn, were randomly generated, respecting a pre-defined interval within what normally exists in real scenarios according to the 3 GPP TS 22.186 V16.2.0 and 3 GPP TS 22.261 V16.14.0 specifications [82; 83]. Thus, the default dataset now has the following attributes:  
1. Latency: End-to-end delay;
2. Jitter: Delay variation;
3. Loss: Packets loss;
4. Bandwidth: Number of bits per second (Mbps);
5. Transfer: Amount of data transferred (sent);
6. UE: User Equipment, not used in the model building process;
7. Experiment: experiment id, not used in the mining process;
8. Distance: Shortest path between UE and Edge;
9. Reliability: Capacity network is functional without interruption. In the pre-processing step, the data are analyzed regarding the type and interval; treatments such as normalization are commonly applied to the records in this phase. The occurrence of treatment and normalization actions applied to the records is common. The data can thus come to serve and adapt to the input pattern of the data mining algorithm used future steps. In order to recognize the data, for illustration purposes, Figure 7 presents the network metrics. Note that data were normalized using the _MinMaxScaler_ method from the Sklearn library [84]. The mining process used the K-Means classification or grouping algorithm that uses numerical data. The \"protocol\" metric is not used because of the distance-based K-Means \begin{table}
\begin{tabular}{c c c c c} \hline \hline
**Slice**1 & **Type** & \
\begin{tabular}{c} **E2E Latency** \\ **(ms)** \\ \end{tabular} & **Reliability (\%)** &
\begin{tabular}{c} **Data Rate** \\ **(Mbps)** \\ \end{tabular} \\ \hline
1 (VN N1 \(\rightarrow\) N4) & Remote & 5 (maximum) & 99.999 (minimum) &
\begin{tabular}{c} DL: 1 \\ (minimum) \\ UL: 25 \\ (minimum) \\ \end{tabular} \\ \hline
2 (VN N2 \(\rightarrow\) N5) & \
\begin{tabular}{c} Rural \\ Macro \\ \end{tabular} & Not specific & Higher than 80\% &
\begin{tabular}{c} DL: 50 \\ UL: 25 \\ \end{tabular} \\ \hline
3 (VN N3 \(\rightarrow\) N6) &
\begin{tabular}{c} Wireless \\ Road-Side \\ Infrastructure \\ Backhaul (ITS) \\ \end{tabular} & 30 (max.) & 99.999 & 10 \\ \hline \hline \end{tabular}  
* VN: Virtual Network; DL: Downlink; UL: Uplink.  
\end{table} 
Table 3: Technical specification for slices composition. Based on [82; 83]. characteristics. The learning process now considers only the attributes relevant to the experiment: [\"Latency\", \"Jitter\", \"Loss\", \"Bandwidth\", \"Transfer\", \"Distance\", \"Reliability\"]. Clustering performs data analysis to recognize the group behavior of the data so that an element is characterized in one group and differs from the other groups. The K-Means k indicates how many groups are separable in the dataset. One technique to find the correct value of k for a given set is to apply the Elbow Plot Method by calculating the sum of the Root Mean Square Error (SSE). The Elbow point occurs when the SSE starts to decrease linearly. Thus, in the dataset used, the appropriate k is 3, as shown in Figure 8, with the SSE for k from 1 to 8. Finally, assuming a k equal to 3, the learning and training process occurs with the separation of elements into three groups that characterize each slice. The next step to data mining is analysis, which seeks to understand the results.