AQI Forecasting
A forecasting model is easy. A forecasting model somebody else can rebuild six months later and get the same numbers from: that's the actual work.
Built as a project, not a notebook
This one exists as much for its structure as its results. It follows the Cookiecutter Data Science layout: raw data separated from interim and processed, feature engineering separated from modelling, the whole thing runnable end to end. The path from source data to reported metric is a sequence of steps, not a scroll position in someone's notebook.
The modelling
XGBoost handles the forecast, chosen for tabular data with the mix of seasonal and meteorological drivers that pollutant levels have. GridSearchCV tunes the hyperparameters, so the final configuration comes from a defined search rather than whatever happened to look good, and StandardScaler sits inside the pipeline itself, so the scaling is learned on training data alone.
A recurring subject
Air quality, weather and emissions keep showing up across this portfolio, and the reason is the same each time: the readings are public, physical and messy, which makes them a much better test of a pipeline than a clean benchmark set.
- Role
- Sole developer
- Target
- Ozone and pollutant levels
- Stack
- XGBoost, scikit-learn, Cookiecutter Data Science