| | --- |
| | language: en |
| | license: mit |
| | tags: |
| | - precipitation |
| | - convlstm |
| | - multitask-learning |
| | - climate |
| | - vegetation |
| | - amazon |
| | model-index: |
| | - name: MultiTask ConvLSTM w/veg inputs |
| | results: |
| | - task: |
| | type: time-series-forecasting |
| | name: Precipitation Prediction |
| | dataset: |
| | name: ERA5-Land Amazon Basin (2021–2023) |
| | type: reanalysis |
| | metrics: |
| | - type: mean_squared_error |
| | value: 0.28 |
| | - type: spearman_correlation |
| | value: 0.87 |
| | - type: pearson_correlation |
| | value: 0.79 |
| | - type: kendall_tau |
| | value: 0.70 |
| | - type: nash_sutcliffe_efficiency |
| | value: 0.62 |
| | - type: f1 |
| | value: 0.82 |
| | - type: accuracy |
| | value: 0.90 |
| | - type: precision |
| | value: 0.90 |
| | - type: ROC-AUC |
| | value: 0.97 |
| | - type: recall |
| | value: 0.75 |
| | --- |
| | |
| | # MultiTask ConvLSTM for Precipitation Prediction |
| |
|
| | This repository contains two MultiTask ConvLSTM models: |
| | - **veg/**: Model trained with vegetation input variables |
| | - **noveg/**: Model trained without vegetation input variables |
| |
|
| | Both directories include: |
| | - `convlstm.py`: base ConvLSTM layers |
| | - `model.py`: MultiTask ConvLSTM model definition |
| | - `example_inference.py`: inference script |
| | - `data/`: example `.pth` files (test) |
| |
|
| | These scripts are provided for reproducibility of the model architecture and workflow. |
| | Exact runtime and performance may vary depending on hardware. |
| |
|
| | ## Example Data |
| |
|
| | We provide a large test `.pth` files |
| | so you can immediately run the inference script without preprocessing. |
| | These files are already preprocessed and normalized from the ECWMF REA5 reanalysis data. |
| |
|
| | Each `.pth` file loads as a list of batches: |
| |
|
| | - `X_batch`: shape `(B, T_in, C_in, H*W)` |
| | - `y_batch`: shape `(B, T_out, C_out, H*W)` |
| | - `y_zero_batch`: shape `(B, T_out, C_out, H*W)` |
| |
|
| | with `H=81`, `W=97`. Inside `evaluate(...)`, these are reshaped to `(B, T, C, H, W)`. |
| |
|
| | --- |
| |
|
| | ## How to Use |
| |
|
| | Ensure all files are in the correct directory then run the example_inference.py file. |
| | |
| | # 1 Get the repo |
| | git clone https://huggingface.co/<your-username>/MultiTaskConvLSTM |
| | cd MultiTaskConvLSTM |
| | |
| | # 2 Install minimal deps |
| | pip install -r requirements.txt |
| | |
| | # 3 Run inference (choose one variant) |
| | python veg/example_inference.py |
| | # or |
| | python noveg/example_inference.py |
| | |
| | |
| | ## Citation If you use this model, please cite: > Lilly Horvath-Makkos (2025). [title] [journal] BibTeX: |
| | bibtex |
| | @article{horvathmakkos2025, |
| | title={Title}, |
| | author={Horvath-Makkos, Lilly}, |
| | journal={Journal}, |
| | year={2025} |
| | } |