All projects

Early Student Dropout Prediction

Team of 3 · BINUS · Streamlit app + course research paper

Can dropout risk be flagged at enrollment, before first-semester grades exist?

  1. Read the profile
  2. Estimate the risk
  3. Compare to the threshold

The app's default profile

Marital status
Single
Study program
Biofuel Production Technologies
Previous qualification
Secondary education
Mother's education
Secondary education
Father's education
Secondary education
Displaced student
No
Special needs
No
Gender
Female
Age at enrollment
18
International
No

34.0%Estimated dropout probability

Review threshold 40%

Below the threshold: not flagged.

Walkthrough of real model output. Random Forest, live app, 4 Oct 2026.

My role
Trained the app's model; charts and editing for the paper.
Team
3 students: Saladin Zhalifunnas Ahfar, Michael Hendrilie, Valentino Allen Prasetyo. Supervisors: Rifqi Alfinnur Charisma, Henry Lucky
Stack
scikit-learn, XGBoost, Streamlit

Problem

Universities usually see dropout risk only after first-semester grades arrive. We tested how early that risk can be flagged.

Data: the UCI “Predict Students’ Dropout and Academic Success” dataset (Realinho et al., 2022). We removed the “Enrolled” class, leaving 3,630 records: 2,209 Graduate and 1,421 Dropout.

Approach

The project has two parts, and their numbers differ because the setups differ. The app uses 10 enrollment-time features and a threshold tuned for recall. The paper uses only pre-acceptance variables, an 80:20 split and SMOTE on the training data.

Part A: EarlyDrop app

A Streamlit screening tool. We compared five pipelines (Random Forest, Extra Trees, SVM with an RBF kernel, logistic regression and gradient boosting) and chose Random Forest, with the decision threshold set to 0.40 for recall.

It uses no semester data, so nothing from after enrollment leaks into the prediction. The code has unit tests.

Part B: Research paper

“Early Student Dropout Prediction Using Pre-Acceptance Variables with Gaussian Naive Bayes and XGBoost.” Course paper (unpublished), Research Methodology in Computer Science (COMP6696), BINUS, June 2026.

We compared Gaussian Naive Bayes and XGBoost in two feature settings: Background-Only and Background-Application.

EarlyDrop in Streamlit: an example student profile assessed as lower risk, 34.0% estimated dropout probability against a 40% review threshold
EarlyDrop app · example profile, live app captured 4 Oct 2026

Results

EarlyDrop app

High recall has a cost. With precision at 0.537, roughly 46% of flagged students in the test set did not drop out.

Research paper

Gaussian Naive Bayes reached recall of 0.94 to 0.97 but precision below 0.40, so it over-flags. Pre-acceptance data gives a useful but moderate early signal.

EarlyDrop app, test set (Random Forest, threshold 0.40)
MetricValue
Recall0.838
Precision0.537
F10.655
ROC-AUC0.775
Accuracy0.654
Research paper, XGBoost with Background-Application features
MetricValue
Accuracy0.733
Precision0.651
Recall0.683
F10.667
Bar chart of the ten most important XGBoost features in the Background-Application setting
Fig. 2. Top-10 XGBoost feature importance (Background-Application). Chart by Allen.
Distribution of predicted dropout probabilities for Graduate and Dropout students
Fig. 3. XGBoost prediction probability distribution. Chart by Allen.

What I did

Paper (CRediT roles): Investigation, Visualization, and Writing: review and editing. I produced the research visualizations: the model comparison, the Top-10 XGBoost feature-importance chart (Fig. 2) and the prediction-probability distribution (Fig. 3).

App: model training and threshold tuning (commits are under Saladin's account because training ran on his machine).

Limitations

EarlyDrop is decision support. Every flag needs human review before anyone acts on it.

Both parts use one public dataset, so the results may not hold at other universities.

Pre-acceptance data alone gives a moderate signal. The paper's best F1 is 0.667.

EarlyDrop app

Research paper

Next project

Next project: FootFit