Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
cf14cb6
claire en23 data module
melwey Sep 21, 2023
ccf6882
dx minicubes
melwey Dec 12, 2023
292856d
Merge branch 'main' into melanie-de
melwey Dec 12, 2023
e5dd4c3
move files and test path
melwey Dec 13, 2023
5052982
fix init
melwey Dec 13, 2023
f23251a
fix name
Clair3 Dec 13, 2023
f6de896
add get_dataset fct to select the folds for the set
melwey Dec 13, 2023
8653196
add self to get_dataset
melwey Dec 14, 2023
266cbc6
debug target
melwey Dec 14, 2023
8a56d76
update model + dataloader, it works youhou!
melwey Dec 14, 2023
a93a545
move mask to data loader
melwey Dec 14, 2023
a8f72d6
refactor lc_mask in dataset for all dataset, metrics and loss
Clair3 Dec 14, 2023
1bfd275
remove print from data loader
melwey Dec 14, 2023
7577967
Prepare for train
melwey Dec 14, 2023
17d3938
add normalisation of era5 variables
melwey Dec 15, 2023
f892b6e
Merge branch 'melanie-de' of https://github.com/vitusbenson/earthnet-…
melwey Dec 15, 2023
362b2d9
convert nans to zeros
melwey Dec 15, 2023
9f41b48
add slurm scripts to .gitignore
melwey Dec 15, 2023
e1e7e0b
vary learning rate
melwey Jan 1, 2024
fc8a4a2
Change type of val_fold and test_fold to int
melwey Jan 5, 2024
0f5e89e
add de23
melwey Jan 10, 2024
35c5c20
learning rate 1e-3
melwey Jan 10, 2024
da995fd
add start date
melwey Jan 16, 2024
06695ad
update requirements
melwey Jan 16, 2024
136d396
add case for deepextremes
melwey Jan 16, 2024
78c394a
metric computation for deepextremes
melwey Jan 16, 2024
a1aaf1e
Fix mask.
melwey Jan 18, 2024
8ac85ee
add option for no lc mask
melwey Jan 18, 2024
9583d50
fix mask and season
melwey Jan 18, 2024
a3590d2
fix rmse
melwey Jan 22, 2024
d280e1b
lc_mask condition
melwey Jan 25, 2024
93a5d2f
invisible changes to files by claire
melwey Jan 25, 2024
0f942e0
fix mask agaiiiiin
Clair3 Jan 30, 2024
258b889
update pre and postprocessing
Clair3 Mar 5, 2024
0e60cf3
add season
melwey Mar 6, 2024
08379c9
Merge branch 'melanie-de' of https://github.com/vitusbenson/earthnet-…
melwey Mar 6, 2024
0429872
add de interpolation
Clair3 Mar 6, 2024
3df9801
Merge branch 'melanie-de' of https://github.com/earthnet2021/earthnet…
Clair3 Mar 6, 2024
5b62640
Update de23_add_interpolation.py - all files
Clair3 Mar 28, 2024
b12f0bb
add context/target length as parameter
melwey Oct 15, 2024
c895f9e
Merge branch 'melanie-de' of https://github.com/vitusbenson/earthnet-…
melwey Oct 15, 2024
081d4a5
Merge branch 'main' into melanie-de
vitusbenson Sep 25, 2025
16c904f
smaller fixes due to what went wrong during merging
vitusbenson Oct 9, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -152,3 +152,4 @@ checkpoints/*
*.png
*.nc
*.zarr
*.slurm
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ We recommend using Anaconda for managing dependencies of this library. The follo
conda create -n emp -c conda-forge python
conda activate emp
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu126
pip install numpy matplotlib pillow xarray zarr netcdf4 scipy imageio networkx scikit-image s3fs pyproj pyarrow seaborn cartopy tensorboard dask pytorch-lightning torchmetrics statsmodels earthnet earthnet-minicuber segmentation-models-pytorch albumentations ipykernel
pip install numpy matplotlib pillow xarray zarr netcdf4 scipy imageio networkx scikit-image s3fs pyproj pyarrow seaborn cartopy tensorboard dask pytorch-lightning torchmetrics statsmodels earthnet earthnet-minicuber segmentation-models-pytorch albumentations ipykernel geopandas
```

## Installation
Expand Down
84 changes: 84 additions & 0 deletions configs/de23/convlstm_ae/all_variables.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
Architecture: "convlstm_ae"

Seed: 42

Setting: "de23"

Logger:
save_dir: "experiments/"


Checkpointer:
save_top_k: 1
save_last: True
every_n_epochs: 1

Trainer:
gpus: 1
strategy: 'ddp_find_unused_parameters_false'
#deterministic: True
log_every_n_steps: 32
profiler: 'simple'
accumulate_grad_batches: 8
#fast_dev_run: True
#log_gpu_memory: 'all'
#weights_summary: 'full'
max_epochs: 30
#limit_train_batches: 32
#limit_val_batches: 32
gradient_clip_val: 1
# check_val_every_n_epoch: 1 # default setting
# Whether to use torch.inference_mode() or torch.no_grad() mode during evaluation
# inference_mode: True # if False use 'torch.no_grad' instead.
val_check_interval: 0.25 #0.005 #

Data:
base_dir: "/Net/Groups/BGI/tscratch/mweynants/dx-minicubes" # "/Net/Groups/BGI/work_2/scratch/DeepExtremes/dx-minicubes" #
test_fold: 10
val_fold: 9
fold_path: "/Net/Groups/BGI/work_2/scratch/DeepExtremes/mc_earthnet.csv"
test_track: "iid"
target: "ndvi"
train_batch_size: 4
val_batch_size: 4
test_batch_size: 4
num_workers: 4


Task:
loss:
name: "MaskedPixelwiseLoss"
# lc_min: 40
# lc_max: 90
ndvi_pred_idx: 0 # index of the NDVI band
ndvi_targ_idx: 0 # index of the NDVI band
pred_mask_value: -1
scale_by_std: False
context_length: 73
target_length: 17
metric: "RMSE"
n_stochastic_preds: 2
optimization:
optimizer:
-
name: AdamW
args:
betas: [0.9, 0.999]
lr_per_sample: 0.0001
lr_shedule:
-
name: MultiStepLR
args:
milestones: [3, 6] #[2, 20, 50, 90]
gamma: 0.1
n_log_batches: 2
compute_metric_on_test: True

Model:
hidden_dim: [64, 64, 64, 64]
kernel_size: 3
bias: True
skip_connections: True
num_inputs: 33 # 1 (target) + 7 (s2) + 24 (meteo) + 1 (topo)
num_outputs: 1
teacher_forcing: True
84 changes: 84 additions & 0 deletions configs/de23/convlstm_ae/lr_1e-3.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
Architecture: "convlstm_ae"

Seed: 42

Setting: "de23"

Logger:
save_dir: "experiments/"


Checkpointer:
save_top_k: 1
save_last: True
every_n_epochs: 1

Trainer:
gpus: 1
strategy: 'ddp_find_unused_parameters_false'
#deterministic: True
log_every_n_steps: 32
#profiler: 'simple'
accumulate_grad_batches: 8
#fast_dev_run: True
#log_gpu_memory: 'all'
#weights_summary: 'full'
max_epochs: 30
#limit_train_batches: 32
#limit_val_batches: 32
gradient_clip_val: 1
# check_val_every_n_epoch: 1 # default setting
# Whether to use torch.inference_mode() or torch.no_grad() mode during evaluation
# inference_mode: True # if False use 'torch.no_grad' instead.
val_check_interval: 0.25 #0.005 #

Data:
base_dir: "/Net/Groups/BGI/work_2/scratch/DeepExtremes/dx-minicubes" #
test_fold: 10
val_fold: 9
fold_path: "/Net/Groups/BGI/work_2/scratch/DeepExtremes/mc_earthnet.csv"
test_track: "iid"
target: "ndvi"
train_batch_size: 4
val_batch_size: 4
test_batch_size: 4
num_workers: 4


Task:
loss:
name: "MaskedPixelwiseLoss"
# lc_min: 40
# lc_max: 90
ndvi_pred_idx: 0 # index of the NDVI band
ndvi_targ_idx: 0 # index of the NDVI band
pred_mask_value: -1
scale_by_std: False
context_length: 72
target_length: 18
metric: "RMSE"
n_stochastic_preds: 2
optimization:
optimizer:
-
name: AdamW
args:
betas: [0.9, 0.999]
lr_per_sample: 0.001
lr_shedule:
-
name: MultiStepLR
args:
milestones: [50,90] #[3, 6] #[2, 20, 50, 90]
gamma: 0.1
n_log_batches: 2
compute_metric_on_test: True

Model:
hidden_dim: [64, 64, 64, 64]
kernel_size: 3
bias: True
skip_connections: True
num_inputs: 33 # 1 (target) + 7 (s2) + 24 (meteo) + 1 (topo)
num_outputs: 1
teacher_forcing: True
85 changes: 85 additions & 0 deletions configs/de23/convlstm_ae/lr_1e-4_continent_1.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
Architecture: "convlstm_ae"

Seed: 42

Setting: "de23"

Logger:
save_dir: "experiments/"


Checkpointer:
save_top_k: 1
save_last: True
every_n_epochs: 1

Trainer:
gpus: 1
strategy: 'ddp_find_unused_parameters_false'
#deterministic: True
log_every_n_steps: 32
profiler: 'simple'
accumulate_grad_batches: 8
#fast_dev_run: True
#log_gpu_memory: 'all'
#weights_summary: 'full'
max_epochs: 10
#limit_train_batches: 32
#limit_val_batches: 32
gradient_clip_val: 1
# check_val_every_n_epoch: 1 # default setting
# Whether to use torch.inference_mode() or torch.no_grad() mode during evaluation
# inference_mode: True # if False use 'torch.no_grad' instead.
val_check_interval: 0.25 #0.005 #

Data:
base_dir: "/Net/Groups/BGI/tscratch/crobin/dx-minicubes_interpolated" # "/Net/Groups/BGI/work_2/scratch/DeepExtremes/dx-minicubes" #
test_fold: 10
val_fold: 9
fold_path: "/Net/Groups/BGI/work_2/scratch/DeepExtremes/mc_earthnet.csv"
test_track: "iid"
target: "ndvi"
continent_split: True
train_batch_size: 4
val_batch_size: 4
test_batch_size: 4
num_workers: 4


Task:
loss:
name: "MaskedPixelwiseLoss"
# lc_min: 40
# lc_max: 90
ndvi_pred_idx: 0 # index of the NDVI band
ndvi_targ_idx: 0 # index of the NDVI band
pred_mask_value: -1
scale_by_std: False
context_length: 73
target_length: 17
metric: "RMSE"
n_stochastic_preds: 2
optimization:
optimizer:
-
name: AdamW
args:
betas: [0.9, 0.999]
lr_per_sample: 0.0001
lr_shedule:
-
name: MultiStepLR
args:
milestones: [1, 7] #[3, 6] #[2, 20, 50, 90]
gamma: 0.1
n_log_batches: 2
compute_metric_on_test: True

Model:
hidden_dim: [64, 64, 64, 64]
kernel_size: 3
bias: True
skip_connections: True
num_inputs: 33 # 1 (target) + 7 (s2) + 24 (meteo) + 1 (topo)
num_outputs: 1
teacher_forcing: True
85 changes: 85 additions & 0 deletions configs/de23/convlstm_ae/lr_1e-4_continent_2.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
Architecture: "convlstm_ae"

Seed: 42

Setting: "de23"

Logger:
save_dir: "experiments/"


Checkpointer:
save_top_k: 1
save_last: True
every_n_epochs: 1

Trainer:
gpus: 1
strategy: 'ddp_find_unused_parameters_false'
#deterministic: True
log_every_n_steps: 32
profiler: 'simple'
accumulate_grad_batches: 8
#fast_dev_run: True
#log_gpu_memory: 'all'
#weights_summary: 'full'
max_epochs: 10
#limit_train_batches: 32
#limit_val_batches: 32
gradient_clip_val: 1
# check_val_every_n_epoch: 1 # default setting
# Whether to use torch.inference_mode() or torch.no_grad() mode during evaluation
# inference_mode: True # if False use 'torch.no_grad' instead.
val_check_interval: 0.25 #0.005 #

Data:
base_dir: "/Net/Groups/BGI/tscratch/crobin/dx-minicubes_interpolated" # "/Net/Groups/BGI/work_2/scratch/DeepExtremes/dx-minicubes" #
test_fold: 8
val_fold: 7
fold_path: "/Net/Groups/BGI/work_2/scratch/DeepExtremes/mc_earthnet.csv"
test_track: "iid"
target: "ndvi"
continent_split: True
train_batch_size: 4
val_batch_size: 4
test_batch_size: 4
num_workers: 4


Task:
loss:
name: "MaskedPixelwiseLoss"
# lc_min: 40
# lc_max: 90
ndvi_pred_idx: 0 # index of the NDVI band
ndvi_targ_idx: 0 # index of the NDVI band
pred_mask_value: -1
scale_by_std: False
context_length: 73
target_length: 17
metric: "RMSE"
n_stochastic_preds: 2
optimization:
optimizer:
-
name: AdamW
args:
betas: [0.9, 0.999]
lr_per_sample: 0.0001
lr_shedule:
-
name: MultiStepLR
args:
milestones: [1, 7] #[3, 6] #[2, 20, 50, 90]
gamma: 0.1
n_log_batches: 2
compute_metric_on_test: True

Model:
hidden_dim: [64, 64, 64, 64]
kernel_size: 3
bias: True
skip_connections: True
num_inputs: 33 # 1 (target) + 7 (s2) + 24 (meteo) + 1 (topo)
num_outputs: 1
teacher_forcing: True
Loading