Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable multivariate emulator training and sampling #38

Merged
merged 53 commits into from
Oct 22, 2024
Merged

Conversation

henryaddison
Copy link
Owner

@henryaddison henryaddison commented Sep 18, 2024

NB merging this branch does not assume that multivariate models are "good" (for whatever definition of good) merely that they work (i.e. don't blow up or produce entirely random output).

To Do:

  • Revert change of environment name
  • Non-alpha version of mlde_utils
  • Non-alpha version of this package (once merged)
  • Wait until paper is ready?

Covers:

  • Allowing multiple outputs to be modelled by emulator
  • Deterministic models using the score-sde training loop (and prediction script) leading to better deterministic U-Net performace
  • Update change in name of datasets to be easier to read
  • Smoothing the val loss calculation (to use the same random starting points and noise levels each time)

for upcoming changes related to multivariate work
for the xfm for relhum of recentring 0-100 percentages to -1 to 1
by using the same random numbers for computing loss when not in train mode
partly for debugging but also to see improvements
to be able to use hopefully better xfms for tmean150cm and relhum150cm
rather than score-sde/diffusion setting
in theory this should replace the mirroring deterministic package
but obviously we should test this once blue pebble is back up properly

also include configs for a now more tuned config for plain det unet
and one that resembles the old det unet config more closely
so can basically disable EMA with a flag.
This is another difference between u-net trained on score_sde side deterministically
and the separate deterministic training approach.""

In theory decay rate of 1 should allow this but it's complicated by a num_updates params too
a rate of 1 means no EMA
this is backwards compatible unlike adding a new config attribute
Random initization of location-specific parameters
though I think this can't be done entirely on the fly from CLI yet
rather than rely on it being pre-installed by anther means but still allow for compilation of custom extensions
Switch to using cuda package from nvidia's conda channels
now can do deterministic (MSE) training on the score_sde_pytorch side
no reason anymore to have it in this namespace now that parallel deterministic namespace has been removed
so not quite what it was before but much easier to remember
@henryaddison henryaddison merged commit 93b2765 into main Oct 22, 2024
3 checks passed
@henryaddison henryaddison deleted the multivariate branch October 22, 2024 10:07
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.

1 participant