# Fostering Sustainable Aquaculture: Mitigating Fish Mortality Risks Using Decision Trees Classifiers
## 4 Results
### Decision Tree Mortality Classification  
Figure 2 indicates the initial non-pruned decision tree visualization for fish mortality prediction. Focusing on the DT graph and its implications for classifying outcomes based on various variables, it is imperative to prune the decision tree using pruning techniques in order to avoid overfitting occurring. The bigger the decision tree becomes, the bigger the noise that is generated among the nodes, and the overfitting increases as well. High values of overfitting result in a lower classification accuracy for the classification process. A low classification accuracy leads to insufficient classification (Figure 2) [28; 29]. Figure 3 indicates the final pruned decision tree visualization for fish mortality prediction. The entire process also covers the training process of the DT classifier, including the preprocessing steps, pruning, and model evaluation using a 10-fold cross-validation. In DTs, each subsequent split aims to increase the homogeneity of the node with respect to the target variable, which, in this context, is likely related to the classes of fish mortality. The Gini impurity is a metric that quantifies the purity of a node, with a lower value indicating  
Figure 1: Correlations between the “Deaths” and other factors. Fish mortality is not represented. \begin{table}
\begin{tabular}{c c} \hline \hline
**Model** & **Value** \\ \hline Decision trees & 95.43\% \\ Logistic regression & 95.42\% \\ K-nearest neighbors (KNN) & 94.74\% \\ Naive Bayes & 95.30\% \\ \hline \hline \end{tabular}
\end{table} 
Table 8: Decision Tree accuracies. a higher purity. The \"value\" arrays give insight into the composition of the classes at each node, showing how many samples fall into each class. The class with the majority within each \"value\" array dictates the predicted class for that node or the further splitting rule if the node is not a terminal leaf node (Figure 3) [28; 29]. Figure 4 represents the root node of the decision tree while splitting, based on the feature \"MAB\" at a threshold of 111.85. The Gini impurity at this node is 0.088, suggesting a reasonable level of purity among the samples with respect to the target variable. The node is responsible for a significant number of samples, specifically 26,042, and these samples are distributed across various classes as indicated by the \"value\" array [45; 97; 217; 832; 24; 851]. This distribution suggests that the majority of the samples at this node fall into the last class  
Figure 3: Entire pruned decision tree representation for fish mortality prediction. Figure 2: Initial non-pruned decision tree representation for fish mortality prediction. represented in the \"value\" array. From this root node, the decision tree further branches into two child nodes: The left child node is the result of the condition \(\text{MAB}\leq 111.85\). At this node, the Gini impurity is slightly higher than the root node, which is 0.245, indicating that the samples are less pure with respect to the target variable compared to the root node. The samples are divided among the classes as [28; 76; 149; 546; 5049]. This node will further branch out based on additional conditions. The right child node follows from the condition \(\text{MAB}>111.85\) and splits again at \(\text{MAB}\leq 454.15\). This node has a very low Gini impurity of 0.038, suggesting that the samples at this node are quite homogeneous. There are 20,194 samples at this node, distributed as [17; 21; 68; 286; 19; 802] across the classes. The predominance of samples in the last class indicates a strong majority class presence at this node (Figure 4). Figure 5 represents the root node while splitting on the feature \"MAB\", with a threshold of 25.55. This indicates that the first decision in the tree to separate the data involves checking if the \"MAB\" value is less than or equal to 25.55. The Gini impurity for this node is 0.245, and it contains samples that fall into various classes, as indicated by the \"value\" array.