## 3 Environmental Applications of the Tool and Results
### Importance and Roles of the Causal Variables (Pruning)  
The first example we present follows the discussion in [7]. There, the problem was to understand the importance and role of climatic influences on human migration from the Sahel Belt to Italy in the period 1995-2009. The data available for this analysis in our dataset were the annual flows of migrants from the ten Sahel countries to Italy (our target to be reconstructed by means of the NN model using climate data) and the data of direct and indirect climatic influences (our inputs). In particular, the latter were the annual mean temperature, annual mean cumulated precipitation, number of hours with a temperature higher than 30 \({}^{\circ}\)C during the growing season of crops, and, finally, cereal yields, which represent an indirect climate effect, as they are themselves influenced by the climate. We built a dataset composed of the annual patterns of four inputs and one output for each country. The application of our tool led to several interesting results. Firstly, the reconstruction of migration data (using our non-linear neural model and climatic data as inputs) led to an explained variance close to 80% in terms of the ensemble mean performance, whereas the analogous linear multiple regression stopped at just over 60% (see Table 1 below). In Figure 2, we show a graphical view of the NN outputs in terms of the logarithm of the migration rate, defined as the annual migration flow from the origin country to Italy divided by the population of the country of origin in the same year. Given the lack of more social variables in our dataset that may have an influence on migration, the neural result surely looks good. Furthermore, the big difference in the explained variances of the NNs and multilinear regression already shows that the relationship between our inputs and the target is highly non-linear. But is it possible to quantify the role of the individual input variables in the reconstruction of the target? In a linear model, their weight can be identified through the coefficients associated with the individual variables in the multiple regression. In a neural model, following this path--via the evaluation of the weights associated with the connections--is much more complicated and often does not lead to reliable results. Therefore, in our tool's applications, we follow a different path: that of pruning (or attribution, see later). \begin{table}
\begin{tabular}{c c c c} \hline \hline
**Inputs** & **Target** & **NN (R2)** & **Multilinear (R2)** \\ \hline Prec.—temp.—\# hours T \textgreater{} 30 \({}^{\circ}\)C—yield & ln(MigRate) & 0.775 & 0.626 \\ Prec.—temp.—\# hours T \textgreater{} 30 \({}^{\circ}\)C & ln(MigRate) & 0.671 & 0.611 \\ Prec.—temp.—yield & ln(MigRate) & 0.683 & 0.632 \\ Prec.—\# hours T \textgreater{} 30 \({}^{\circ}\)C—yield & ln(MigRate) & 0.361 & 0.085 \\ Temp.—\# hours T \textgreater{} 30 \({}^{\circ}\)C—yield & ln(MigRate) & 0.715 & 0.447 \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Performance (in terms of R2) of migration rate estimation by NNs (ensemble means) and multilinear regressions for the complete runs and for pruned models (from [7]). Pruning means that we exclude the input variables in turn from the input layer and run the NN models again with more little networks, in order to test which inputs have a dominant role in achieving a correct estimate of the observed target data. The greater the decrease in performance when we extract a variable from the input, the more that variable 'drives' the behaviour of the target. In the meantime, by also pruning the linear model, we are able to investigate and identify specific linear and non-linear influences, too. If, when we remove a variable, the performances of the NNs and multilinear regressions become similar (and those of the multilinear model possibly change very little), then that variable plays an important non-linear role.