{"id":31649303,"url":"https://github.com/papjoin/supervised-learning-class-dropout","last_synced_at":"2025-10-07T07:42:09.202Z","repository":{"id":312942298,"uuid":"1048702670","full_name":"PaPJoIN/supervised-learning-class-dropout","owner":"PaPJoIN","description":"Evaluating student demographics, engagement and performance metrics for predicting dropout likelihood using supervised learning - Neural Networks \u0026 Decision Trees.","archived":false,"fork":false,"pushed_at":"2025-09-12T20:35:05.000Z","size":1426,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-12T22:43:48.890Z","etag":null,"topics":["classification-model","dropout-probability","hyperparameter-optimization","keras-tensorflow","sklearn","student-score-prediction","supervised-learning-algorithms","xgboost-classifier"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PaPJoIN.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-01T22:20:32.000Z","updated_at":"2025-09-12T20:35:08.000Z","dependencies_parsed_at":"2025-09-05T13:31:29.953Z","dependency_job_id":null,"html_url":"https://github.com/PaPJoIN/supervised-learning-class-dropout","commit_stats":null,"previous_names":["papjoin/supervised-learning-class-dropout"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/PaPJoIN/supervised-learning-class-dropout","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaPJoIN%2Fsupervised-learning-class-dropout","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaPJoIN%2Fsupervised-learning-class-dropout/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaPJoIN%2Fsupervised-learning-class-dropout/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaPJoIN%2Fsupervised-learning-class-dropout/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PaPJoIN","download_url":"https://codeload.github.com/PaPJoIN/supervised-learning-class-dropout/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaPJoIN%2Fsupervised-learning-class-dropout/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278740831,"owners_count":26037480,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-07T02:00:06.786Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["classification-model","dropout-probability","hyperparameter-optimization","keras-tensorflow","sklearn","student-score-prediction","supervised-learning-algorithms","xgboost-classifier"],"created_at":"2025-10-07T07:42:02.428Z","updated_at":"2025-10-07T07:42:09.195Z","avatar_url":"https://github.com/PaPJoIN.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Applying Supervised Learning to predict student dropout\nEvaluating student demographics, engagement and performance metrics for predicting dropout likelihood using supervised learning techniques - Neural Networks \u0026amp; Decision Trees.\n\n\n## 🔸 Data\nThe data used in this project was divided into 3 stages, each representing the students' progression through their academic journey, starting with enrollment details, followed by incorporating engagement metrics and finally introducing subject gradings.\n\n## 🔸 Methodology\n* Performed data exploration and the necessary preprocessing steps, including encoding and scaling.\n* Identified the key correlations between variables.\n* Defined, compiled and trained the Neural Network models.\n* Performed hyperparamater optimisation using Keras Tuner to further refine accuracy.\n* Instantiated and trained the Extreme Gradient Boosting models.\n* Applied Grid \u0026 Ramdom-Search to further tune the XGBoost models.\n* Calculated and compared the models' perfomances across a range of metrics [Accuracy, AUC, Recall \u0026 Precision].\n\n## 🔸 Tools\n* Python, NumPy, Pandas\n* Matplotlib, Seaborn, Scikit-learn\n* Keras-Tensorflow \u0026 Keras Tuner\n* XGboost \u0026 Sklearn's GridSearch Cross Validation \n\n## 🔸 Results \u0026 Findings\n* The conducted data exploration and analysis provided valuable insights into the factors influencing student dropout. The predictive performance of both XGBoost and Neural Network models progressively improved across the three stages of data inclusion, demonstrating the benefit of incorporating more detailed and performance-based student information (Figures below).\n* The findings further revealed areas for improvement. For this, a number of solutions were proposed for imporving in the recruitment \u0026 monitoring of student to ensure maximised rates of course completion, including:\n  * **Refined Candidate Vetting and tracking Risk profiles per intake:** Conduct further refinement and incorporate predictive indicators identified in application data into the admissions process to better evaluate dropout risk and provide guided \nsupport.\n\n  * **Enhanced Student Engagement Monitoring:** Integrate systems for continuous monitoring of student absences and engagement metrics and develop automated alerts to flag students exhibiting decreasing attendance.\n\n  * **Strengthened Academic Support triggers:** Design and implement targeted programmes for addressing academic learning challenges, such as academic leads being alerted when students reach dropout-risk thresholds (e.g., \u003e30 unauthorised absences, 1+ failed modules).\n\n\u003cimg width=\"1791\" height=\"590\" alt=\"image\" src=\"https://github.com/user-attachments/assets/0a83bd72-a88f-409d-a933-307f0bccbc43\" /\u003e\n\u003cimg width=\"592\" height=\"166\" alt=\"image\" src=\"https://github.com/user-attachments/assets/294aad0b-ee66-410a-affb-5ca7c2d6aaea\" /\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpapjoin%2Fsupervised-learning-class-dropout","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpapjoin%2Fsupervised-learning-class-dropout","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpapjoin%2Fsupervised-learning-class-dropout/lists"}