Update README.md
Browse files
README.md
CHANGED
|
@@ -1,3 +1,136 @@
|
|
| 1 |
-
---
|
| 2 |
-
license: cc-by-
|
| 3 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: cc-by-4.0
|
| 3 |
+
pipeline_tag: graph-ml
|
| 4 |
+
language:
|
| 5 |
+
- en
|
| 6 |
+
library_name: anemoi
|
| 7 |
+
---
|
| 8 |
+
|
| 9 |
+
# AIFS ENS - v1.0
|
| 10 |
+
|
| 11 |
+
<!-- Provide a quick summary of what the model is/does. -->
|
| 12 |
+
|
| 13 |
+
Here, we introduce the Artificial Intelligence Forecasting System (AIFS) ENS,
|
| 14 |
+
an ensemble-based probablistic data driven forecast model developed by the
|
| 15 |
+
European Centre for Medium-Range Weather Forecasts (ECMWF).
|
| 16 |
+
|
| 17 |
+
|
| 18 |
+
AIFS produces highly skilled forecasts for upper-air variables, surface weather parameters and
|
| 19 |
+
tropical cyclone tracks. AIFS ENS is run four times daily alongside ECMWF’s physics-based NWP model and forecasts
|
| 20 |
+
are available to the public under ECMWF’s open data policy (https://www.ecmwf.int/en/forecasts/datasets/open-data).
|
| 21 |
+
Note that due to the non-determinism of GPUs, users will be unable to exactly reproduce an official AIFS ENS forecast
|
| 22 |
+
when running AIFS ENS themselves.
|
| 23 |
+
|
| 24 |
+
For more details please refer to https://confluence.ecmwf.int/display/FCST/Implementation+of+AIFS+Single+v1
|
| 25 |
+
|
| 26 |
+
## Data Details
|
| 27 |
+
|
| 28 |
+
### Data parameters
|
| 29 |
+
|
| 30 |
+
|
| 31 |
+
**Note**
|
| 32 |
+
Regarding precipitation units, it's worth noting that AIFS model was trained on \\(m^{3}/m^{2}\\) and will therefore produce precip in that units.
|
| 33 |
+
If one wants to retrieve precipitation from Open data, the units will be \\(mm\\).
|
| 34 |
+
|
| 35 |
+
|
| 36 |
+
## Model Details
|
| 37 |
+
|
| 38 |
+
### Model Description
|
| 39 |
+
|
| 40 |
+
<!-- Provide a longer summary of what this model is. -->
|
| 41 |
+
|
| 42 |
+
AIFS is based on a graph neural network (GNN) encoder and decoder, and a sliding window transformer processor,
|
| 43 |
+
and is trained on ECMWF’s ERA5 re-analysis and ECMWF’s operational numerical weather prediction (NWP) analyses.
|
| 44 |
+
|
| 45 |
+
<div style="display: flex; justify-content: center;">
|
| 46 |
+
<img src="assets/encoder_graph.jpeg" alt="Encoder graph" style="width: 50%;"/>
|
| 47 |
+
<img src="assets/decoder_graph.jpeg" alt="Decoder graph" style="width: 50%;"/>
|
| 48 |
+
</div>
|
| 49 |
+
|
| 50 |
+
It has a flexible and modular design and supports several levels of parallelism to enable training on
|
| 51 |
+
high resolution input data. AIFS forecast skill is assessed by comparing its forecasts to NWP analyses
|
| 52 |
+
and direct observational data.
|
| 53 |
+
|
| 54 |
+
- **Developed by:** ECMWF
|
| 55 |
+
- **Model type:** Encoder-processor-decoder model
|
| 56 |
+
- **License:** These model weights are published under a Creative Commons Attribution 4.0 International (CC BY 4.0).
|
| 57 |
+
To view a copy of this licence, visit https://creativecommons.org/licenses/by/4.0/
|
| 58 |
+
|
| 59 |
+
### Model resolution
|
| 60 |
+
|
| 61 |
+
| | Component | Horizontal Resolution [kms] | Vertical Resolution [levels] |
|
| 62 |
+
|---|:---:|:---:|:---:|
|
| 63 |
+
| Atmosphere | AIFS ENS v1.0 | ~ 31 | 13 |
|
| 64 |
+
|
| 65 |
+
|
| 66 |
+
### Model Sources
|
| 67 |
+
|
| 68 |
+
<!-- Provide the basic links for the model. -->
|
| 69 |
+
|
| 70 |
+
- **Repository:** [Anemoi](https://anemoi.readthedocs.io/en/latest/index.html) is an open-source framework for
|
| 71 |
+
creating machine learning (ML) weather forecasting systems, which ECMWF and a range of national meteorological
|
| 72 |
+
services across Europe have co-developed.
|
| 73 |
+
- **Paper:** https://arxiv.org/abs/2412.15832
|
| 74 |
+
|
| 75 |
+
## How to Get Started with the Model
|
| 76 |
+
|
| 77 |
+
To generate a new forecast using AIFS, you can use [anemoi-inference](https://github.com/ecmwf/anemoi-inference). In the [following notebook](run_AIFS_ENS_v1.ipynb), a
|
| 78 |
+
step-by-step workflow is specified to run the AIFS using the HuggingFace model:
|
| 79 |
+
|
| 80 |
+
1. **Install Required Packages and Imports**
|
| 81 |
+
2. **Retrieve Initial Conditions from ECMWF Open Data**
|
| 82 |
+
- Select a date
|
| 83 |
+
- Get the data from the [ECMWF Open Data API](https://www.ecmwf.int/en/forecasts/datasets/open-data)
|
| 84 |
+
- Get input fields
|
| 85 |
+
- Add the single levels fields and pressure levels fields
|
| 86 |
+
- Convert geopotential height into geopotential
|
| 87 |
+
- Create the initial state
|
| 88 |
+
3. **Load the Model and Run the Forecast**
|
| 89 |
+
- Download the Model's Checkpoint from Hugging Face
|
| 90 |
+
- Create a runner
|
| 91 |
+
- Run the forecast using anemoi-inference
|
| 92 |
+
4. **Inspect the generated forecast**
|
| 93 |
+
- Plot a field
|
| 94 |
+
|
| 95 |
+
|
| 96 |
+
🚨 **Note** we train AIFS using `flash_attention` (https://github.com/Dao-AILab/flash-attention).
|
| 97 |
+
The use of 'Flash Attention' package also imposes certain requirements in terms of software and hardware. Those can be found under #Installation and Features in https://github.com/Dao-AILab/flash-attention
|
| 98 |
+
|
| 99 |
+
🚨 **Note** the `aifs_ens_v1.0.ckpt` checkpoint just contains the model’s weights.
|
| 100 |
+
That file does not contain any information about the optimizer states, lr-scheduler states, etc.
|
| 101 |
+
|
| 102 |
+
|
| 103 |
+
|
| 104 |
+
## Citation
|
| 105 |
+
|
| 106 |
+
<!-- If there is a paper or blog post introducing the model, the APA and Bibtex information for that should go in this section. -->
|
| 107 |
+
|
| 108 |
+
If you use this model in your work, please cite it as follows:
|
| 109 |
+
|
| 110 |
+
**BibTeX:**
|
| 111 |
+
|
| 112 |
+
```
|
| 113 |
+
@misc{lang2024aifscrps,
|
| 114 |
+
title={AIFS-CRPS: Ensemble forecasting using a model trained with a loss function based on the Continuous Ranked Probability Score},
|
| 115 |
+
author={Simon Lang and Mihai Alexe and Mariana C. A. Clare and Christopher Roberts and Rilwan Adewoyin and Zied Ben Bouallègue and Matthew Chantry and Jesper Dramsch and Peter D. Dueben and Sara Hahner and Pedro Maciel and Ana Prieto-Nemesio and Cathal O'Brien and Florian Pinault and Jan Polster and Baudouin Raoult and Steffen Tietsche and Martin Leutbecher},
|
| 116 |
+
year={2024},
|
| 117 |
+
eprint={2412.15832},
|
| 118 |
+
archivePrefix={arXiv},
|
| 119 |
+
primaryClass={physics.ao-ph},
|
| 120 |
+
url={https://arxiv.org/abs/2412.15832},
|
| 121 |
+
}
|
| 122 |
+
|
| 123 |
+
```
|
| 124 |
+
|
| 125 |
+
**APA:**
|
| 126 |
+
|
| 127 |
+
```
|
| 128 |
+
Lang, S., Alexe, M., Clare, M. C., Roberts, C., Adewoyin, R., Bouallègue, Z. B., ... & Leutbecher, M. (2024). AIFS-CRPS: Ensemble forecasting using a model trained with a loss function based on the Continuous Ranked Probability Score. arXiv preprint arXiv:2412.15832.
|
| 129 |
+
|
| 130 |
+
```
|
| 131 |
+
|
| 132 |
+
|
| 133 |
+
## More Information
|
| 134 |
+
|
| 135 |
+
[Find the paper here](https://arxiv.org/pdf/2412.15832)
|
| 136 |
+
|