Test FireWx-FM upload permission

#2
Files changed (1) hide show
  1. README.md +68 -385
README.md CHANGED
@@ -5,422 +5,105 @@ tags:
5
  - geospatial
6
  - weather
7
  - earth-observation
8
- - foundation-models
9
- - evaluation
10
  - pytorch
 
11
  pipeline_tag: image-segmentation
12
  library_name: pytorch
13
- pretty_name: WildFIRE-FM
14
  ---
15
 
16
- <div align="center">
17
 
18
- <h1 align="center">WildFIRE-FM</h1>
 
 
 
19
 
20
- <h3 align="center">A wildfire-specialized reference backbone for fixed-contract Earth-FM transfer evaluation</h3>
 
 
 
21
 
22
- <p align="center"><b>Five seeded California regional PyTorch checkpoints, paper-aligned evaluation artifacts, final figure previews, source-data access notes, and a CONUS retraining recipe for 12-hour wildfire occupancy prediction.</b></p>
23
 
24
- <p>
25
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM/resolve/main/paper/wildfire_fm_evaluation_contracts.pdf"><img alt="Paper PDF" src="https://img.shields.io/badge/Paper-compiled%20PDF-0F5C5F?style=flat-square"></a>
26
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM/tree/main/models/wildfire_fm/checkpoints"><img alt="Checkpoints" src="https://img.shields.io/badge/Checkpoints-5%20seeds-C66B2D?style=flat-square"></a>
27
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM/blob/main/models/wildfire_fm/modeling_unet.py"><img alt="PyTorch" src="https://img.shields.io/badge/PyTorch-model%20code-EE4C2C?style=flat-square&logo=pytorch&logoColor=white"></a>
28
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM/blob/main/data_sources/DATA_SOURCES.md"><img alt="Data notes" src="https://img.shields.io/badge/Data-source%20notes-536065?style=flat-square"></a>
29
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM/tree/main/artifacts/results"><img alt="Results" src="https://img.shields.io/badge/Results-sanitized%20summaries-0F5C5F?style=flat-square"></a>
30
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM/tree/main/assets"><img alt="Figures" src="https://img.shields.io/badge/Figures-final%20previews-C66B2D?style=flat-square"></a>
31
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM/blob/main/data_sources/DATA_SOURCES.md"><img alt="Grid" src="https://img.shields.io/badge/Grid-5%20km%20EPSG%3A5070-0F5C5F?style=flat-square"></a>
32
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM#quick-start"><img alt="Input" src="https://img.shields.io/badge/Input-16%20channels-C66B2D?style=flat-square"></a>
33
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM#task-contract-snapshot"><img alt="Tasks" src="https://img.shields.io/badge/Contracts-6%20task%20views-536065?style=flat-square"></a>
34
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM/blob/main/LICENSE"><img alt="License" src="https://img.shields.io/badge/License-MIT-0F5C5F?style=flat-square"></a>
35
- </p>
36
-
37
- <p>
38
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM/blob/main/paper/wildfire_fm_evaluation_contracts.pdf"><b>Read the paper PDF</b></a> ·
39
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM/tree/main/models/wildfire_fm/checkpoints"><b>Download checkpoints</b></a> ·
40
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM/tree/main/training"><b>Training/data loader</b></a> ·
41
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM/tree/main/spatial_serving"><b>Custom spatial serving</b></a> ·
42
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM#quick-start"><b>Load the model</b></a> ·
43
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM#task-contract-snapshot"><b>Inspect task-contract results</b></a>
44
- </p>
45
-
46
- <h3>5 California Seeded Checkpoints · 16-Channel Gridded Input · 12-Hour Occupancy Lead · CONUS Retraining Recipe</h3>
47
-
48
- <p>
49
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM#why-wildfire-fm">Why WildFIRE-FM</a> ·
50
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM#release-navigation">Release Navigation</a> ·
51
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM#visual-tour">Visual Tour</a> ·
52
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM#quick-start">Quick Start</a> ·
53
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM/tree/main/training">Training Pipeline</a> ·
54
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM/tree/main/spatial_serving">Spatial Serving</a> ·
55
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM/blob/main/training/NATIONWIDE_RETRAINING.md">CONUS Retraining</a> ·
56
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM/blob/main/docs/hugh_handoff_status.md">Integration Handoff</a> ·
57
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM#task-contract-snapshot">Task Snapshot</a> ·
58
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM#data-sources">Data Sources</a> ·
59
- <a href="https://huggingface.co/RAI-Lab/Wildfire-FM#how-to-cite">How to Cite</a>
60
- </p>
61
-
62
- </div>
63
-
64
- ---
65
-
66
- <p align="center">
67
- <img src="https://huggingface.co/RAI-Lab/Wildfire-FM/resolve/main/assets/wildfire_fm_model_card.svg" alt="WildFIRE-FM overview" width="95%">
68
- </p>
69
-
70
- ## Release Navigation
71
-
72
- <table>
73
- <tr>
74
- <td width="33%" valign="top">
75
- <h3><a href="https://huggingface.co/RAI-Lab/Wildfire-FM/blob/main/paper/wildfire_fm_evaluation_contracts.pdf">Paper PDF</a></h3>
76
- <p>Read the compiled manuscript that defines the fixed-contract wildfire transfer setting and reports the final results.</p>
77
- </td>
78
- <td width="33%" valign="top">
79
- <h3><a href="https://huggingface.co/RAI-Lab/Wildfire-FM/tree/main/models/wildfire_fm/checkpoints">Model Checkpoints</a></h3>
80
- <p>Access five seeded WildFIRE-FM weights with manifest metadata and SHA-256 hashes for release auditing.</p>
81
- </td>
82
- <td width="33%" valign="top">
83
- <h3><a href="https://huggingface.co/RAI-Lab/Wildfire-FM/blob/main/models/wildfire_fm/modeling_unet.py">Model Code</a></h3>
84
- <p>Inspect the compact U-Net implementation used to load the released wildfire occupancy backbone.</p>
85
- </td>
86
- </tr>
87
- <tr>
88
- <td width="33%" valign="top">
89
- <h3><a href="https://huggingface.co/RAI-Lab/Wildfire-FM/tree/main/training">Training/Data Loader</a></h3>
90
- <p>Read the original cache builder, tensor assembly, tile sampler, full-map loader, and training loop.</p>
91
- </td>
92
- <td width="33%" valign="top">
93
- <h3><a href="https://huggingface.co/RAI-Lab/Wildfire-FM/tree/main/spatial_serving">Custom Spatial Serving</a></h3>
94
- <p>Aggregate native grid probabilities to any user-defined polygon granularity.</p>
95
- </td>
96
- <td width="33%" valign="top">
97
- <h3><a href="https://huggingface.co/RAI-Lab/Wildfire-FM#quick-start">Quick Start</a></h3>
98
- <p>Clone the repository, instantiate the model, load a seeded checkpoint, and run the artifact check.</p>
99
- </td>
100
- </tr>
101
- <tr>
102
- <td width="33%" valign="top">
103
- <h3><a href="https://huggingface.co/RAI-Lab/Wildfire-FM#task-contract-snapshot">Task Snapshot</a></h3>
104
- <p>View the final-paper task-contract summary for occupancy, spread, retrieval, burned area, smoke, and heat.</p>
105
- </td>
106
- <td width="33%" valign="top">
107
- <h3><a href="https://huggingface.co/RAI-Lab/Wildfire-FM/tree/main/artifacts/results">Numeric Artifacts</a></h3>
108
- <p>Use sanitized CSV and JSON summaries that back the public model-card tables and figure previews.</p>
109
- </td>
110
- <td width="33%" valign="top">
111
- <h3><a href="https://huggingface.co/RAI-Lab/Wildfire-FM#visual-tour">Visual Tour</a></h3>
112
- <p>Browse final-paper previews for matching-rule sensitivity, selection regret, and task-form ranking changes.</p>
113
- </td>
114
- </tr>
115
- <tr>
116
- <td width="33%" valign="top">
117
- <h3><a href="https://huggingface.co/RAI-Lab/Wildfire-FM/blob/main/data_sources/DATA_SOURCES.md">Data Sources</a></h3>
118
- <p>See the public provider links and roles for HRRR, FIRMS, LANDFIRE, WRC, LandScan, WFIGS, and MTBS.</p>
119
- </td>
120
- </tr>
121
- </table>
122
-
123
- ---
124
-
125
- ## Why WildFIRE-FM
126
-
127
- Wildfire Earth-FM transfer scores depend strongly on the contract used for comparison: task form, metric, matching rule, spatial scope, and head-selection criterion. The paper studies these choices by holding outputs or features fixed and then changing only the evaluation contract.
128
-
129
- WildFIRE-FM is the in-region reference model used in those comparisons. It is trained for 12-hour gridded wildfire occupancy on a California 5 km grid, then evaluated under the same task-specific contracts as the transferred Earth-FM backbones.
130
-
131
- The released weights are California regional checkpoints, not nationwide-trained weights. For nationwide use, the release includes a CONUS cache and training recipe under `training/NATIONWIDE_RETRAINING.md`.
132
-
133
- This Hub repository is model-first. It provides the released weights, model-loading code, compact result summaries, paper previews, and source-data access notes needed to inspect the release boundary before running larger local reproductions.
134
-
135
- ---
136
-
137
- ## Key Features
138
-
139
- - **Wildfire-specialized reference model:** Compact U-Net for 12-hour occupancy prediction on a projected California grid.
140
- - **Five seeded checkpoints:** Seeds `1`, `7`, `42`, `99`, and `123` are released with manifest hashes.
141
- - **Fixed-contract artifacts:** Compact summaries cover matching-rule, head-selection, and task-form comparisons from the final paper.
142
- - **Source-data aware release:** Provider links and data roles are documented for each public resource used by the study.
143
- - **Compiled paper PDF:** The readable manuscript is available directly from the Hub release.
144
- - **Paper-aligned previews:** Figure assets summarize selection regret, supporting-task rank changes, and primary-task rank changes.
145
-
146
- <table>
147
- <tr>
148
- <td width="50%" valign="top">
149
- <h3>Reference model for wildfire transfer</h3>
150
- <p>WildFIRE-FM combines regional weather, active-fire supervision, and static fuel, canopy, housing, and population context on the same grid used by the occupancy contract.</p>
151
- </td>
152
- <td width="50%" valign="top">
153
- <h3>Contract-first evaluation artifacts</h3>
154
- <p>The released summaries keep metric roles separate across decision, overlap, ranking, regression, and supporting-task checks.</p>
155
- </td>
156
- </tr>
157
- <tr>
158
- <td width="50%" valign="top">
159
- <h3>Local-data reproducibility path</h3>
160
- <p>Full raw-data reruns use provider-hosted sources and local feature caches. The Hub release documents those inputs and provides lightweight artifact checks.</p>
161
- </td>
162
- <td width="50%" valign="top">
163
- <h3>Final-paper result previews</h3>
164
- <p>The model card highlights the paper's fixed-output, fixed-feature, and task-form findings without requiring manuscript source files.</p>
165
- </td>
166
- </tr>
167
- </table>
168
-
169
- ---
170
-
171
- ## Visual Tour
172
-
173
- <p align="center">
174
- <img src="https://huggingface.co/RAI-Lab/Wildfire-FM/resolve/main/assets/release_contents.svg" alt="Release contents" width="92%">
175
- </p>
176
-
177
- **Release contents.** The Hub repository is organized around weights, model code, source-data notes, compact artifacts, and final-paper visual previews.
178
-
179
- <p align="center">
180
- <img src="https://huggingface.co/RAI-Lab/Wildfire-FM/resolve/main/assets/selection_regret_final.png" alt="Head-selection regret" width="88%">
181
- </p>
182
-
183
- **Head-selection regret.** Choosing a lightweight head by a ranking metric can lose decision performance under the same frozen features.
184
-
185
- <p align="center">
186
- <img src="https://huggingface.co/RAI-Lab/Wildfire-FM/resolve/main/assets/supporting_rank_map_final.png" alt="Supporting task rank map" width="88%">
187
- </p>
188
-
189
- **Supporting-task rank map.** Backbone ordering changes across burned area, analog retrieval, smoke PM2.5, and extreme heat task contracts.
190
-
191
- <p align="center">
192
- <img src="https://huggingface.co/RAI-Lab/Wildfire-FM/resolve/main/assets/primary_rank_change_final.png" alt="Primary rank changes" width="88%">
193
- </p>
194
-
195
- **Primary-task rank changes.** Primary-task rankings change under fixed matching-rule and task-form choices.
196
-
197
- ---
198
-
199
- ## At A Glance
200
-
201
- | Signal | Release value |
202
  |---|---|
203
- | Core task | 12-hour gridded wildfire occupancy prediction |
204
- | Released checkpoint region/grid | California regional grid, 5 km, EPSG:5070 |
205
- | Nationwide path | CONUS cache and training templates in `training/NATIONWIDE_RETRAINING.md` |
206
- | Input channels | 16 channels: weather fields, validity masks, static fuel/canopy/exposure layers |
207
- | Architecture | Compact U-Net with occupancy and auxiliary spatial-support heads |
208
- | Training split | June-August 2024 train, September 2024 validation, October 2024 test |
209
- | Released checkpoints | 5 seeded PyTorch checkpoints |
210
- | Data access path | Source links and roles documented in `data_sources/` |
211
- | Training/data loader path | Original cache builder and PyTorch loader in `training/` |
212
- | Spatial serving path | Custom polygon-granularity aggregation in `spatial_serving/` |
213
- | Paper artifact path | Compiled PDF in `paper/`; manuscript source managed in the authors' paper workspace |
214
-
215
- ### Input Channel Contract
216
-
217
- The pretrained checkpoints expect a fixed 16-channel tensor in `[channel, y, x]`
218
- order. Channel order matters.
219
- Inputs use native source units with no mean/std normalization, min/max scaling,
220
- or unit conversion. Invalid or missing values are zero-filled, with validity
221
- masks included as channels 10 and 11.
222
-
223
- | Channels | Names | Source |
224
- |---:|---|---|
225
- | 0-9 | `t2m`, `d2m`, `u10`, `v10`, `cape`, `sp`, `blh`, `vis`, `prate`, `tp` | NOAA HRRR |
226
- | 10 | `firewx_valid` | Cache-level dynamic input presence mask; 1.0 everywhere in this release |
227
- | 11 | `static_valid` | Fraction of static layers valid after reprojection |
228
- | 12-15 | `fuel_fbfm40`, `canopy_cover`, `housing_density`, `population` | LANDFIRE, WRC housing density, LandScan |
229
-
230
- FIRMS provides the occupancy target, not an input channel. WFIGS and MTBS are
231
- used for supporting event-level tasks and are not part of the 16-channel
232
- pretrained occupancy input. Full channel-level details are in
233
- `data_sources/DATA_SOURCES.md`; the same contract is available as
234
- `models/wildfire_fm/input_channels.json`.
235
- The `cape` channel is the HRRR surface instantaneous CAPE field selected with
236
- `typeOfLevel=surface` and `stepType=instant`.
237
- For validity channels, `firewx_valid` is 1.0 everywhere in the released
238
- California regional cache and is not a per-variable HRRR missing-data mask;
239
- `static_valid` is the fraction of the four static layers valid after
240
- reprojection at each grid cell.
241
-
242
- ---
243
-
244
- ## Hugging Face Release
245
-
246
- This Hub repository is a model release with paper-aligned reproducibility artifacts.
247
-
248
- | Folder | Purpose | Example |
249
- |---|---|---|
250
- | `models/wildfire_fm/` | Model code, manifests, checkpoint metadata | `models/wildfire_fm/modeling_unet.py` |
251
- | `models/wildfire_fm/input_channels.json` | Machine-readable 16-channel input contract | `models/wildfire_fm/input_channels.json` |
252
- | `models/wildfire_fm/checkpoints/` | Five seeded PyTorch checkpoints | `seed_1/best_firms_prauc.pt` |
253
- | `training/` | Original cache builder, data loader, tile sampler, and training loop | `train_cold_tiled_mainline.py` |
254
- | `training/NATIONWIDE_RETRAINING.md` | CONUS retraining recipe and data coverage notes | `stage1_cache_conus_hrrr_us_5km_l12_template.json` |
255
- | `spatial_serving/` | Grid-to-polygon serving adapter for custom spatial granularities | `grid_to_polygons.py` |
256
- | `data_downloader/hrrr_downloader.py` | Direct NOAA HRRR public archive downloader | `hrrr_download_manifest.json` |
257
- | `docs/hugh_handoff_status.md` | Integration answers for channel order, masks, normalization, HRRR, and serving boundary | handoff status |
258
- | `paper/` | Compiled paper PDF | `wildfire_fm_evaluation_contracts.pdf` |
259
- | `assets/` | Hub-page visuals and final-paper previews | `selection_regret_final.png` |
260
- | `paper_outputs/figures/` | Selected final-paper figure PDFs | `fig_rank_heatmap1.pdf` |
261
- | `artifacts/results/` | Sanitized compact numeric summaries | `selection_regret_scope_sweep_20260505.csv` |
262
- | `data_sources/` | Public data-source roles and access notes | `DATA_SOURCES.md` |
263
- | `experiments/` | Sanitized raw-rerun references and Slurm template | `slurm/submit_template.sbatch` |
264
-
265
- Full local reruns require users to prepare the provider-hosted raw data and comparator assets described in `data_sources/`.
266
-
267
- ---
268
 
269
  ## Quick Start
270
 
271
- Clone the Hub repository or download the files you need:
272
-
273
  ```bash
274
- git clone https://huggingface.co/RAI-Lab/Wildfire-FM
275
- cd Wildfire-FM
 
 
 
276
  ```
277
 
278
- Load a seeded checkpoint:
 
279
 
280
- ```python
281
- import torch
282
- from models.wildfire_fm.modeling_unet import UNetSmallFlex
283
 
284
- model = UNetSmallFlex(
285
- in_ch=16,
286
- base=32,
287
- dropout=0.1,
288
- norm_type="group",
289
- norm_groups=8,
290
- use_aux_spatial_head=True,
291
- )
292
- checkpoint = torch.load(
293
- "models/wildfire_fm/checkpoints/seed_1/best_firms_prauc.pt",
294
- map_location="cpu",
295
- )
296
- state = checkpoint.get("model", checkpoint)
297
- model.load_state_dict(state)
298
- model.eval()
299
- ```
300
 
301
- Verify the public release artifacts:
302
-
303
- ```bash
304
- python3 scripts/reproduce_paper_outputs.py
305
- ```
306
-
307
- The checkpoint expects the same fixed-order 16-channel gridded input described
308
- above and in `data_sources/DATA_SOURCES.md`.
309
-
310
- ---
311
-
312
- ## Task-Contract Snapshot
313
-
314
- The card below reports the best final-paper mean for each displayed task contract, with the winning backbone named in the final column.
315
-
316
- | Task contract | Best final-paper mean | Winner |
317
- |---|---:|---|
318
- | Occupancy union F1 | `60.1506 ± 7.5865` percent | ClimaX |
319
- | Fire-spread spatial F1 | `80.9700 ± 2.0200` percent | WildFIRE-FM |
320
- | Final burned-area log-RMSE | `1.1657 ± 0.0126`, lower is better | WildFIRE-FM |
321
- | Analog retrieval nDCG@10 | `0.5099 ± 0.0336` | WildFIRE-FM |
322
- | Smoke PM2.5 RMSE | `4.4403 ± 0.0488`, lower is better | AlphaEarth |
323
- | Extreme-heat RMSE-C | `0.2179 ± 0.0043`, lower is better | WildFIRE-FM |
324
-
325
- The release provides sanitized CSV/JSON summaries used to audit displayed values.
326
 
327
- ---
 
 
328
 
329
- ## Data Sources
330
 
331
- The study uses public or provider-hosted resources. Source roles and access paths are documented in `data_sources/DATA_SOURCES.md`.
332
 
333
- - NOAA HRRR fields for regional weather inputs.
334
- - NASA FIRMS active-fire detections for occupancy supervision.
335
- - LANDFIRE fuel and canopy layers for static landscape context.
336
- - Wildfire Risk to Communities housing density and LandScan population for exposure context.
337
- - WFIGS and MTBS event-level resources for burned-area and analog tasks.
338
- - External Earth-FM and backbone assets for comparator features.
 
339
 
340
- ---
 
341
 
342
- ## Repository Layout
343
 
344
- ```text
345
- WildFIRE-FM/
346
- README.md
347
- LICENSE
348
- requirements.txt
349
- models/wildfire_fm/
350
- modeling_unet.py
351
- checkpoint_manifest.json
352
- checkpoints/seed_*/best_firms_prauc.pt
353
- training/
354
- build_phase1_cache_regional_hrrr.py
355
- train_cold_tiled_mainline.py
356
- configs/
357
- spatial_serving/
358
- grid_to_polygons.py
359
- data_downloader/
360
- hrrr_downloader.py
361
- paper/
362
- wildfire_fm_evaluation_contracts.pdf
363
- assets/
364
- wildfire_fm_model_card.svg
365
- release_contents.svg
366
- selection_regret_final.png
367
- supporting_rank_map_final.png
368
- primary_rank_change_final.png
369
- paper_outputs/figures/
370
- matching.pdf
371
- fig_task_contract_tiles.pdf
372
- fig_selection_regret_scatter.pdf
373
- fig_rank_heatmap1.pdf
374
- artifacts/
375
- manifests/
376
- results/
377
- data_sources/
378
- DATA_SOURCES.md
379
- experiments/
380
- raw_reference/
381
- slurm/
382
- scripts/
383
- audit_release.py
384
- reproduce_paper_outputs.py
385
- ```
386
 
387
- ---
 
 
 
 
388
 
389
- ## How To Cite
 
390
 
391
- If you use WildFIRE-FM, the released checkpoints, the fixed-contract evaluation artifacts, or the paper-aligned scripts, please cite:
392
 
393
  ```bibtex
394
- @misc{wildfire_fm_evaluation_contracts_2026,
395
- title = {Does Your Wildfire Prediction Model Actually Work, or Just Score Well?},
396
- author = {Yangshuang Xu and Yuyang Dai and Liling Chang and Qi Wang and Yushun Dong},
397
  year = {2026},
398
- note = {WildFIRE-FM model and fixed-contract wildfire evaluation artifacts}
399
  }
400
  ```
401
-
402
- The citation will be updated with arXiv metadata after the preprint is public.
403
-
404
- ---
405
-
406
- ## News
407
-
408
- - **2026-05-18** - The model card was reorganized with a larger navigation panel and final-paper visual previews.
409
- - **2026-05-13** - The Hub release added the compiled paper PDF without checklist pages.
410
- - **2026-05-13** - Five seeded WildFIRE-FM checkpoints were uploaded with SHA-256 metadata.
411
-
412
- ---
413
-
414
- ## Scope
415
-
416
- WildFIRE-FM is scoped to the paper's California regional grid and fixed-contract wildfire transfer comparisons. Use in a new region or grid should start with local preprocessing, validation, and contract-specific evaluation. The release is designed for research inspection, artifact-level checking, and model-loading experiments rather than operational alerting.
417
-
418
- ---
419
-
420
- ## License
421
-
422
- This release is provided under the MIT license. External data and comparator assets remain governed by their original providers and terms of use.
423
-
424
- ---
425
-
426
- WildFIRE-FM is released to make wildfire Earth-FM transfer comparisons easier to inspect, reproduce at the artifact level, and evaluate under explicit contracts.
 
5
  - geospatial
6
  - weather
7
  - earth-observation
 
 
8
  - pytorch
9
+ - reproducibility
10
  pipeline_tag: image-segmentation
11
  library_name: pytorch
12
+ pretty_name: FireWx-FM
13
  ---
14
 
15
+ # FireWx-FM
16
 
17
+ FireWx-FM is a wildfire-focused gridded model for 12-hour active-fire occupancy
18
+ prediction over the Lower 48 United States. The released code maps a fixed
19
+ 16-channel tensor on a 5 km EPSG:5070 grid to an active-fire occupancy
20
+ probability map.
21
 
22
+ This Hugging Face release is the clean ICLR/technical-report companion package:
23
+ it includes model code, checkpoints, inference utilities, training/cache
24
+ templates, public data-source notes, example outputs, the ICLR manuscript
25
+ source, and the technical report source.
26
 
27
+ ## Contents
28
 
29
+ | Path | Purpose |
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
30
  |---|---|
31
+ | `firewxfm/` | Model definition and tiled CONUS inference code. |
32
+ | `models/checkpoints/` | Released PyTorch checkpoints. |
33
+ | `models/metadata/` | Input-channel contract, normalization statistics, and run metadata. |
34
+ | `training/` | Cache-building, training, and metric utilities. |
35
+ | `training/configs/` | Path-free templates for CONUS and multi-year reruns. |
36
+ | `scripts/` | Data preparation, release checks, live-stack builder, seam audit, and smoke tests. |
37
+ | `examples/final_prediction/` | Small final probability/preview example for inspection. |
38
+ | `data_sources/` | Source-data provenance and access notes. |
39
+ | `paper/iclr_source/` | ICLR manuscript LaTeX source. |
40
+ | `technical_report/source/` | Technical report LaTeX source. |
41
+ | `artifacts/results/` | Compact public result summaries without internal filesystem paths. |
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
42
 
43
  ## Quick Start
44
 
 
 
45
  ```bash
46
+ python3 -m venv .venv
47
+ source .venv/bin/activate
48
+ pip install -r requirements.txt
49
+ python3 scripts/check_release_files.py
50
+ python3 scripts/smoke_inference.py --device cpu
51
  ```
52
 
53
+ The smoke test uses a synthetic tensor. Full scientific reproduction requires
54
+ the public source datasets listed in `data_sources/DATA_SOURCES.md`.
55
 
56
+ ## Model Input Contract
 
 
57
 
58
+ The model expects a channel-first tensor with shape `[16,H,W]`.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
59
 
60
+ | Channels | Source | Role |
61
+ |---:|---|---|
62
+ | 0-9 | NOAA HRRR | Dynamic weather fields. |
63
+ | 10-11 | Input builder | Dynamic and static validity masks. |
64
+ | 12 | LANDFIRE | Fire-behavior fuel model. |
65
+ | 13 | LANDFIRE | Canopy cover. |
66
+ | 14-15 | WRC / LandScan | Housing density and population; zeroed in the no-exposure serving run. |
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
67
 
68
+ See `models/metadata/input_channels.json` and
69
+ `models/metadata/input_normalization_stats.json` for the exact machine-readable
70
+ contract.
71
 
72
+ ## Inference
73
 
74
+ Run inference from a prebuilt 16-channel stack:
75
 
76
+ ```bash
77
+ python3 -m firewxfm.serve_conus \
78
+ --input-npy /path/to/input_stack_16chw.npy \
79
+ --checkpoint models/checkpoints/firewxfm_2024_staticfix_region_balanced_bce_seed42.pt \
80
+ --normalization-stats models/metadata/input_normalization_stats.json \
81
+ --output-npy outputs/firewxfm_probability.npy
82
+ ```
83
 
84
+ For full-map serving, use overlap-window inference with phase averaging. The
85
+ default settings are documented in `docs/serving_notes.md`.
86
 
87
+ ## Reproducibility
88
 
89
+ Use `REPRODUCIBILITY.md` for the exact verification path:
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
90
 
91
+ - artifact presence check,
92
+ - checkpoint smoke inference,
93
+ - ICLR source compilation,
94
+ - technical report source compilation,
95
+ - real-data cache rebuild and retraining commands.
96
 
97
+ Raw source data are not redistributed. This package documents where each source
98
+ comes from and provides path-free templates for local reproduction.
99
 
100
+ ## Citation
101
 
102
  ```bibtex
103
+ @misc{firewxfm2026,
104
+ title = {FireWx-FM: A Wildfire Foundation Model Technical Report},
105
+ author = {Xu, Yangshuang and Dai, Yuyang and Chang, Liling and Wang, Qi and Dong, Yushun},
106
  year = {2026},
107
+ note = {FireWx-FM code, checkpoints, and reproducibility package}
108
  }
109
  ```