Skip to content

Repository files navigation

Modeling Tuition Status in Higher Education: A Machine Learning Approach Using European Tertiary Education Register (ETER) Data

Overview

This repository documents a machine learning project aimed at predicting the tuition fee status of European higher education institutions. The project uses the European Tertiary Education Register (ETER) dataset and employs an XGBoost classification model. The model classifies institutions into one of three categories: “No Fees,” “Partial Fees,” or “Fees for All Students,” based on a range of institutional characteristics.

The final model achieved an overall accuracy of 96.2% on the test set, demonstrating strong predictive capabilities. This work was undertaken as part of the LPO 7500-01 Machine Learning in Education course.

Abstract from the study: This study develops and evaluates an XGBoost classifier to predict tuition-fee regimes (“No Fees,” “Partial Fees,” and “Fees for All Students”) across European higher-education institutions, using institutional characteristics (legal status, capital and R&D spending, government funding, enrollment figures) drawn from the ETER dataset. After preprocessing (including K-nearest-neighbors imputation) and training on a cross-sectional sample (2018–2021), the model achieved 96.2% overall accuracy. Operationally, this tool can inform policymakers and institutional planners about the key financial and structural drivers of tuition policies. Yet, its cross-sectional design and uneven temporal coverage limit causal inferences, and reliance on KNN imputation may introduce sensitivity to parameter choice.

Project Goal

The primary goal of this project is to develop a robust predictive model that can accurately classify European universities based on their tuition status (No Fees, Partial Fees, or Fees for All Students). The research aims to provide actionable insights into the structural and financial characteristics that are most predictive of a university's tuition policy, contributing to discussions on educational equity and access.

Dataset Used

  • Name: European Tertiary Education Register (ETER)
  • Source: ETER Project Website
  • Years Covered in Analysis: 2018–2021 (treated as cross-sectional data)
  • Description: The ETER dataset provides comprehensive information on higher education institutions across Europe, including details on institutional characteristics, revenue, expenditure, student enrollment, staffing, research activities, and more.
  • Outcome Variable: tuition_fees (Categorical: "No Fees", "Partial Fees", "Fees for All Students").
  • Key Predictors: Legal status, institutional category, financial metrics (e.g., personnel expenditure, capital expenditure, R&D spending, government allocations - adjusted for PPP), staffing levels (FTE), student enrollment and graduation figures (by ISCED levels), and international activity indicators (e.g., Erasmus program participation).

Methodology

The project follows a standard machine learning workflow using R and the tidymodels framework.

1. Data Cleaning and Preprocessing

  • The raw dataset (eter_export_selected_variables_eu_updated.csv) was loaded and cleaned.
  • Special codes representing missing or various data quality issues (e.g., "m", "c", "s", "a", "x") were converted to NA.
  • Numeric variables stored as characters were parsed into appropriate numeric types.
  • Irrelevant identifiers and flags with excessive missingness were removed.
  • Categorical variables were converted to factors with descriptive labels.
  • The data was split into training (80%) and testing (20%) sets, stratified by the tuition_fees outcome variable.
  • A preprocessing recipe was defined, including:
    • K-Nearest Neighbors (KNN) imputation for missing values (with k=5).
    • Lumping of infrequent categorical factor levels into an "other" category (threshold 5%).
    • Handling of unknown levels in categorical predictors.
    • Creation of dummy variables for nominal predictors.
    • Removal of zero-variance predictors.

2. Exploratory Data Analysis (EDA)

  • Tuition Fee Distribution: Most institutions in the dataset charge "Partial Fees," followed by "Full Fees." "No Fees" was the least common category.
  • Personnel Expenditure: Institutions with "Partial Fees" showed the highest median personnel expenditure, while "No Fees" institutions had the lowest.
  • Legal Status & Personnel: "Private-Government Dependent" institutions charging "Partial Fees" had the highest median total personnel.

3. Predictive Modeling: XGBoost

  • Model Choice: XGBoost (eXtreme Gradient Boosting) was selected for its efficiency with large datasets, ability to capture non-linear relationships, robustness against overfitting (via regularization), and inherent feature importance capabilities.
  • Implementation: The boost_tree model specification from the parsnip package (engine: xgboost) was used for classification.
  • Hyperparameter Tuning:
    • A space-filling grid search (30 combinations) was used to tune parameters like tree_depth, min_n, loss_reduction, sample_size, mtry, and learn_rate.
    • 10-fold cross-validation (stratified by tuition_fees) was employed during tuning.
    • The primary metric for selecting the best model was ROC AUC.

