Skip to content

Code to "Climplicit: Climatic Implicit Embeddings for Global Ecological Tasks" at the ICLR 2025 Workshop: Tackling Climate Change with Machine Learning.

Notifications You must be signed in to change notification settings

ecovision-uzh/climplicit

Repository files navigation

Climplicit: Climatic Implicit Embeddings for Global Ecological Tasks

This repository contains the code for Climplicit: Climatic Implicit Embeddings for Global Ecological Tasks. The work extends the SIREN backbone with residual connections (ReSIREN) and trains it on the dense and global climatic raster CHELSA. The code uses the Pytorch Lightning framework with Hydra.

Note: This work started out as a contrastive framework inspired by SatCLIP and Climplicit only emerged from the ablation of regressing the climatic data directly. Therefore the code structure is still contrastive, and everything is named ChelsaCLIP.

Quickstart

Update: You can now use rshf to conveniently load the model:

from rshf.climplicit import Climplicit
model = Climplicit.from_pretrained("Jobedo/climplicit", config={"return_chelsa": False})

If you want to have direct access to the model architecture, you can use the quickstart folder which contains the least amount of files required to showcase the usage of the pretrained Climplicit embeddings:

git clone https://github.com/ecovision-uzh/climplicit.git
cd climplicit/quickstart
conda env create -f environment.yml
conda activate climplicit-quickstart
python climplicit.py

A tutorial on how to use such pretrained embeddings for downstream learning can be found in the SatCLIP codebase.

Pretraining

To setup the directory run:

git clone https://github.com/ecovision-uzh/climplicit.git
cd climplicit
conda config --set channel_priority strict
conda env create -f environment.yml
conda activate climplicit

To download all monthly CHELSA rasters for the 1981-2010 climatology use:

mkdir data
cd data
wget --no-host-directories --force-directories --input-file=envidatS3paths_all_monthly.txt
cd ..

Now adapt the paths in scripts/convert_files/turn_chelsa_into_monthly_numpy.py and run the script:

python scripts/convert_files/turn_chelsa_into_monthly_numpy.py

Now change all paths in configs/experiments/climplicit.yml and configs/paths/default.yml to the correct root. Finally to start the pretraining run:

python src/train.py experiment=climplicit

Citation

@article{dollinger2025climplicit,
  title={Climplicit: Climatic Implicit Embeddings for Global Ecological Tasks},
  author={Dollinger, Johannes and Robert, Damien and Plekhanova, Elena and Drees, Lukas and Wegner, Jan Dirk},
  journal={International Conference on Learning Representations (ICLR) Workshops},
  year={2025}
}

About

Code to "Climplicit: Climatic Implicit Embeddings for Global Ecological Tasks" at the ICLR 2025 Workshop: Tackling Climate Change with Machine Learning.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published