Skip to content

feat(models): adding leaky boundings #256

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

Merged
merged 4 commits into from
Apr 11, 2025
Merged

Conversation

pinnstorm
Copy link
Member

@pinnstorm pinnstorm commented Apr 11, 2025

Description

Adding leaky bounding equivalents to bounding.py for use with model variables. Potential fix for AIFS Single "Rain Pox" issue. May lead to better back-propagation of gradients when adding bounding as a final layer in the model.

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update

Issue Number

This issue was motivated by the "rain pox" seen in the AIFS Single in production where we get grid points predicting unphysical high rainfall in isolation from any other weather systems. Adding LeakyHardTanh bounding to soil moisture (instead of HardTanh) is a potential fix for this issue.

Code Compatibility

  • I have performed a self-review of my code

Code Performance and Testing

  • I have added tests that prove my fix is effective or that my feature works
  • I ran the complete Pytest test suite locally, and they pass
  • I have tested the changes on a single GPU
  • I have tested the changes on multiple GPUs / multi-node setups
  • I have run the Benchmark Profiler against the old version of the code
  • If the new feature introduces modifications at the config level, I have made sure to update Pydantic Schemas and default configs accordingly

Dependencies

  • I have ensured that the code is still pip-installable after the changes and runs
  • I have tested that new dependencies themselves are pip-installable.
  • I have not introduced new dependencies in the inference portion of the pipeline

Documentation

  • My code follows the style guidelines of this project
  • I have updated the documentation and docstrings to reflect the changes
  • I have added comments to my code, particularly in hard-to-understand areas

Copy link
Collaborator

@anaprietonem anaprietonem left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the changes Ewan! LGTM

@anaprietonem anaprietonem merged commit 426e860 into main Apr 11, 2025
28 checks passed
@anaprietonem anaprietonem deleted the feature/leaky-bounding branch April 11, 2025 12:20
@github-project-automation github-project-automation bot moved this from Now In Progress to Done in Anemoi-dev Apr 11, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

2 participants