Mario Santa Cruz
commited on
Commit
·
96ad5cc
1
Parent(s):
d23295e
update content (WIP)
Browse files
README.md
CHANGED
@@ -31,6 +31,41 @@ AIFS produces highly skilled forecasts for upper-air variables, surface weather
|
|
31 |
tropical cyclone tracks. AIFS-single is run four times daily alongside ECMWF’s physics-based NWP model and forecasts
|
32 |
are available to the public under ECMWF’s open data policy. (https://www.ecmwf.int/en/forecasts/datasets/open-data)
|
33 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
34 |
## Model Details
|
35 |
|
36 |
### Model Description
|
@@ -54,13 +89,22 @@ and direct observational data.
|
|
54 |
- **License:** These model weights are published under a Creative Commons Attribution 4.0 International (CC BY 4.0).
|
55 |
To view a copy of this licence, visit https://creativecommons.org/licenses/by/4.0/
|
56 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
57 |
### Model Sources
|
58 |
|
59 |
<!-- Provide the basic links for the model. -->
|
60 |
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
- **Paper:** https://arxiv.org/pdf/2406.01465
|
65 |
|
66 |
## How to Get Started with the Model
|
@@ -87,7 +131,7 @@ step-by-step workflow is specified to run the AIFS using the HuggingFace model:
|
|
87 |
🚨 **Note** we train AIFS using `flash_attention` (https://github.com/Dao-AILab/flash-attention).
|
88 |
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
|
89 |
|
90 |
-
🚨 **Note** the `
|
91 |
That file does not contain any information about the optimizer states, lr-scheduler states, etc.
|
92 |
|
93 |
|
@@ -110,6 +154,8 @@ The full list of input and output fields is shown below:
|
|
110 |
|-------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------|--------------|
|
111 |
| Geopotential, horizontal and vertical wind components, specific humidity, temperature | Pressure level: 50,100, 150, 200, 250,300, 400, 500, 600,700, 850, 925, 1000 | Both |
|
112 |
| Surface pressure, mean sea-level pressure, skin temperature, 2 m temperature, 2 m dewpoint temperature, 10 m horizontal wind components, total column water | Surface | Both |
|
|
|
|
|
113 |
| Total precipitation, convective precipitation | Surface | Output |
|
114 |
| Land-sea mask, orography, standard deviation of sub-grid orography, slope of sub-scale orography, insolation, latitude/longitude, time of day/day of year | Surface | Input |
|
115 |
|
@@ -118,18 +164,29 @@ the forcing variables, like orography, are min-max normalised.
|
|
118 |
|
119 |
### Training Procedure
|
120 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
121 |
<!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. -->
|
122 |
|
123 |
-
- **Pre-training**: It was performed on ERA5 for the years 1979 to
|
124 |
-
of 260,000 steps. The LR is increased from 0 to
|
125 |
-
of
|
126 |
-
- **Fine-tuning
|
127 |
-
of
|
128 |
-
|
129 |
-
|
130 |
-
analyses. This is done via another round of rollout training, this time using IFS operational analysis data
|
131 |
-
from 2019 and 2020
|
132 |
|
|
|
|
|
133 |
|
134 |
#### Training Hyperparameters
|
135 |
|
@@ -164,8 +221,16 @@ and windspeed, and SYNOP observations of 2 m temperature, 10 m wind and 24 h tot
|
|
164 |
of the metrics, such as ACC (ccaf), RMSE (rmsef) and forecast activity (standard deviation of forecast anomaly,
|
165 |
sdaf) can be found in e.g Ben Bouallegue et al. ` [2024].
|
166 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
167 |
<div style="display: flex; justify-content: center;">
|
168 |
-
<img src="assets/
|
169 |
</div>
|
170 |
|
171 |
|
|
|
31 |
tropical cyclone tracks. AIFS-single is run four times daily alongside ECMWF’s physics-based NWP model and forecasts
|
32 |
are available to the public under ECMWF’s open data policy. (https://www.ecmwf.int/en/forecasts/datasets/open-data)
|
33 |
|
34 |
+
## Data Details
|
35 |
+
|
36 |
+
### Data parameteres
|
37 |
+
|
38 |
+
#### New parameters
|
39 |
+
|
40 |
+
More detailed information about the new parameters introduced with AIFS Single v1.0 is provided in the table below.
|
41 |
+
|
42 |
+
| Short Name | Name | Units | Component Type | Lev.Type |
|
43 |
+
|:----------:|:----:|:-----:|:--------------:|:--------:|
|
44 |
+
| swl1 | Volumetric soil water layer 1 | $m^3 m^{-3}$ | HRES | sfc |
|
45 |
+
| swl2 | Volumetric soil water layer 2 | $m^3 m^{-3}$ | HRES | sfc |
|
46 |
+
| stl1 | Soil temperature level 1 | $K$ | HRES | sfc |
|
47 |
+
| stl2 | Soil temperature level 2 | $K$ | HRES | sfc |
|
48 |
+
| 100u | 100 metre U wind component | $m s^{-1}$ | HRES | sfc |
|
49 |
+
| 100v | 100 metre V wind component | $m s^{-1}$ | HRES | sfc |
|
50 |
+
| ssrd | Surface short-wave (solar) radiation downwards | $J m^{-2}$ | HRES | sfc |
|
51 |
+
| strd | Surface long-wave (thermal) radiation downwards | $J m^{-2}$ | HRES | sfc |
|
52 |
+
| tcc | Total cloud cover | $(0 - 1)$ | HRES | sfc |
|
53 |
+
| hcc | High Cloud Cover | $(0 - 1)$ | HRES | sfc |
|
54 |
+
| mcc | Medium Cloud Cover | $(0 - 1)$ | HRES | sfc |
|
55 |
+
| lc | Low cloud cover | $(0 - 1)$ | HRES | sfc |
|
56 |
+
| ro | Runoff | $m$ | HRES | sfc |
|
57 |
+
| sf | Snowfall | $m$ of water equivalent | HRES | sfc |
|
58 |
+
|
59 |
+
|
60 |
+
#### Changes to existing parameters
|
61 |
+
|
62 |
+
There are no changes to existing parameters already introduced with AIFS Single v0.2.1.
|
63 |
+
|
64 |
+
#### Discontinued parameters
|
65 |
+
|
66 |
+
No parameters have been discontinued with regards to the previous version of AIFS Single v0.2.1.
|
67 |
+
|
68 |
+
|
69 |
## Model Details
|
70 |
|
71 |
### Model Description
|
|
|
89 |
- **License:** These model weights are published under a Creative Commons Attribution 4.0 International (CC BY 4.0).
|
90 |
To view a copy of this licence, visit https://creativecommons.org/licenses/by/4.0/
|
91 |
|
92 |
+
### Model resolution
|
93 |
+
|
94 |
+
There are no changes in resolution compared to previous version AIFS Single v0.2.1.
|
95 |
+
|
96 |
+
| | Component | Horizontal Resolution [kms] | Vertical Resolution [levels] |
|
97 |
+
|---|:---:|:---:|:---:|
|
98 |
+
| Atmosphere | AIFS-single v1.0 | ~ 36 | 13 |
|
99 |
+
|
100 |
+
|
101 |
### Model Sources
|
102 |
|
103 |
<!-- Provide the basic links for the model. -->
|
104 |
|
105 |
+
- **Repository:** [Anemoi](https://anemoi-docs.readthedocs.io/en/latest/index.html) is an open-source framework for
|
106 |
+
creating machine learning (ML) weather forecasting systems, which ECMWF and a range of national meteorological
|
107 |
+
services across Europe have co-developed.
|
108 |
- **Paper:** https://arxiv.org/pdf/2406.01465
|
109 |
|
110 |
## How to Get Started with the Model
|
|
|
131 |
🚨 **Note** we train AIFS using `flash_attention` (https://github.com/Dao-AILab/flash-attention).
|
132 |
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
|
133 |
|
134 |
+
🚨 **Note** the `aifs_single_v1.0.ckpt` checkpoint just contains the model’s weights.
|
135 |
That file does not contain any information about the optimizer states, lr-scheduler states, etc.
|
136 |
|
137 |
|
|
|
154 |
|-------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------|--------------|
|
155 |
| Geopotential, horizontal and vertical wind components, specific humidity, temperature | Pressure level: 50,100, 150, 200, 250,300, 400, 500, 600,700, 850, 925, 1000 | Both |
|
156 |
| Surface pressure, mean sea-level pressure, skin temperature, 2 m temperature, 2 m dewpoint temperature, 10 m horizontal wind components, total column water | Surface | Both |
|
157 |
+
| Soil moisture and soil temperature (layers 1 & 2) | Surface | Both |
|
158 |
+
| 100m horizontal wind components, solar radiation (Surface short-wave (solar) radiation downwards and Surface long-wave (thermal) radiation downwards), cloud variables (tcc, hcc, mcc, lcc), runoff and snow fall | Surface | Output |
|
159 |
| Total precipitation, convective precipitation | Surface | Output |
|
160 |
| Land-sea mask, orography, standard deviation of sub-grid orography, slope of sub-scale orography, insolation, latitude/longitude, time of day/day of year | Surface | Input |
|
161 |
|
|
|
164 |
|
165 |
### Training Procedure
|
166 |
|
167 |
+
Based on the different experiments we have made - the final training recipe for AIFS Single v1.0 has deviated slightly
|
168 |
+
from the one used for AIFS Single v0.2.1 since we found that we could get a well trained model by skipping the ERA5
|
169 |
+
rollout and directly doing the rollout on the operational-analysis (extended) dataset. When we say 'extended' we refer
|
170 |
+
to the fact that for AIFS Single v0.2.1 we used just operational-analysis data from 2019 to 2021, while in this new
|
171 |
+
release we have done the fine-tunning from 2016 to 2022.
|
172 |
+
|
173 |
+
The other important change in the fine-tuning stage is that for AIFS Single v0.2.1 after the 6hr model training the
|
174 |
+
optimiser was not restarted (ie. rollout was done with the minimal lr of $3 × 10^{-7}$). For this release we have seen
|
175 |
+
that restarting the optimiser for the rollout improves the model's performance. For the operational-fine tuning rollout
|
176 |
+
stage, the learning rate cycle is restarted, gradually decreasing to the minimum value at the end of rollout.
|
177 |
+
|
178 |
<!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. -->
|
179 |
|
180 |
+
- **Pre-training**: It was performed on ERA5 for the years 1979 to 2022 with a cosine learning rate (LR) schedule and a
|
181 |
+
total of 260,000 steps. The LR is increased from 0 to $10^{-4}$ during the first 1000 steps, then it is annealed to a
|
182 |
+
minimum of $3 × 10^{-7}$. The local learning rate used for this stage is $3.125 × 10^{-5}$.
|
183 |
+
- **Fine-tuning**: The pre-training is then followed by rollout on operational real-time IFS NWP analyses for the years
|
184 |
+
2016 to 2022, this time with a local learning rate of $8 × 10^{−7}$, which is decreased to $3 × 10^{−7}$. Rollout steps
|
185 |
+
increase per epoch. In this second stage the warm up period of the optimiser is 100 steps to account for shorter length
|
186 |
+
of this stage. Optimizer step are equal to 7900 ( 12 epoch with ~630 steps per epoch).
|
|
|
|
|
187 |
|
188 |
+
As in the previous version of aifs-single for fine-tuning and initialisation of the model during inference, IFS fields
|
189 |
+
are interpolated from their native O1280 resolution (approximately $0.1°$) down to N320 (approximately $0.25°$).
|
190 |
|
191 |
#### Training Hyperparameters
|
192 |
|
|
|
221 |
of the metrics, such as ACC (ccaf), RMSE (rmsef) and forecast activity (standard deviation of forecast anomaly,
|
222 |
sdaf) can be found in e.g Ben Bouallegue et al. ` [2024].
|
223 |
|
224 |
+
### AIFS Single v1.0 vs AIFS Single v0.2.1 (2023)
|
225 |
+
|
226 |
+
<div style="display: flex; justify-content: center;">
|
227 |
+
<img src="assets/scorecard_single1.0_vs_single0.2.1_2023.png" alt="Scorecard comparing forecast scores of AIFS versus IFS (2022)" style="width: 80%;"/>
|
228 |
+
</div>
|
229 |
+
|
230 |
+
### AIFS Single v1.0 vs IFS (2024)
|
231 |
+
|
232 |
<div style="display: flex; justify-content: center;">
|
233 |
+
<img src="assets/scorecard_single1.0_vs_ifs_2024.png" alt="Scorecard comparing forecast scores of AIFS versus IFS (2022)" style="width: 80%;"/>
|
234 |
</div>
|
235 |
|
236 |
|
assets/aifs_diagram.png
ADDED
![]() |
assets/decoder_graph.jpeg
ADDED
![]() |
assets/encoder_graph.jpeg
ADDED
![]() |
assets/scorecard_single1.0_vs_ifs_2024.png
ADDED
![]() |
assets/scorecard_single1.0_vs_single0.2.1_2023.png
ADDED
![]() |