The dataset will be released at the start of the hackathon.
Participants are welcome to use a Google Colab Notebook for model development. Those finishing in the top 10 will be required to submit a well-written, fully documented Colab Notebook of their solution for code review.
Your task is to predict five binary labels - one for each of the following services: water, sanitation, refuse collection, energy, and education. Each label indicates whether a household faces a service delivery gap. This is a multi-label classification challenge given that these gaps tend to occur together. The best solutions should look beyond each label in isolation and capture the broader patterns of service needs.
The dataset is derived from the GCRO (Gauteng City-Region Observatory) Quality of Life Survey, conducted across all five district municipalities of Gauteng province. The full survey covered 13,817 adult respondents; this challenge uses a processed subset of 13,493 records split across train, validation, and test sets.
27 features are provided, drawn from the following themes:
Each label takes the value 1 (service gap) or 0 (has access). A single respondent can face multiple service gaps at the same time - predicting all five labels simultaneously is the core challenge. The labels are:
Note:
val.csv is provided with labels so you can evaluate your model locally and tune your decision thresholds - not as extra training data.
The intended split is:
The starter notebook shows the correct pattern: train on train.csv, call predict_proba on val.csv, and use the val labels only to find the probability threshold per label that maximises F1. Apply those thresholds to your test.csv predictions before submitting.
You may use only the datasets provided.
Join the largest network for
data scientists and AI builders