## 4 Experiments and Results
### Feature Importance  
We calculated the importance of features using three models: Logistic Regression (LR), Support Vector Machine (SVM) with a linear kernel, and Random Forest (RF). Each model provided a different method for estimating feature importance. \begin{table}
\begin{tabular}{c c c} \hline \hline \multirow{2}{*}{**Approach**} & \multirow{2}{*}{\(\text{CWA}_{U}\)} & \multicolumn{2}{c}{**F1-Score**} \\ \cline{3-4}  & & **B + P** \\ \hline \multirow{4}{*}{SingleModel@40} & 20\% & 0.73 \\  & 40\% & 0.86 \\ \cline{1-1}  & 60\% & 0.85 \\ \cline{1-1}  & 80\% & 0.83 \\ \hline \multirow{4}{*}{IndividualModel@k} & 20\% & 0.78 \\ \cline{1-1}  & 40\% & 0.86 \\ \cline{1-1}  & 60\% & 0.89 \\ \cline{1-1}  & 80\% & 0.92 \\ \hline \hline \end{tabular}
\end{table} 
Table 6: Comparative results of the single model against individual models at different \(\text{CWA}_{U}\). In logistic regression, we computed feature importance based on the coefficients associated with each feature. The model predicts the probability of the target class using the following expression:  
\[P(y=1|\mathbf{x})=\frac{1}{1+e^{-(w_{0}+\sum_{i=1}^{N}w_{i}x_{i})}} \tag{1}\]  
where \(\mathbf{x}=[x_{1},x_{2},\ldots,x_{N}]^{T}\) are the input features, \(w_{0}\) is the intercept, and \(w_{i}\) represents the coefficient (weight) for feature \(x_{i}\). The feature importance corresponds to the absolute value of each coefficient, \(|w_{i}|\), with larger magnitudes indicating greater feature influence. We derived the feature importance from the weight vector \(\mathbf{w}\), which defines the decision boundary for the support vector machine with a linear kernel. We expressed the decision function as:  
\[f(\mathbf{x})=\mathbf{w}^{T}\mathbf{x}+w_{0}=w_{0}+\sum_{i=1}^{N}w_{i}x_{i} \tag{2}\]  
where \(w_{i}\) is the weight assigned to each feature \(x_{i}\), and \(w_{0}\) is the bias term. The importance of each feature is given by the absolute value of the corresponding weight, \(|w_{i}|\), where larger values denote a more significant impact on the model's decision-making. For the random forest model, we computed feature importance by measuring the mean decrease in impurity (Gini importance). We split the data at different features to reduce impurity (e.g., Gini index or entropy) at each node. We based the importance of each feature on the average reduction in impurity when that feature was used for splitting across all trees in the forest:  
\[I_{i}=\sum_{i=1}^{T}\frac{\Delta I_{t}(x_{i})}{T} \tag{3}\]  
where \(I_{i}\) is the importance of feature \(x_{i}\), \(\Delta I_{t}(x_{i})\) is the decrease in impurity for feature \(x_{i}\) in tree \(t\), and \(T\) is the total number of trees. To ensure the robustness of our results, we calculated the importance of features using 10-fold cross-validation. We compute feature importance for all models for each fold, then average the values across the ten folds to obtain a stable estimate of feature importance. Finally, to compare the relative importance of each feature, we used a min-max normalization, assigning the most important feature a value of 1 and the least important a value of 0. This normalization allows us to compare feature importance across different features and models more efficiently, ensuring that the results are interpretable and comparable across various modeling approaches. The feature importance analyses across LR, SVM with a linear kernel, and RF are shown in Figures 9, 10 and 11, respectively, revealing consistent trends in how different types of features relate to student performance. Features associated with student engagement, such as course navigation, forum participation, and navigation activity, consistently exhibited low predictive value across all \(\text{CWA}_{U}\) thresholds.