## 3 Research Methodology
### Decision Trees (DTs)  
DTs consist of the nodes for classes, leaf nodes for subclasses or objects, lines for relationships among classes or objects, and branches for attribute values. DT models take data as inputs. They create different classes, giving each class a value under the condition of \"if-then-else\" rule. Data consists of features with properties and instances. DTs distinguish and represent nodes using dataset attributes, creating branches that consist of attribute values. The upper or first node on the top of the DT refers to the super-class which includes all subclasses demonstrated as the tree leaves. Each node conducts separate tests for each branch value, predicting a result that it stores and compares with the other branches' results. Every branch can have different values. The branches represent the different values the DTs can predict [21; 22]. The classification process follows a process of separating datasets into three different subsets, including the training (70% of the total dataset size), validation (20%), and testing sets (10%). Following the DTs model, it uses the biggest (training set) to generate a hypothesis, and then it predicts the percentage of correctly classified examples over the false in the validation set. Depending on the number of folds (iterations), the classification process is repeated while the training set size is altered. The testing set is used to test the results using new data. A non-pruned DTs classifier was deployed to show the full depth of the tree, while a pruned DTs classifier was used to eliminate the phenomenon of overfitting, which occurs when the training of the tree reaches a deep level of values prediction, and the training set has no more data to continue the classification. To avoid this from occurring, the tree guesses relationships between the nodes. Overfitting is also caused by the deep level of classification where the noise is increasing, and the prediction accuracy starts decreasing. The pre-pruning stops the tree growth before the tree reaches a level of perfect classification. Post-pruning starts pruning the tree branches after the overfitting has occurred [21; 22]. This study utilized binary decision trees (BDTs) to keep simplicity and interpretability, as each split demonstrates a straightforward binary decision. Binary decision splits also minimize computational complexity, allowing the use of the model for more applications. While BDTs were efficient for this type of data, future research will expand to multiple ways splits to assess their affection on classification accuracy levels, DT depth, and interpretability [21; 22]. Cross-validation refers to the evaluation process of the hypothesis of predicting unknown values. From the complete example set, a small part of the examples is used to test the predictability of the rest part of the examples. In each run, different small parts repeatedly follow the same procedure. The small sample part operates as a validation set, and the rest of the combined examples are used as the training set. This small part of the examples set is stored, and after repeating (folds) the same steps for different combinations of examples of the training set, an average value out of the sum of the results will be calculated [22; 23; 24]. The Shannon function measures the overall relation of a feature, considering its consistency with the existing knowledge. The mathematical formula is expressed in bits, where \(I(P(u_{1}),\dots,\ P(u_{n}))\), refers to the amount of information gained by splitting the dataset according to the features of \(P(u_{1}),\dots,\ P(u_{n})\), \(P(u)\) refers to the proportion of the dataset addressed to each class after the split, and \(P(u_{i})\) refers to the statistical probability of the possible answer (\(u_{i}\)) [24; 25].