Key Findings & Model Performance

  • Optimal Hyperparameters: The tuning process identified that optimal performance was generally associated with a small learning rate, minimal loss reduction, moderately deep trees (around 8-12), and sampling a significant portion of features and training data per tree.
  • Test Set Performance (Final Model):
    • ROC AUC: 0.989 (Excellent discrimination)
    • Accuracy: 0.962 (96.2% of institutions correctly classified)
    • Brier Class Score: 0.02 (Indicates well-calibrated predicted probabilities)
  • Variable Importance:
    • The most influential predictor was legal_status_Private (whether an institution is private).
    • Other significant factors included capital expenditure, basic government allocation, the presence of ISCED-6 degrees, R&D expenditure, and various measures of student enrollment and personnel (FTE).
  • Confusion Matrix Highlights:
    • The model performed well across all classes, with "Partial Fees" being the most accurately predicted (also the most frequent class).
    • The primary misclassifications involved confusing "No Fees" with "Partial Fees," and "Fees for All Students" with "Partial Fees."
    • Notably, the model never misclassified an institution charging "Fees for All Students" as one charging "No Fees," and vice-versa.

Structure of the Repository

  • README.md: This file.
  • Final Project/: Contains the main R Markdown file for the final paper (lpo_7500_final_project_ali_abid.Rmd), its rendered PDF output, the bibliography (eterproject.bib), the primary dataset used (eter_export_selected_variables_eu_updated.csv), and the saved tuned XGBoost model object (xg_tune_resampled.Rdata). An outline Rmd is also present.
  • Project Check-in I/: Includes the R Markdown file, PDF/HTML outputs, and initial dataset for the first project milestone.
  • Project Check-in II/: Contains R Markdown files, outputs, and datasets for the second project milestone focusing on EDA.
  • Project Check-in III/: Holds the R Markdown file, datasets, and saved model for the third milestone, which details the initial XGBoost model construction and tuning.
  • .gitattributes, .gitignore: Git configuration files.

How to Run the Analysis

  1. Software:
    • R (version 4.0 or higher recommended)
    • RStudio IDE (recommended for working with R Markdown files)
  2. R Libraries: Ensure the following R packages are installed. You can install them using install.packages("package_name").
    • tidyverse (for data manipulation and visualization, includes ggplot2, dplyr, readr, etc.)
    • tidymodels (for the modeling framework, includes rsample, parsnip, recipes, workflows, tune, yardstick)
    • xgboost (the engine for the XGBoost model)
    • vip (for variable importance plots)
    • formattable (used for table formatting in Rmd)
    • janitor (for data cleaning tasks like clean_names())
    • natbib & stevetemplates (used for formatting the final R Markdown paper - Final Project/lpo_7500_final_project_ali_abid.Rmd)
  3. Data: The primary dataset (eter_export_selected_variables_eu_updated.csv) is located in the Final Project/ and Project Check-in II/ & Project Check-in III/ directories.
  4. Execution:
    • Navigate to the relevant project directory (e.g., Final Project/).
    • Open the R Markdown file (e.g., lpo_7500_final_project_ali_abid.Rmd) in RStudio.
    • The Rmd files can be "knitted" in RStudio to reproduce the analysis and reports.
    • Note on Model Training: The XGBoost hyperparameter tuning and final model training can be computationally intensive. The Rmd files in Project Check-in III and Final Project include logic to load a pre-tuned model object (xg_tune_resampled.Rdata) to save time if it's available in the working directory. To run the tuning from scratch, you might need to set fit_model <- TRUE in the Rmd code and ensure the RData file is not present or an alternative path is specified.

Limitations

  • Cross-Sectional Analysis: While the ETER dataset has a longitudinal component, this analysis treats the data as cross-sectional due to inconsistencies in year-to-year reporting for all institutions. This limits the ability to draw causal inferences or model temporal trends.
  • Imputation Method: K-Nearest Neighbors (KNN) imputation was used. The performance of KNN can be sensitive to the choice of k and the distance metric. XGBoost can internally handle missing values, which could be an alternative approach.
  • Model Scope: The study focused exclusively on XGBoost. Comparisons with other machine learning algorithms (e.g., Random Forest, SVM, Neural Networks) were not performed due to time constraints.

Future Work

  • Temporal Analysis: Incorporate the time-series nature of the ETER data to model changes in tuition status over time.
  • Imputation Strategy: Further investigate the impact of different missing data imputation techniques or leverage XGBoost's built-in capabilities for handling missingness.
  • Comparative Model Analysis: Extend the research to include and compare the performance of other classification algorithms.

Author & Acknowledgements

  • Author: Ali Abid, M.Ed. (Vanderbilt University, Peabody College)
  • Acknowledgements: Special thanks to Professor Will Doyle for his support and guidance in making machine learning understandable.

About

Machine Learning projects using ETER (European Tertiary Education Register) data to explore patterns, trends, and predictive insights in European higher education.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages