Skip to content

Conversation

marianovitasari20
Copy link
Contributor

Author: Maria Carolina Novitasari

This repository contains the implementation of a Denoising Diffusion Probabilistic Model (DDPM) to forecast sea ice concentration, conditioned on ERA5 reanalysis data. The model is trained and evaluated using OSISAF sea ice concentration observations as groundtruth. This work is still in progress, and changes are anticipated.

Current project structure

The current project structure is as follows:

-- notebooks/                            # Jupyter notebooks for training and experiments
   ├── 0_notebook_tf.ipynb               
   ├── 1_icenet_forecast_unet.ipynb      
   ├── 2_icenet_forecast_cgan.ipynb      
   ├── 3_icenet_forecast_DDPM.ipynb      
   └── ...                                # Additional experiments

-- models/                               # Model architectures
   ├── lit_diffusion.py                   # LightningModule for DDPM
   ├── unet_diffusion.py                  # U-Net backbone for diffusion
   ├── gaussian_diffusion.py              # Forward and reverse DDPM process
   └── __init__.py                        # Init file for module import

-- utils/                                # Helper functions and utilities
   ├── losses.py                          # Weighted MSE, BCEWithLogits, etc.
   ├── metrics.py                         # IceNetAccuracy, SIEError, etc.
   └── __init__.py                        # Init file for module import

-- trainers/                             # Training logic
   ├── train_diffusion.py                 # Training loop for DDPM
   └── __init__.py                        # Init file for module import

Maria Novitasari and others added 24 commits April 7, 2025 16:23
Copy link

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

@marianovitasari20 marianovitasari20 changed the title Initial DDPM Code Commit for Sea Ice Forecasting (Work in Progress) Initial DDPM Code Commit for Sea Ice Forecasting (Integration in Progress) Aug 12, 2025
@jemrobinson
Copy link
Member

jemrobinson commented Aug 28, 2025

Can we close this PR or do you merge the notebooks (and maybe drop the other things?) @marianovitasari20?

@marianovitasari20
Copy link
Contributor Author

marianovitasari20 commented Aug 29, 2025

Can we close this PR or do you merge the notebooks (and maybe drop the other things?) @marianovitasari20?

Hi @jemrobinson, can we just leave this open? I won’t merge this branch into main, but it’s the only one currently working for getting the diffusion results, which I need for the conference and also for comparison with main branch later (in case we can’t reproduce similar results after integration). As for the notebooks, I’ll create separate issues once I’ve finished addressing the current ones.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants