{"id":64160,"name":"wildfire forecasting","description":"The project intends to reproduce the Fire Forecasting capabilities of GEFF using Deep Learning and develop further improvements in accuracy, geography and time scale through inclusion of additional variables or optimization of model architecture and hyperparameters.","url":"https://github.com/ECMWFCode4Earth/wildfire-forecasting","last_synced_at":"2026-04-20T01:02:15.854Z","repository":{"id":55550784,"uuid":"263941397","full_name":"ECMWFCode4Earth/wildfire-forecasting","owner":"ECMWFCode4Earth","description":"Forecasting wildfire danger using deep learning.","archived":false,"fork":false,"pushed_at":"2022-01-23T21:11:40.000Z","size":944926,"stargazers_count":57,"open_issues_count":1,"forks_count":12,"subscribers_count":3,"default_branch":"master","last_synced_at":"2026-04-07T19:04:36.440Z","etag":null,"topics":["deep-learning","earth-observation","gis","remote-sensing","wildfire-forecasting"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ECMWFCode4Earth.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-05-14T14:42:07.000Z","updated_at":"2026-03-28T21:52:47.000Z","dependencies_parsed_at":"2022-08-15T03:00:55.152Z","dependency_job_id":null,"html_url":"https://github.com/ECMWFCode4Earth/wildfire-forecasting","commit_stats":null,"previous_names":["esowc/wildfire-forecasting"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ECMWFCode4Earth/wildfire-forecasting","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ECMWFCode4Earth%2Fwildfire-forecasting","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ECMWFCode4Earth%2Fwildfire-forecasting/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ECMWFCode4Earth%2Fwildfire-forecasting/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ECMWFCode4Earth%2Fwildfire-forecasting/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ECMWFCode4Earth","download_url":"https://codeload.github.com/ECMWFCode4Earth/wildfire-forecasting/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ECMWFCode4Earth%2Fwildfire-forecasting/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31772642,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-13T20:17:16.280Z","status":"ssl_error","status_checked_at":"2026-04-13T20:17:08.216Z","response_time":93,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"owner":{"login":"ECMWFCode4Earth","name":"ECMWF Code for Earth","uuid":"44897980","kind":"organization","description":"ECMWF Code for Earth is a collaborative programme where each summer several developer teams work on innovative earth sciences-related software.","email":null,"website":"https://codeforearth.ecmwf.int","location":"Online","twitter":"ECMWFCode4Earth","company":null,"icon_url":"https://avatars.githubusercontent.com/u/44897980?v=4","repositories_count":37,"last_synced_at":"2023-05-10T13:37:08.293Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/ECMWFCode4Earth","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-13T15:01:28.778Z","updated_at":"2023-05-10T13:37:08.420Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ECMWFCode4Earth","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ECMWFCode4Earth/repositories"},"packages":[],"commits":{"id":1256358,"full_name":"ECMWFCode4Earth/wildfire-forecasting","default_branch":"master","total_commits":234,"total_committers":4,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":58.5,"dds":0.36752136752136755,"past_year_total_commits":0,"past_year_total_committers":0,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":0.0,"past_year_dds":0.0,"last_synced_at":"2026-04-16T00:11:32.197Z","last_synced_commit":"965c098c65089e8085bedd0464f5ad35cffea321","created_at":"2023-04-11T14:35:51.607Z","updated_at":"2026-04-16T00:11:05.891Z","committers":[{"name":"Roshni Biswas","email":"rbiswas@ds.dfci.harvard.edu","login":"roshni-b","count":148},{"name":"lazyoracle","email":"contact@anuragsaharoy.me","login":"lazyoracle","count":79},{"name":"lazyoracle","email":"anurag@atomionics.com","login":null,"count":6},{"name":"lazyoracle","email":"contact@anuragsaharoy@me","login":null,"count":1}],"past_year_committers":[],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/ECMWFCode4Earth%2Fwildfire-forecasting/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-18T00:00:07.883Z","repositories_count":6214395,"commits_count":900584562,"contributors_count":34924633,"owners_count":1144549,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"ECMWFCode4Earth/wildfire-forecasting","html_url":"https://github.com/ECMWFCode4Earth/wildfire-forecasting","last_synced_at":"2025-09-01T08:04:14.617Z","status":"error","issues_count":8,"pull_requests_count":44,"avg_time_to_close_issue":727314.4285714285,"avg_time_to_close_pull_request":100631.38636363637,"issues_closed_count":7,"pull_requests_closed_count":44,"pull_request_authors_count":3,"issue_authors_count":5,"avg_comments_per_issue":1.5,"avg_comments_per_pull_request":0.18181818181818182,"merged_pull_requests_count":40,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"created_at":"2023-05-09T10:59:52.942Z","updated_at":"2025-09-01T08:04:14.618Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/ECMWFCode4Earth%2Fwildfire-forecasting","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/ECMWFCode4Earth%2Fwildfire-forecasting/issues","issue_labels_count":{"bug":2,"enhancement":1},"pull_request_labels_count":{"enhancement":2,"documentation":2},"issue_author_associations_count":{"MEMBER":5,"NONE":3},"pull_request_author_associations_count":{"MEMBER":43,"NONE":1},"issue_authors":{"lazyoracle":3,"roshni-b":2,"99snowleopards":1,"cvitolo":1,"Gunnika":1},"pull_request_authors":{"roshni-b":26,"lazyoracle":17,"cvitolo":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-18T00:00:07.858Z","repositories_count":14300766,"issues_count":34554680,"pull_requests_count":113097042,"authors_count":11237117,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{},"past_year_pull_request_author_associations_count":{},"past_year_issue_authors":{},"past_year_pull_request_authors":{},"maintainers":[{"login":"roshni-b","count":28,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/roshni-b"},{"login":"lazyoracle","count":20,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lazyoracle"}],"active_maintainers":[]},"events":{"total":{"ForkEvent":1,"WatchEvent":3},"last_year":{"ForkEvent":1,"WatchEvent":2}},"keywords":["deep-learning","earth-observation","gis","remote-sensing","wildfire-forecasting"],"dependencies":[{"ecosystem":"pypi","filepath":"docs/requirements.txt","sha":null,"kind":"manifest","created_at":"2022-08-15T03:00:54.499Z","updated_at":"2022-08-15T03:00:54.499Z","repository_link":"https://github.com/ECMWFCode4Earth/wildfire-forecasting/blob/master/docs/requirements.txt","dependencies":[{"id":1732550562,"package_name":"sphinx","ecosystem":"pypi","requirements":"==3.1.1","direct":true,"kind":"runtime","optional":false},{"id":1732550563,"package_name":"sphinx-autoapi","ecosystem":"pypi","requirements":"==1.4.0","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"environment.yml","sha":null,"kind":"manifest","created_at":"2022-08-15T03:00:54.656Z","updated_at":"2022-08-15T03:00:54.656Z","repository_link":"https://github.com/ECMWFCode4Earth/wildfire-forecasting/blob/master/environment.yml","dependencies":[{"id":1732553641,"package_name":"gsutil","ecosystem":"pypi","requirements":"==4.52","direct":true,"kind":"runtime","optional":false},{"id":1732553642,"package_name":"netcdf4","ecosystem":"pypi","requirements":"==1.5.3","direct":true,"kind":"runtime","optional":false},{"id":1732553643,"package_name":"pytorch-lightning","ecosystem":"pypi","requirements":"==0.9.0","direct":true,"kind":"runtime","optional":false},{"id":1732553644,"package_name":"sphinx-autoapi","ecosystem":"pypi","requirements":"==1.4.0","direct":true,"kind":"runtime","optional":false},{"id":1732553645,"package_name":"wandb","ecosystem":"pypi","requirements":"==0.8.36","direct":true,"kind":"runtime","optional":false}]}],"score":5.44673737166631,"created_at":"2023-09-18T12:26:44.947Z","updated_at":"2026-04-20T01:02:15.858Z","avatar_url":"https://github.com/ECMWFCode4Earth.png","language":"Jupyter Notebook","category":"Biosphere","sub_category":"Wildfire","monthly_downloads":0,"total_dependent_repos":0,"total_dependent_packages":0,"readme":"# Forecasting Wildfire Danger Using Deep Learning\n\n[![Documentation Status](https://readthedocs.org/projects/wildfire-forecasting/badge/?version=latest)](https://wildfire-forecasting.readthedocs.io/en/latest/?badge=latest)  [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/esowc/wildfire-forecasting/master) \u003ca href=\"https://github.com/psf/black\"\u003e\u003cimg alt=\"Code style: black\" src=\"https://img.shields.io/badge/code%20style-black-000000.svg\"\u003e\u003c/a\u003e\n\n- [Introduction](#introduction)\n- [TL; DR](#tl--dr)\n- [Getting Started](#getting-started)\n  * [Using Binder](#using-binder)\n  * [Clone this repo](#clone-this-repo)\n  * [Using conda](#using-conda)\n  * [Using Docker](#using-docker)\n- [Running Inference](#running-inference)\n- [Implementation overview](#implementation-overview)\n- [Documentation](#documentation)\n- [Acknowledgements](#acknowledgements)\n\n## Introduction\n\nThe Global ECMWF Fire Forecasting (GEFF) system, implemented in Fortran 90, is based on empirical models conceptualised several decades back. Recent GIS \u0026 Machine Learning advances could, theoretically, be used to boost these models' performance or completely replace the current forecasting system. However thorough benchmarking is needed to compare GEFF to Deep Learning based prediction techniques.\n\nThe project intends to reproduce the Fire Forecasting capabilities of GEFF using Deep Learning and develop further improvements in accuracy, geography and time scale through inclusion of additional variables or optimisation of model architecture \u0026 hyperparameters. Finally, a preliminary fire spread prediction tool is proposed to allow monitoring activities.\n\n## TL; DR\n\nThis codebase (and this README) is a work-in-progress. The `master` is a stable release and we aim to address issues and introduce enhancements on a rolling basis. If you encounter a bug, please [file an issue](https://github.com/esowc/wildfire-forecasting/issues/new). Here are a quick few pointers that *just work* to get you going with the project:\n\n* Clone \u0026 navigate into the repo and create a conda environment using `environment.yml` on Ubuntu 18.04 and 20.04 only.\n* All EDA and Inference notebooks must be run within this environment. Use `conda activate wildfire-dl`\n* Check out the EDA notebooks titled [`EDA_X_mini_sample.ipynb`](data/EDA). We recommend `jupyterlab`.\n* Check out the Inference notebooks for [`1 day, 10 day, 14 day and 21 day predictions`](examples/).\n* The notebooks also include code to download a small sample  dataset.\n\n**Next:**\n\n* See [Getting Started](#getting-started) for how to set up your local environment for training or inference\n* For a detailed description of the project codebase, check out the [Code_Structure_Overview](Code_Structure_Overview.md)\n* Read the [Running Inference](#running-inference) section for testing pre-trained models on sample data.\n* See [Implementation Overview](#implementation-overview) for details on tools \u0026 frameworks and how to retrain the model.\n\nThe work-in-progress documentation can be viewed online on [wildfire-forecasting.readthedocs.io](https://wildfire-forecasting.readthedocs.io/en/latest/).\n\n## Getting Started\n\n### Using Binder\n\nWhile we have included support for launching the repository in [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/esowc/wildfire-forecasting/master), the limited memory offered by Binder means that you might end up with crashed/dead kernels while trying to test the `Inference` or the `Forecast` notebooks. At this point, we don't have a workaround for this issue.\n\n### Clone this repo\n\n```bash\ngit clone https://github.com/esowc/wildfire-forecasting.git\ncd wildfire-forecasting\n```\n\nOnce you have cloned and navigated into the repository, you can set up a development environment using either `conda` or `docker`. Refer to the relevant instructions below and then skip to the next section on [Running Inference](#running-inference)\n\n### Using conda\n\nTo create the environment, run:\n\n```bash\nconda env create -f environment.yml\nconda clean -a\nconda activate wildfire-dl\n```\n\n\u003eThe setup is tested on Ubuntu 18.04, 20.04 and Windows 10 only. On systems with CUDA supported GPU and CUDA drivers set up, the conda environment and the code ensure that GPUs are used by default for training and inference. If there isn't sufficient GPU memory, this will typically lead to Out of Memory Runtime Errors. As a rule of thumb, around 4 GiB GPU memory is needed for inference and around 12 GiB for training.\n\n### Using Docker\n\nWe include a `Dockerfile` \u0026 `docker-compose.yml` and provide detailed instructions for setting up your development environment using Docker for training on both CPUs and GPUs. Please head over to the [Docker README](docker/README.md) for more details.\n\n## Running Inference\n\n* **Examples**:\u003cbr\u003e\n  The [Inference_2_1.ipynb](examples/Inference_2_1.ipynb), [Inference_4_10.ipynb](examples/Inference_4_10.ipynb), [Inference_4_14.ipynb](examples/Inference_4_14.ipynb), [Inference_7_21.ipynb](examples/Inference_7_21.ipynb) notebooks demonstrate the end-to-end procedure of loading data, creating model from saved checkpoint, and getting the predictions for 2 day input, 1 day output; and 4 day input, 10 day output, 4 day input, 14 day output and 7 day input, 21 day output experiments respectively.\n\n* **Testing data**:\u003cbr\u003e\n  Ensure the access to fwi-forcings and fwi-reanalysis data. Limited sample data is available at `gs://deepgeff-data-v0` (Released for educational purposes only).\n\n* **Pre-trained model**:\u003cbr\u003e\n  All previously trained models are listed in [pre-trained_models.md](src/model/checkpoints/pre-trained_models.md) with associated metadata. Select and download the desired pre-trained model checkpoint file via gsutil from `gs://deepgeff-models-v0`, set the `$CHECKPOINT_FILE`, `$FORCINGS_DIR` and `$REANALYSIS_DIR` directory paths through the flags while running testing or inference.\n\n  * Example usage:\n  `python src/test.py -in-days=2 -out-days=1 -forcings-dir=${FORCINGS_DIR} -reanalysis-dir=${REANALYSIS_DIR} -checkpoint-file='path/to/checkpoint'`\n\n## Implementation overview\n\n![deep-learning-network-architecture](./docs/source/_static/unet_tapered.svg)\nWe implement a modified U-Net style Deep Learning architecture using [PyTorch 1.6](https://pytorch.org/docs/stable/index.html). We use [PyTorch Lightning](https://github.com/PyTorchLightning/pytorch-lightning) for code organisation and reducing boilerplate. The mammoth size of the total original dataset (~1TB) means we use extensive GPU acceleration in the code using [NVIDIA CUDA Toolkit](https://developer.nvidia.com/cuda-toolkit). For a GeForce RTX 2080 with 12GB memory and 40 vCPUs with 110 GB RAM, this translates to a 25x speedup over using only 8 vCPUs with 52GB RAM.\n\nFor reading geospatial datasets, we use [`xarray`](http://xarray.pydata.org/en/stable/quick-overview.html) and [`netcdf4`](https://unidata.github.io/netcdf4-python/netCDF4/index.html). The [`imbalanced-learn`](https://imbalanced-learn.readthedocs.io/en/stable/under_sampling.html) library is useful for Undersampling to tackle the high data skew. Code-linting and formatting is done using [`black`](https://black.readthedocs.io/en/stable/) and [`flake8`](https://flake8.pycqa.org/en/latest/).\n\n  - The entry point for training is [src/train.py](src/train.py). Input variables used for training the model, by default, as configured in the [master](https://github.com/esowc/wildfire-forecasting/tree/master) branch, are `Temperature`, `Precipitation`, `Windspeed` and `Relative Humidity`. Support for additional variables `Leaf Area Index`, `Volumetric Soil Water Level 1` and `Land Skin Temperature` and implemented in the respective [branches](https://github.com/esowc/wildfire-forecasting/branches):\n\n    - For training with input variables `t2`, `tp`, `wspeed` and `rh` + additionally `lai`, switch to the [lai](https://github.com/esowc/wildfire-forecasting/tree/lai) branch. **Note:** You will additionally require require the data for precisely these 5 variables in the /data dir to perform the training/inference for this combination of inputs.\n\n    - For training with input variables `t2`, `tp`, `wspeed` and `rh` + additionally `swvl1`, switch to the [swvl1](https://github.com/esowc/wildfire-forecasting/tree/swvl1) branch. **Note:** You will additionally require require the data for precisely these 5 variables in the /data dir to perform the training/inference for this combination of inputs.\n\n    - For training with input variables `t2`, `tp`, `wspeed` and `rh` + additionally `skt`, switch to the [skt](https://github.com/esowc/wildfire-forecasting/tree/skt) branch. **Note:** You will additionally require require the data for precisely these 5 variables in the /data dir to perform the training/inference for this combination of inputs.\n\n    - For training with input variables `t2`, `tp`, `wspeed` and `rh` + additionally `skt` as well as `swvl1`, switch to the [skt+swvl1](https://github.com/esowc/wildfire-forecasting/tree/skt+swvl1) branch. **Note:** You will additionally require the data for precisely these 6 variables in the `/data` dir to perform the training/inference for this combination of inputs.\n\n      * **Example Usage**: `python src/train.py [-in-days 4] [-out-days 1] [-forcings-dir ${FORCINGS_DIR}] [-reanalysis-dir ${REANALYSIS_DIR}]`\n\n  * **Dataset**: We train our model on 1 year of global data. The `gs://deepgeff-data-v0` dataset demonstrated in the various EDA and Inference notebooks are not intended for use with `src/train.py`. The scripts will fail if used with those small datasets. If you intend to re-run the training, reach out to us for access to a bigger dataset necessary for the scripts.\n\n  * **Logging**: We use [Weights \u0026 Biases](https://www.wandb.com/) for logging our training. When running the training script, you can either provide a `wandb API key` or choose to skip logging altogether. W\u0026B logging is free and lets you monitor your training remotely. You can sign up for an account and then use `wandb login` from inside the environment to supply the key.\n\n  * **Visualizing Results**: Upon completion of training, the results summary json from `wandb` can be visualized in terms of Accuracy %, MSE % and MAE % using the plotting module.\n    * **Example Usage**:\n  `python src/plot.py -f \u003cfile\u003e -i \u003cin-days\u003e -o \u003cout-days\u003e`\n\n* The entry point for inference is [src/test.py](src/test.py). **Note:** When performing inference for a model trained with an additional variable in any of the branches, ensure access to the respective variables in the /data dir.\n  * **Example Usage**: `python src/test.py [-in-days 4] [-out-days 1] [-forcings-dir ${FORCINGS_DIR}] [-reanalysis-dir ${REANALYSIS_DIR}] [-checkpoint-file ${CHECKPOINT_FILE}]`\n\n* **Configuration Details**:\n\n\u003cbr\u003e Optional arguments (default values indicated below):\n\n    `  -h, --help show this help message and exit`\n\u003cpre\u003e    -init-features 16                       Architecture complexity [int]\n    -in-days 4                              Number of input days [int]\n    -out-days 1                             Number of output days [int]\n    -epochs 100                             Number of training epochs [int]\n    -learning-rate 0.001                    Maximum learning rate [float]\n    -batch-size 1                           Batch size of the input [int]\n    -split 0.2                              Test split fraction [float]\n    -use-16bit True                         Use 16-bit precision for training (train only) [Bool]\n    -gpus 1                                 Number of GPUs to use [int]\n    -optim one_cycle                        Learning rate optimizer: one_cycle or cosine (train only) [str]\n    -dry-run False                          Use small amount of data for sanity check [Bool]\n    -case-study False                       The case-study region to use for inference: australia,california, portugal, siberia, chile, uk [Bool/str]\n    -clip-output False                      Limit the inference to the output values within supplied range (e.g. 0.5,60) [Bool/list]\n    -boxcox 0.1182                          Apply boxcox transformation with specified lambda while training and the inverse boxcox transformation during the inference. [Bool/float]\n    -binned \"0,5.2,11.2,21.3,38.0,50\"       Show the extended metrics for supplied comma separated binned FWI value range [Bool/list]\n    -undersample False                      Undersample the datapoints having smaller than specified FWI (e.g. -undersample=10) [Bool/float]\n    -round-to-zero False                    Round off the target values below the specified threshold to zero [Bool/float]\n    -date-range 2019-04-01,2019-05-01       Limit prediction to a smaller subset of dates than available in the data directories [Bool/float]\n    -cb_loss False                          Use Class-Balanced loss with the supplied beta parameter [Bool/float]\n    -chronological_split False              Do chronological train-test split in the specified ratio [Bool/float]\n    -model unet_tapered                     Model to use: unet, unet_downsampled, unet_snipped, unet_tapered, unet_interpolated [str]\n    -out fwi_reanalysis                     Output data for training: gfas_frp or fwi_reanalysis [str]\n    -smos_input False                       Use soil-moisture input data [Bool]\n    -forecast-dir ${FORECAST_DIR}           Directory containing forecast data. Alternatively set $FORECAST_DIR [str]\n    -forcings-dir ${FORCINGS_DIR}           Directory containing forcings data. Alternatively set $FORCINGS_DIR [str]\n    -reanalysis-dir ${REANALYSIS_DIR}       Directory containing reanalysis data. Alternatively set $REANALYSIS_DIR [str]\n    -smos-dir ${SMOS_DIR}                   Directory containing soil moisture data. Alternatively set $SMOS_DIR [str]\n    -mask src/dataloader/mask.npy           File containing the mask stored as the numpy array [str]\n    -benchmark False                        Benchmark the FWI-Forecast data against FWI-Reanalysis [Bool]\n    -comment Comment of choice!             Used for logging [str]\n    -checkpoint-file                        Path to the test model checkpoint [Bool/str]\u003c/pre\u003e\n\n* The [src/](src) directory contains the architecture implementation.\n  * The [src/dataloader/](src/dataloader) directory contains the implementation specific to the training data.\n  * The [src/model/](src/model) directory contains the model implementation.\n  * The [src/model/base_model.py](src/model/base_model.py) script has the common implementation used by every model.\n  * The [src/config/](src/config) directory stores the config files generated via training.\n\n* The [data/EDA/](data/EDA/) directory contains the Exploratory Data Analysis and Preprocessing required for forcings data demonstrated via Jupyter Notebooks.\n  * Forcings: [data/EDA/EDA_forcings_mini_sample.ipynb](data/EDA/EDA_forcings_mini_sample.ipynb) (*Resolution: 0.07 deg x 0.07 deg, 10 days*)\n  * FWI-Reanalysis: [data/EDA/EDA_reanalysis_mini_sample.ipynb](data/EDA/EDA_reanalysis_mini_sample.ipynb) (*Resolution: 0.1 deg x 0.1 deg, 1 day*)\n  * FWI-Forecast: [data/EDA/EDA_forecast_mini_sample.ipynb](data/EDA/EDA_forecast_mini_sample.ipynb) (*Resolution: 0.1 deg x 0.1 deg, 10 days*)\n\n\n* A walk-through of the codebase is in the [Code_Structure_Overview.md](Code_Structure_Overview.md).\n\n## Documentation\n\nWe use Sphinx for building our docs and host them on Readthedocs. The latest build of the docs can be accessed online [here](https://wildfire-forecasting.readthedocs.io/en/latest/). In order to build the docs from source, you will need `sphinx` and `sphinx-autoapi`. Follow the instructions below:\n\n```bash\ncd docs\nmake html\n```\n\nOnce the docs get built, you can access them inside [`docs/build/html/`](docs/build/html/index.html).\n\n## Acknowledgements\n\nThis project tackles [Challenge #26](https://github.com/esowc/challenges_2020/issues/10) from Stream 2: Machine Learning and Artificial Intelligence, as part of the [ECMWF Summer of Weather Code 2020](https://esowc.ecmwf.int/) Program.\n\nTeam: Roshni Biswas, Anurag Saha Roy, Tejasvi S Tomar.\n","funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://ost.ecosyste.ms/api/v1/projects/64160","html_url":"https://ost.ecosyste.ms/projects/64160"}