LEAP/ChaosBench
ChaosBench: A Multi-Channel, Physics-Based Benchmark for Subseasonal-to-Seasonal Climate Prediction NeurIPS 2024 Oral ChaosBench is a benchmark project to improve and extend the predictability range of deep weather emulators to the subseasonal-to-seasonal (S2S) range. Predictability at this scale is more challenging due to its: (1) double sensitivities to intial condition (in weather-scale) and boundary condition (in climate-scale), (2) butterfly effect, and… See the full description on the dataset page: https://huggingface.co/datasets/LEAP/ChaosBench.
ChaosBench: A Multi-Channel, Physics-Based Benchmark for Subseasonal-to-Seasonal Climate Prediction
<div align="center"> <h3>NeurIPS 2024 Oral</h3> </div>
<div align="center" style="display: flex; justify-content: center; gap: 10px;"> <a href="https://leap-stc.github.io/ChaosBench"><img src="https://img.shields.io/badge/View-Documentation-blue?style=for-the-badge" alt="Homepage"/></a> <a href="https://arxiv.org/abs/2402.00712"><img src="https://img.shields.io/badge/ArXiV-2402.00712-b31b1b.svg?style=for-the-badge" alt="arXiv"/></a> <a href="https://huggingface.co/datasets/LEAP/ChaosBench"><img src="https://img.shields.io/badge/Dataset-HuggingFace-ffd21e?style=for-the-badge" alt="Huggingface Dataset"/></a> <a href="https://github.com/leap-stc/ChaosBench/blob/main/LICENSE"><img src="https://img.shields.io/badge/License-GNU%20GPL-green?style=for-the-badge" alt="License Badge"/></a> </div>
ChaosBench is a benchmark project to improve and extend the predictability range of deep weather emulators to the subseasonal-to-seasonal (S2S) range. Predictability at this scale is more challenging due to its: (1) _double sensitivities to intial condition (in weather-scale) and boundary condition (in climate-scale), (2) butterfly effect, and our (3) inherent lack of understanding of physical processes operating at this scale. Thus, given the high socioeconomic stakes_ for accurate, reliable, and stable S2S forecasts (e.g., for disaster/extremes preparedness), this benchmark is timely for DL-accelerated solutions.
🪜 Leaderboard
View our interactive leaderboard dashboard here
You can access the full score and checkpoints in logs/<MODEL_NAME> within the following subdirectory:
- Scores:
eval/<METRIC>.csv - Model checkpoints:
lightning_logs/
✨ Features
1️⃣ _Diverse Observations_. Spanning over 45 years (1979-), we include ERA5/LRA5/ORAS5 reanalysis for a fully-coupled Earth system emulation (atmosphere-terrestrial-sea-ice)
2️⃣ _Diverse Baselines_. Wide selection of physics-based forecasts from leading national agencies in Europe, the UK, America, and Asia
3️⃣ _Differentiable Physics Metrics_. Introduces two differentiable physics-based metrics to minimize the decay of power spectra at long forecasting horizon (blurriness)
4️⃣ _Large-Scale Benchmarking_. Systematic evaluation (deterministic, probabilistic, physics-based) for state-of-the-art ML-based weather emulators like ViT/ClimaX, PanguWeather, GraphCast, and FourcastNetV2
🏁 Getting Started
_NOTE:_ Only need the dataset? Jump directly to Step 2. If you find any problems, feel free to contact us or raise a GitHub issue.
Step 0: Clone the ChaosBench Github repository
Step 1: Install package dependencies
$ cd ChaosBench
$ pip install -r requirements.txtStep 2: Initialize the data space by running
$ cd data/
$ wget https://huggingface.co/datasets/LEAP/ChaosBench/resolve/main/process.sh
$ chmod +x process.shStep 3: Download the data
# Required for inputs and climatology (e.g., for normalization; 1979-)
$ ./process.sh era5
$ ./process.sh lra5
$ ./process.sh oras5
$ ./process.sh climatology
# Optional: control (deterministic) forecasts (2018-)
$ ./process.sh ukmo
$ ./process.sh ncep
$ ./process.sh cma
$ ./process.sh ecmwf
# Optional: perturbed (ensemble) forecasts (2022-)
$ ./process.sh ukmo_ensemble
$ ./process.sh ncep_ensemble
$ ./process.sh cma_ensemble
$ ./process.sh ecmwf_ensemble
# Optional: state-of-the-art (deterministic) forecasts (2022-)
$ ./process.sh panguweather
$ ./process.sh fourcastnetv2
$ ./process.sh graphcast🔍 Dataset Overview
All data has daily and 1.5-degree resolution.
- _ERA5 Reanalysis for Surface-Atmosphere (1979-2023). The following table indicates the 48 variables (channels) that are available for Physics-based models. Note that the Input ERA5 observations contains ALL_ fields, including the unchecked boxes:
- _LRA5 Reanalysis_ for Terrestrial (1979-2023)
- _ORAS Reanalysis_ for Sea-Ice (1979-2023)
💡 Baseline Models
In addition to climatology and persistence, we evaluate the following:
- _Physics-based models (including control/perturbed forecasts)_:
- [x] UKMO: UK Meteorological Office
- [x] NCEP: National Centers for Environmental Prediction
- [x] CMA: China Meteorological Administration
- [x] ECMWF: European Centre for Medium-Range Weather Forecasts
- _Data-driven models_:
- [x] Lagged-Autoencoder
- [x] Fourier Neural Operator (FNO)
- [x] ResNet
- [x] UNet
- [x] ViT/ClimaX
- [x] PanguWeather
- [x] GraphCast
- [x] Fourcastnetv2
🏅 Evaluation Metrics
We divide our metrics into 3 classes: (1) Deterministic-based, which cover evaluation used in conventional deterministic forecasting tasks, (2) Physics-based, which are aimed to construct a more physically-faithful and explainable data-driven forecast, and (3) Probabilistic-based, which account for the skillfulness of ensemble forecasts.
- _Deterministic-based:_
- [x] RMSE
- [x] Bias
- [x] Anomaly Correlation Coefficient (ACC)
- [x] Multiscale Structural Similarity Index (MS-SSIM)
- _Physics-based:_
- [x] Spectral Divergence (SpecDiv)
- [x] Spectral Residual (SpecRes)
- _Probabilistic-based:_
- [x] RMSE Ensemble
- [x] Bias Ensemble
- [x] ACC Ensemble
- [x] MS-SSIM Ensemble
- [x] SpecDiv Ensemble
- [x] SpecRes Ensemble
- [x] Continuous Ranked Probability Score (CRPS)
- [x] Continuous Ranked Probability Skill Score (CRPSS)
- [x] Spread
- [x] Spread/Skill Ratio
