# Fidex and FidexGlo: From Local Explanations to Global Explanations of Deep Models +
## 4 Experiments with Tabular Data
### Learning Parameters and Assessment Measures  
The following models were used in this work:  
* DIMLP ensembles trained by bagging (DIMLP);
* Quantized support vector machines (QSVM);
* Random forests (RF);
* Shallow decision trees trained by gradient boosting (GB);  
To train the DIMLPs, the data were normalized using Gaussian normalization. Specifically, during cross-validation trials, the means and standard deviations of each variable were calculated for the training datasets, and then these values were used to normalize the training data and the testing data. Normalization was not applied to the training of ensembles of DTs (RF and GB) as this is not necessary. For the QSVMs, the normalization was encoded in the weight values of the first layer (see Section 3.2), which was frozen during training. Finally, for each training phase, the seed value was that of the process assigned by the Linux operating system.  
In the experiments, we tested two different architectures with DIMLPs. The first has a single hidden layer with a number of neurons equal to the number of inputs. In the second  
\begin{table}
\begin{tabular}{c c c c c} \hline \hline
**Dataset** & **\#Samp.** & **\#Attr.** & **Attr. Types** & **Maj. Class (\%)** \\ \hline Breast Cancer & 683 & 9 & int. & 65.0 \\ Divorce & 170 & 54 & bool. & 50.6 \\ Iris & 150 & 4 & real & 33.3 \\ Ionosphere & 351 & 34 & int., real & 64.1 \\ \hline \hline \end{tabular}
\end{table}
Table 1: Datasets used in the experiments. From left to right, the columns designate the number of samples, number of input features, type of features (boolean, categorical, integer, real), and the proportion of samples in the majority class.  
architecture, we added a second hidden layer of ten neurons to each DIMLP. All DIMLP ensembles had 25 networks. The unfrozen layers of QSVMs were trained with the Scikit Python library [42]. Specifically, we used default learning parameters with two different kernels: the linear kernel and the RBF kernel. Ensembles of 100 DTs were also trained using the Scikit Python library. For RFs, we configured trees of depth ten or unconstrained depth, while for GBs, we used shallow trees of depth one or three. DIMLPs were trained by back-propagation with default learning parameters:  
* Learning parameter = 0.1;
* Momentum = 0.6;
* Flat spot elimination = 0.01;
* Number of steps in the staircase activation function = 50.  
Finally, out-of-bag samples were used with DIMLPs to avoid the overtraining phenomenon by applying an early-stopping technique [43]. Specifically, the out-of-bag set is a subset of the training data that is used not to adjust the weights of the neural networks but to decide when to stop training. To generate propositional rules, the Fidex parameters were as follows:  
* \(\mu=2\) (minimal number of samples in the final rules);
* \(\rho=20\) (maximal number of Fidex steps);
* \(\phi=100\%\) (fidelity of the rules);
* \(p=0\) (dropout of input variables);
* \(q=0\) (dropout of hyperplanes).  
With prediction accuracy being defined as the ratio of correctly classified samples to the total number of samples of a testing set, the columns in the following Tables designate, from left to right, the following information:  
* average prediction accuracy of the model in the testing set divided by the number of samples;
* average fidelity on the testing set, which is the degree of matching between the generated rules and the model. Specifically, with \(P\) samples in the testing set and \(Q\) samples for which the classification of the rules corresponds to the classification of the model, fidelity is \(Q/P\).
* average prediction accuracy of the rules;
* average prediction accuracy of the rules when rules and model agree. Specifically, it is the proportion of correctly classified samples among the \(Q\) samples defined above.
* average number of extracted rules;
* average number of rule antecedents.