Forecast
Daily-mean temperature across 211 countries, scored on a 30-day holdout.
Anomalies
Temperature outliers flagged by z-score and Isolation Forest, mapped by location.
How to read this
Two conventions recur across every section on this page.
- [ FINAL ]
A provenance chip names exactly what a number measures and how it was produced, so a claim is never color-only.
- [ HOLDOUT ]
The holdout is a final stretch of days none of the models trained on. Every forecast metric shown here is scored against readings the model had not yet seen.
Drivers
What drives air-quality (PM2.5) predictions
MODEL: PM2.5 · NOT TEMPERATUREHumidity and visibility lead; temperature contributes less than most people expect.
Built to be reproduced
Every figure regenerates
The dashboard reads only the committed JSON contracts the pipeline emits. Nothing is typed in by hand, so a number cannot drift from the model that produced it.
Commit-stamped and honest
Every dataset carries its generation date and source commit. A metric that cannot be trusted yet is marked pending, with a stated reason, instead of padded.
- Forecasting
- GradientBoosting, LightGBM, ARIMA, SARIMA, Prophet
- Detection
- z-score, Isolation Forest
- Explainability
- SHAP feature attribution
- Search
- all-MiniLM-L6-v2 embeddings, offline cosine
- Mapping
- MapLibre GL
- Charts
- d3-scale, d3-shape
- Serving
- Python, FastAPI
- Interface
- Next.js, Astryx design system