- Pangu-Bayes: A Bayesian Ensemble Framework for Global Weather Forecasting
Pangu-Bayes: A Bayesian Ensemble Framework for Global Weather Forecasting
Pangu-Bayes is a Bayesian ensemble forecasting framework for global weather forecasting. The project covers deterministic pretraining, epistemic uncertainty learning, joint epistemic-aleatoric uncertainty learning, ensemble forecast inference, probabilistic post-processing, and evaluation.
This Hugging Face repository hosts example data, model checkpoints, and evaluation outputs. The training and inference commands below assume that the accompanying Pangu-Bayes source code has also been obtained; the source-code URL will be added when it is publicly available.
Repository Contents
pangu-bayes/
βββ ERA5_examples/ # Small example dataset and normalization statistics
βββ checkpoint/ # Forecasting and post-processing checkpoints
βββ all_model_results/ # Evaluation outputs and post-processing results
Installation
We recommend using Conda to create the environment in the accompanying source-code repository.
conda create -n pangu-bayes python=3.10
conda activate pangu-bayes
pip install -r requirements.txt
Data Preparation
Pangu-Bayes uses global atmospheric reanalysis data for training and evaluation. A small example dataset is provided under ERA5_examples/.
Expected upper-air variables include:
- Geopotential (Z)
- Temperature (T)
- Specific humidity (Q)
- U component of wind (U)
- V component of wind (V)
Expected surface variables include:
- 2 m temperature (T2M)
- 10 m U component of wind (10U)
- 10 m V component of wind (10V)
- Mean sea-level pressure (MSL)
The expected pressure levels are 50, 100, 150, 200, 250, 300, 400, 500, 600, 700, 850, 925, and 1000 hPa.
ERA5_examples/
βββ constant_masks/
β βββ land_mask.npy
β βββ soil_type.npy
β βββ topography.npy
βββ statistic/
β βββ surface_mean_40.pt
β βββ surface_std_40.pt
β βββ upper_mean_40.pt
β βββ upper_std_40.pt
βββ train/
β βββ 1979_0000.pt
β βββ 1979_0001.pt
βββ test/
βββ 2022_0000.pt
βββ 2022_0001.pt
Method Overview
The overall pipeline consists of five stages:
Deterministic pretraining
β
Epistemic uncertainty learning
β
Joint epistemic-aleatoric uncertainty learning
β
Operational fine-tuning
β
Probabilistic post-processing
Training
Stage 1: Deterministic Pretraining
The deterministic backbone is trained to predict future global atmospheric fields from historical atmospheric states.
bash train_scripts/pretrain.sh
Stage 2: Epistemic Uncertainty Learning
Epistemic uncertainty is introduced into the forecasting backbone through parameter uncertainty.
bash train_scripts/train_eu.sh
Stage 3: Joint Epistemic-Aleatoric Uncertainty Learning
The joint EU-AU model combines epistemic uncertainty from Bayesian model parameters and aleatoric uncertainty from state-dependent perturbations.
bash train_scripts/train_eu_au.sh
Stage 4: Operational Fine-tuning
After aleatoric uncertainty training, the resulting Pangu-Bayes model is fine-tuned on high-resolution (HRES) analysis data to improve operational forecasting performance. This produces the Pangu-Bayes (oper.) variant.
bash train_scripts/train_eu_au_hres.sh
Stage 5: Probabilistic Post-processing
The post-processing module calibrates forecast intensity. Before training the post-processing network, users should construct its training dataset from ensemble forecast outputs.
Ensemble forecast outputs
β
Compute task-specific statistics
β
Pair statistics with verification targets
β
Construct the post-processing dataset
β
Train the probabilistic post-processing model
Global Weather Forecasting and Evaluation
Pangu-Bayes generates global ensemble forecasts that are evaluated at the field level. Metrics include:
- Root mean squared error (RMSE)
- Continuous ranked probability score (CRPS)
- Spread-skill ratio (SSR)
Example:
bash inference_ensemble_scripts/inference.sh
Tropical Cyclone Forecasting and Evaluation
Although Pangu-Bayes is designed for global ensemble weather forecasting, this project also provides tropical cyclone ensemble forecasting as a downstream application. Pangu-Bayes first generates global ensemble forecast fields, after which cyclone-level quantities are extracted and evaluated using external cyclone analysis tools.
The workflow consists of two main steps:
- Cyclone detection and tracking. Tropical cyclone candidates and trajectories are identified from global forecast fields using the TempestExtremes tracker. It extracts storm-level quantities from each ensemble member, including cyclone center latitude and longitude, maximum sustained wind speed (MSW), and minimum sea-level pressure (MSLP).
- Track matching and verification. Predicted cyclone tracks are matched with observed best-track records from the IBTrACS dataset using the huracanpy Python package. Deterministic and probabilistic verification metrics are then computed for track and intensity forecasts.
Model Checkpoints
Model checkpoints are organized under checkpoint/:
checkpoint/
βββ deterministic_forecast.pt
βββ eu_ensemble_forecast.pt
βββ eu_au_ensemble_forecast.pt
βββ eu_au_ensemble_forecast_hres.pt
βββ best_prob_ann.pt
| File | Purpose |
|---|---|
deterministic_forecast.pt |
Deterministic forecasting backbone |
eu_ensemble_forecast.pt |
Epistemic-uncertainty ensemble forecasting model |
eu_au_ensemble_forecast.pt |
Joint epistemic-aleatoric ensemble forecasting model |
eu_au_ensemble_forecast_hres.pt |
HRES fine-tuned operational variant |
best_prob_ann.pt |
Probabilistic post-processing network |
Evaluation Outputs
all_model_results/ contains model evaluation CSV files. Its post_results/ subdirectory contains probabilistic post-processing metrics, prediction tables, member-level records, and training history.
Citation
The citation information supplied with this repository is a draft. Replace the TODO fields below with the final author and publication details when they become available.
@article{hu2025resolving,
title={Resolving Sources of Uncertainty in AI Weather Forecasting},
author={Hu, Wenbo and
Xiong, Xinlei and
Zhou, Shuxun and
Bi, Kaifeng and
Xie, Lingxi and
Zhu, Jun and
Hong, Richang and
Tian, Qi},
journal={arXiv preprint arXiv:2511.14218},
year={2025}
}
Acknowledgements
This project builds upon recent advances in data-driven global weather forecasting, Bayesian deep learning, ensemble prediction, and probabilistic forecast verification.
We thank the providers of ERA5, HRES and tropical-cyclone best-track datasets for making atmospheric and cyclone records available to the research community.
We also acknowledge the open-source tools and benchmark resources used for global weather forecasting and tropical-cyclone evaluation.
License
The Pangu-Bayes source code and model checkpoints are released under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) license.
Also, please note that all models were trained using the ERA5 dataset provided by ECMWF. Please do follow their policy (https://apps.ecmwf.int/datasets/licences/copernicus/).
For commercial use or other licensing arrangements, please contact the authors.