JulioContrerasH commited on
Commit
4db610a
·
verified ·
1 Parent(s): 2e4a3f3

first commit

Browse files
Files changed (1) hide show
  1. README.md +262 -11
README.md CHANGED
@@ -1,14 +1,265 @@
1
  ---
2
- title: Rtm Emulation
3
- emoji: 💻
4
- colorFrom: purple
5
- colorTo: green
6
- sdk: gradio
7
- sdk_version: 5.30.0
8
- app_file: app.py
9
- pinned: false
10
- license: mit
11
- short_description: challenge
12
  ---
 
13
 
14
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ---
2
+ license: apache-2.0
3
+ language:
4
+ - en
5
+ pipeline_tag: emulation
6
+ tags:
7
+ - emulation
8
+ - atmosphere radiative transfer models
9
+ - hyperspectral
10
+ pretty_name: Atmospheric Radiative Transfer Emulation Challenge
 
11
  ---
12
+ Last update: 25-04-2025
13
 
14
+ <img src="https://elias-ai.eu/wp-content/uploads/2023/09/elias_logo_big-1.png" alt="elias_logo" style="width:15%; display: inline-block; margin-right: 150px;">
15
+ <img src="https://elias-ai.eu/wp-content/uploads/2024/01/EN_FundedbytheEU_RGB_WHITE-Outline-1.png" alt="eu_logo" style="width:20%; display: inline-block;">
16
+
17
+ # **Atmospheric Radiative Transfer Emulation Challenge**
18
+
19
+
20
+ 1. [**Introduction**](#introduction)
21
+ 2. [**Challenge Tasks and Data**](#challenge-tasks-and-data):
22
+
23
+ 2.1. [**Proposed Experiments**](#proposed-experiments)
24
+
25
+ 2.2. [**Data Availability and Format**](#data-availability-and-format)
26
+ 3. [**Evaluation methodology**](#evaluation-methodology)
27
+
28
+ 3.1. [**Prediction Accuracy**](#prediction-accuracy)
29
+
30
+ 3.2. [**Computational efficiency**](#computational-efficiency)
31
+
32
+ 3.3. [**Proposed Protocol**](#proposed-protocol)
33
+
34
+ 4. [**Expected Outcomes**](#expected-outcomes)
35
+
36
+
37
+
38
+ ## **Benchmark Results**
39
+
40
+ | **Model** | **MRE A1 (%)** | **MRE A2 (%)** | **MRE B1 (%)** | **MRE B2 (%)** | **Score** | **Rank** |
41
+ |-----------|---------------|---------------|---------------|---------------|----------|--------|
42
+ | test2 | 0.203 | 4.579 | 0.657 | 3.965 | 1.000 | 1° |
43
+ | test1 | 0.545 | 7.693 | 0.816 | 7.877 | 2.175 | 2° |
44
+ | baseline | 0.998 | 12.604 | 1.065 | 7.072 | 2.825 | 3° |
45
+
46
+ ## **Introduction**
47
+
48
+ Atmospheric Radiative Transfer Models (RTM) are crucial in Earth and climate sciences with applications such as synthetic scene generation, satellite data processing, or
49
+ numerical weather forecasting. However, their increasing complexity results in a computational burden that limits direct use in operational settings. A practical solution
50
+ is to interpolate look-up-tables (LUTs) of pre-computed RTM simulations generated from long and costly model runs. However, large LUTs are still needed to achieve accurate
51
+ results, requiring significant time to generate and demanding high memory capacity. Alternative, ad hoc solutions make data processing algorithms mission-specific and
52
+ lack generalization. These problems are exacerbated for hyperspectral satellite missions, where the data volume of LUTs can increase by one or two orders of magnitude,
53
+ limiting the applicability of advanced data processing algorithms. In this context, emulation offers an alternative, allowing for real-time satellite data processing
54
+ algorithms while providing high prediction accuracy and adaptability across atmospheric conditions. Emulation replicate the behavior of a deterministic and computationally
55
+ demanding model using statistical regression algorithms. This approach facilitates the implementation of physics-based inversion algorithms, yielding accurate and
56
+ computationally efficient model predictions compared to traditional look-up table interpolation methods.
57
+
58
+ RTM emulation is challenging due to the high-dimensional nature of both input (~10 dimensions) and output (several thousand) spaces, and the complex interactions of
59
+ electromagnetic radiation with the atmosphere. The research implications are vast, with potential breakthroughs in surrogate modeling, uncertainty quantification,
60
+ and physics-aware AI systems that can significantly contribute to climate and Earth observation sciences.
61
+
62
+ This challenge will contribute to reducing computational burdens in climate and atmospheric research, enabling (1) Faster satellite data processing for applications in
63
+ remote sensing and weather prediction, (2) improved accuracy in atmospheric correction of hyperspectral imaging data, and (3) more efficient climate simulations, allowing
64
+ broader exploration of emission pathways aligned with sustainability goals.
65
+
66
+ ## **Challenge Tasks and Data**
67
+
68
+ Participants in this challenge will develop emulators trained on provided datasets to predict spectral magnitudes (atmospheric transmittances and reflectances)
69
+ based on input atmospheric and geometric conditions. The challenge is structured around three main tasks: (1) training ML models
70
+ using predefined datasets, (2) predicting outputs for given test conditions, and (3) evaluating emulator performance based on accuracy and runtime.
71
+
72
+ ### **Proposed Experiments**
73
+
74
+ The challenge includes two primary application test scenarios:
75
+ 1. **Atmospheric Correction** (`A`): This scenario focuses on the atmospheric correction of hyperspectral satellite imaging data. Emulators will be tested on
76
+ their ability to reproduce key atmospheric transfer functions that influence radiance measurements. This includes path radiance, direct/diffuse solar irradiance, and
77
+ transmittance properties. Full spectral range simulations (400-2500 nm) will be provided at a resolution of 5cm<sup>-1</sup>.
78
+ 2. **CO<sub>2</sub> Column Retrieval** (`B`): This scenario is in the context of atmospheric CO<sub>2</sub> retrieval by modeling how radiation interacts with various gas
79
+ layers. The emulators will be evaluated on their accuracy in predicting top-of-atmosphere radiance, particularly within the spectral range sensitive to CO<sub>2</sub>
80
+ absorption (2000-2100 nm) at high spectral resolution (0.1cm<sup>-1</sup>).
81
+
82
+ For both scenarios, two test datasets (tracks) will be provided to evaluate 1) interpolation, and 2) extrapolation.
83
+
84
+ Each scenario-track combination will be identified using alphanumeric ID `Sn`, where `S`={`A`,`B`} denotes to the scenario, and `n`={1,2}
85
+ represents test dataset type (i.e., track). For example, `A2` refers to prediction for the atmospheric correction scenario using the the extrapolation dataset.
86
+
87
+ Participants may choose their preferred scenario(s) and tracks; however, we encourage submitting predictions for all test conditions.
88
+
89
+ ### **Data Availability and Format**
90
+
91
+ Participants will have access to multiple training datasets of atmospheric RTM simulations varying in sample sizes, input parameters, and spectral range/resolution.
92
+ These datasets will be generated using Latin Hypercube Sampling to ensure a comprehensive input space coverage and minimize issues related to ill-posedness and
93
+ unrealistic results.
94
+
95
+ The training data (i.e., inputs and outputs of RTM simulations) will be stored in [HDF5](https://docs.h5py.org/en/stable/) format with the following structure:
96
+
97
+ | **Dimensions** | |
98
+ |:---:|:---:|
99
+ | **Name** | **Description** |
100
+ | `n_wl` | Number of wavelengths for which spectral data is provided |
101
+ | `n_funcs` | Number of atmospheric transfer functions |
102
+ | `n_comb` | Number of data points at which spectral data is provided |
103
+ | `n_param` | Dimensionality of the input variable space |
104
+
105
+ | **Data Components** | | | |
106
+ |:---:|:---:|:---:|:---:|
107
+ | **Name** | **Description** | **Dimensions** | **Datatype** |
108
+ | **`LUTdata`** | Atmospheric transfer functions (i.e. outputs) | `n_funcs*n_wvl x n_comb` | single |
109
+ | **`LUTHeader`** | Matrix of input variable values for each combination (i.e., inputs) | `n_param x n_comb` | double |
110
+ | **`wvl`** | Wavelength values associated with the atmospheric transfer functions (i.e., spectral grid) | `n_wvl` | double |
111
+
112
+ **Note:** Participants may choose to predict the spectral data either as a single vector of length `n_funcs*n_wvl` or as `n_funcs` separate vectors of lenght `n_wvl`.
113
+
114
+ Testing input datasets (i.e., input for predictions) will be stored in a tabulated `.csv` format with dimensions `n_param x n_comb`.
115
+
116
+ The trainng and testing dataset will be organized organized into scenario-specific folders (see
117
+ [**Proposed experiments**](/datasets/isp-uv-es/rtm_emulation#proposed-experiments)): `scenarioA` (Atmospheric Correction), and `scenarioB` (CO<sub>2</sub> Column Retrieval).
118
+ Each folder will contain:
119
+ - A `train` with multiple `.h5` files corresponding to different training sample sizes (e.g. `train2000.h5`contains 2000 samples).
120
+ - A `reference` subfolder containg two test files (`refInterp` and `refExtrap`) referring to the two aforementioned tracks (i.e., interpolation and extrapolation).
121
+
122
+ Here is an example of how to load each dataset in python:
123
+ ```{python}
124
+ import h5py
125
+ import pandas as pd
126
+ import numpy as np
127
+
128
+ # Replace with the actual path to your training and testing data
129
+ trainFile = 'train2000.h5'
130
+ testFile = 'refInterp.csv'
131
+
132
+ # Open the H5 file
133
+ with h5py.File(file_path, 'r') as h5_file
134
+ Ytrain = h5_file['LUTdata'][:]
135
+ Xtrain = h5_file['LUTHeader'][:]
136
+ wvl = h5_file['wvl'][:]
137
+
138
+ # Read testing data
139
+ df = pd.read_csv(testFile)
140
+ Xtest = df.to_numpy()
141
+ ```
142
+
143
+ in Matlab:
144
+ ```{matlab}
145
+ # Replace with the actual path to your training and testing data
146
+ trainFile = 'train2000.h5';
147
+ testFile = 'refInterp.csv';
148
+
149
+ # Open the H5 file
150
+ Ytrain = h5read(trainFile,'/LUTdata');
151
+ Xtrain = h5read(trainFile,'/LUTheader');
152
+ wvl = h5read(trainFile,'/wvl');
153
+
154
+ # Read testing data
155
+ Xtest = importdata(testFile);
156
+ ```
157
+
158
+ and in R language:
159
+ ```{r}
160
+ library(rhdf5)
161
+
162
+ # Replace with the actual path to your training and testing data
163
+ trainFile <- "train2000.h5"
164
+ testFile <- "refInterp.csv"
165
+
166
+ # Open the H5 file
167
+ lut_data <- h5read(file_path, "LUTdata")
168
+ lut_header <- h5read(file_path, "LUTHeader")
169
+ wavelengths <- h5read(file_path, "wvl")
170
+
171
+ # Read testing data
172
+ Xtest <- as.matrix(read.table(file_path, sep = ",", header = TRUE))
173
+ ```
174
+
175
+ All data will be shared through a this [huggingface]. After the challenge finishes, participants will also have access to the evaluation scripts on
176
+ [this GitLab](http://to_be_prepared) to ensure transparency and reproducibility.
177
+
178
+
179
+ ## **Evaluation methodology**
180
+
181
+ The evaluation will focus on three key aspects: prediction accuracy, computational efficiency, and extrapolation performance.
182
+
183
+ ### **Prediction Accuracy**
184
+
185
+ For the **atmospheric correction** scenario (`A`), the predicted atmospheric transfer functions will be used to retrieve surface reflectance from the top-of-atmosphere
186
+ (TOA) radiance simulations in the testing dataset. The evaluation will proceed as follows:
187
+ 1. The relative difference between retrieved and reference reflectance will be computed for each spectral channel and sample from the testing dataset.
188
+ 2. The mean relative error (MRE) will be calculated over the enrire reference dataset to assess overall emulator bias.
189
+ 3. The spectrally-averaged MRE (MRE<sub>λ</sub> will be computed, excluding wavelengths in the deep H<sub>2</sub>O. absorption regions, to ensure direct comparability between participants.
190
+
191
+ For the **CO<sub>2</sub> retrieval** scenario (`B`), evaluation will follow the same steps, comparing predicted TOA radiance spectral data against the reference values
192
+ in the testing dataset.
193
+
194
+ Since each participant/model can contribute to up to four scenario-track combinations, we will consolidate results into a single final ranking using the following process:
195
+ 1. **Individual ranking**: For each of the four combinations, submissions will be ranked based on their MRE<sub>λ</sub> values. Lower MRE<sub>λ</sub> values correspond to
196
+ better performance. In the unlikely case of ties, these will be handled by averaging the tied ranks.
197
+ 2. **Final ranking**: Rankings will be aggregated into a single final score using a weighted average. The following weights will be applied: 0.375 for interpolation and
198
+ 0.175 for extrapolation tracks. That is:
199
+ **Final score = (0.325 × AC-Interp Rank) + (0.175 × AC-Extrap Rank) + (0.325 × CO2-Interp Rank) + (0.175 × CO2-Extrap Rank)**
200
+ 3. **Missing Submissions**: If a participant does not submit results for a particular scenario-track combination, they will be placed in the last position for that track.
201
+
202
+ To ensure fairness in the final ranking, we will use the **standard competition ranking** method in the case of ties. If two or more participants achieve the same
203
+ weighted average rank, they will be assigned the same final position, and the subsequent rank(s) will be skipped accordingly. For example, if two participants are tied
204
+ for 1st place, they will both receive rank 1, and the next participant will be ranked 3rd (not 2nd).
205
+
206
+ **Note:** while the challenge is open, the daily evaluation of error metrics will be done on a subset of the test data. This will avoid participants to have detailed
207
+ information that would allow them to fine-tune their models. The final results and ranking evaluated with all the validation data will be provided and the end-date of the challenge.
208
+
209
+ ### **Computational efficiency**
210
+ Participants must report the runtime required to generate predictions across different emulator configurations. To facilitate fair comparisons, they should also provide
211
+ a report with hardware specifications, including: CPU, Parallelization settings (e.g., multi-threading, GPU acceleration), RAM availability.
212
+ Additionally, participants should report key model characteristics, such as the number of operations required for a single prediction and the number of trainable
213
+ parameters in their ML models.
214
+
215
+ All evaluation scripts will be publicly available on GitLab and Huggingface to ensure fairness, trustworthiness, and transparency.
216
+
217
+ ### **Proposed Protocol**
218
+
219
+ - Participant must generate emulator predictions on the provided testing datasets before the submission deadline. Multiple emulator models can be submitted.
220
+
221
+ - The submission will be made via a [pull request](https://huggingface.co/docs/hub/en/repositories-pull-requests-discussions) to this repository.
222
+
223
+ - Each submission **MUST** include the prediction results in hdf5 format and a `metadata.json`.
224
+
225
+ - The predictions should be stored in a `.h5`file with the same format as the [training data](/datasets/isp-uv-es/rtm_emulation#data-availability-and-format).
226
+ Note that only the **`LUTdata`** matrix (i.e., the predictions) are needed. A baseline example of this file is available for participants (`baseline_Sn.h5`).
227
+ We encourage participants to compress their hdf5 files using the deflate option.
228
+
229
+ - Each prediction file must be stored in`predictions` subfolder within the corresponding
230
+ scenario folder (e.g., (e.g. `/scenarioA/predictions`). The prediction files should be named using the emulator/model name followed by the scenario-track ID
231
+ (e.g. `/scenarioA/predictions/mymodel_A1.h5`). A global attributed named `runtime`must be included to report the
232
+ computational efficiency of your model (value expressed in seconds).
233
+ Note that all predictions for different scenario-tracks should be stored in separate files.
234
+
235
+ - The metadata file (`metadata.json`) shall contain the following information:
236
+
237
+ ```{json}
238
+ {
239
+ "name": "model_name",
240
+ "authors": ["author1", "author2"],
241
+ "affiliations": ["affiliation1", "affiliation2"],
242
+ "description": "A brief description of the emulator",
243
+ "url": "[OPTIONAL] URL to the model repository if it is open-source",
244
+ "doi": "DOI to the model publication (if available)"
245
+ }
246
+ ```
247
+
248
+ - Emulator predictions will be evaluated once per day at 12:00 CET based on the defined metrics.
249
+
250
+ - After the deadline, teams will be contacted with their evaluation results. If any issues are identified, theams will have up to two
251
+ weeks to provide the necessary corrections.
252
+
253
+ - Questions and discussions will be held in the discussion section of this [repository](https://huggingface.co/isp-uv-es/rtm_emulation/discussions).
254
+
255
+ - After all the participants have provided the necessary corrections, the results will be published in the discussion section of this repository.
256
+
257
+
258
+ ## **Expected Outcomes**
259
+
260
+ - No clear superiority of any methodology in all metrics is expected.
261
+ - Participants will benefit from the analysis on scenarios/tracks, which will serve them to improve their models.
262
+ - A research publication will be submitted to a remote sensing journal with the top three winners.
263
+ - An overview paper of the challenge will be published at the [ECML-PKDD 2025](https://ecmlpkdd.org/2025/) workshop proceedings.
264
+ - The winner will get covered the registratin cost for the [ECML-PKDD 2025](https://ecmlpkdd.org/2025/).
265
+ - We are exploring the possibility to provid an economic prizes for the top three winners. Stay tuned!