# GlassBoost: A Lightweight and Explainable Classification Framework for Tabular Datasets
## 4 Proposed Method
### Model Compression (Step 3)
The performance metrics from this experiment, along with those from the previous configurations (maximum depths of three and four), are summarised in the first three sections of Table 5.  
A similar trend is observed when the maximum depth is increased to five: performance metrics show no significant improvement beyond including eight features. Moreover, extending the depth from four to five results in only marginal performance gains. The resulting decision tree, with a maximum depth of five, contains 15 leaf nodes, translating to 15 sets of IF-THEN rules in an equivalent rule-based classifier (see Figure 9). However, the performance improvement compared to a decision tree with a maximum  
Figure 8: GlassBoost tree structure (maximum depth of four trained on the top eight features). \begin{table}
\begin{tabular}{l l c c c c c c c c c} \hline \hline  & & \multicolumn{8}{c}{**Number of Features**} \\ \cline{3-11}  & & **1** & **2** & **3** & **4** & **5** & **6** & **7** & **8** & **9** \\ \hline \multirow{3}{*}{**GlassBoost (Maximum depth = 3)**} & **Precision** & 0.9852 & 0.8500 & 0.9480 & 0.9332 & 0.9346 & 0.9723 & 0.9346 & 0.9320 & 0.9320 \\  & **Recall** & 0.6470 & 0.9340 & 0.9385 & 0.9754 & 0.9723 & 0.9803 & 0.9803 & 0.9803 & 0.9803 \\  & **Accuracy** & 0.8687 & 0.9165 & 0.9591 & 0.9658 & 0.9653 & 0.9653 & 0.9653 & 0.9650 & 0.9670 & 0.9670 \\ \hline \multirow{3}{*}{**GlassBoost (Maximum Depth = 4)**} & **Precision** & 0.9962 & 0.8509 & 0.9452 & 0.9908 & 0.9814 & 0.9814 & 0.9912 & 0.9843 & 0.9843 \\  & **Recall** & 0.6388 & 0.9373 & 0.9713 & 0.9385 & 0.9520 & 0.9520 & 0.9433 & 0.9732 & 0.9729 \\  & **Accuracy** & 0.8683 & 0.9287 & 0.9692 & 0.9746 & 0.9761 & 0.9761 & 0.9765 & 0.9866 & 0.9868 \\ \hline \multirow{3}{*}{**GlassBoost (Maximum Depth = 5)**} & **Precision** & 0.9941 & 0.9814 & 0.9899 & 0.9229 & 0.9899 & 0.9896 & 0.9866 & 0.9865 & 0.9865 \\  & **Recall** & 0.6481 & 0.9737 & 0.9696 & 0.9723 & 0.9896 & 0.9896 & 0.9886 & 0.9899 & 0.9899 \\  & **Accuracy** & 0.8712 & 0.9290 & 0.9701 & 0.9872 & 0.9926 & 0.9926 & 0.9911 & 0.9915 & 0.9915 \\ \hline \multirow{3}{*}{**SHAP tree (Maximum depth = 4)**} & **Precision** & 0.9853 & 0.8419 & 0.9333 & 0.9333 & 0.9333 & 0.9333 & 0.9334 & 0.9346 & 0.9346 \\  & **Recall** & 0.6471 & 1.0000 & 0.9755 & 0.9755 & 0.9755 & 0.9755 & 0.9755 & 0.9724 & 0.9724 \\ \cline{1-1}  & **Accuracy** & 0.8688 & 0.9320 & 0.9699 & 0.9659 & 0.9659 & 0.9659 & 0.9659 & 0.9654 & 0.9654 \\ \hline \hline \end{tabular}
\end{table} 
Table 5: GlassBoost performance comparison with different maximum depths and SHAP. depth of four is minimal. Therefore, if explainability is a primary concern, increasing the model's complexity may not be justified for such a slight performance gain. Nonetheless, depending on the specific application and user needs, even a slight enhancement in accuracy might be worthwhile when performance is prioritised over explainability. Investigating the three decision trees reveals the following facts. Each tree begins by evaluating the feature Bwd Packet Length Std with the initial question: \"Is Bwd Packet Length Std less than or equal to 1485.295?\" at the root node. This feature was identified as the most critical for classifying network traffic due to its highest gain score (see Section 4.3). The Gini impurity score for this node is 0.463, indicating the degree of class mixture: a lower Gini score signifies better class separation. The root node contains 32,000 samples (the total training samples), with a distribution of [20,343 11,657]. This means 20,343 samples belong to 'Class 0' (normal traffic), and 11,657 samples belong to 'Class 1' (anomalous traffic). The term class = Class 0 denotes the majority class at this node. The root node branches based on whether the condition (Bwd Packet Length Std \(\leq\) 1485.295) is true or false. Following the 'True' branch indicates the condition is met while following the 'False' branch indicates it is not. Each internal node poses additional questions about other features.