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

Inflation #233

Merged
merged 1 commit into from
Feb 10, 2023
Merged

Inflation #233

merged 1 commit into from
Feb 10, 2023

Conversation

costachris
Copy link
Member

@costachris costachris commented Nov 16, 2022

Purpose

This PR adds the functionality of performing stochastic parameter updates in the form of multiplicative and additive inflation.

To-do

  • Finalize stochastic update for EKI.
  • Port stochastic update to UKI, Sampler , and Sparse EKI.
  • Make stochastic update the default.
  • Update tests and check examples/.
  • Add documentation

@costachris costachris changed the title Add stochastic parameter update to EKI Add stochastic parameter update to EKI [WIP] Nov 16, 2022
@costachris costachris changed the title Add stochastic parameter update to EKI [WIP] Stochastic parameter update [WIP] Nov 16, 2022
Copy link
Contributor

@Zhengyu-Huang Zhengyu-Huang 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 your great work!

Is "stochastic_scaling_factor" N_batch/N ?

Could you also add your test in the PR?

@costachris
Copy link
Member Author

Thanks for your great work!

Is "stochastic_scaling_factor" N_batch/N ?

Could you also add your test in the PR?

Yes, ideally the user would set stochastic_scaling_factor = N_batch/N when calling the API, since ie. N_batch and dataset size aren't attributes of EKP objects, so they have to be provided externally.

@costachris costachris force-pushed the cc/stochastic_inversion branch 3 times, most recently from 61ed7b0 to 25dfef8 Compare December 6, 2022 01:37
@eviatarbach eviatarbach self-assigned this Dec 10, 2022
@costachris costachris changed the title Stochastic parameter update [WIP] Include Inflation functionality [WIP] Jan 20, 2023
@costachris costachris changed the title Include Inflation functionality [WIP] Inflation [WIP] Jan 20, 2023
@costachris costachris force-pushed the cc/stochastic_inversion branch 6 times, most recently from 516ad0e to 40d53ee Compare January 23, 2023 19:52
@costachris costachris changed the title Inflation [WIP] Inflation Jan 23, 2023
docs/src/inflation.md Outdated Show resolved Hide resolved
docs/src/inflation.md Outdated Show resolved Hide resolved
docs/src/inflation.md Outdated Show resolved Hide resolved
docs/src/inflation.md Outdated Show resolved Hide resolved
test/Inflation/runtests.jl Outdated Show resolved Hide resolved
test/Inflation/runtests.jl Outdated Show resolved Hide resolved
Copy link
Collaborator

@odunbar odunbar left a comment

Choose a reason for hiding this comment

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

Hi @costachris this looks great - I have left comments mainly on tightening up the docs and tests.

Sorry for some reason I added them as extra comments rather than a review!

PS could you also reference issue #230 in the PR

@costachris costachris linked an issue Feb 2, 2023 that may be closed by this pull request
@costachris costachris force-pushed the cc/stochastic_inversion branch 4 times, most recently from b3a0c6f to c23f60c Compare February 2, 2023 19:31
Copy link
Collaborator

@odunbar odunbar left a comment

Choose a reason for hiding this comment

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

Looks great,

I have 2 more tiny comments, and could you add the quick get_localizer in the test/Localizers/runtests.jl that codecov is complaining about. Then happy for merge

docs/src/inflation.md Show resolved Hide resolved
docs/src/inflation.md Outdated Show resolved Hide resolved
@costachris costachris force-pushed the cc/stochastic_inversion branch 2 times, most recently from bffdec8 to eafbe11 Compare February 3, 2023 23:43
@costachris
Copy link
Member Author

@odunbar I included the option for using the prior covariance and updated the tests as discussed (including one for prior cov based noise). The docs now state more clearly how the covariance changes.

Project.toml Outdated Show resolved Hide resolved
docs/src/inflation.md Outdated Show resolved Hide resolved
docs/src/inflation.md Outdated Show resolved Hide resolved
docs/src/inflation.md Outdated Show resolved Hide resolved
docs/src/inflation.md Outdated Show resolved Hide resolved
docs/src/inflation.md Outdated Show resolved Hide resolved
src/EnsembleKalmanProcess.jl Outdated Show resolved Hide resolved
@costachris costachris force-pushed the cc/stochastic_inversion branch 2 times, most recently from 2a2ea75 to 6cd2d01 Compare February 9, 2023 19:07
Copy link
Contributor

@ilopezgp ilopezgp left a comment

Choose a reason for hiding this comment

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

LGTM

@costachris
Copy link
Member Author

bors r+

@bors
Copy link
Contributor

bors bot commented Feb 10, 2023

Build succeeded:

@bors bors bot merged commit b92b53b into main Feb 10, 2023
@bors bors bot deleted the cc/stochastic_inversion branch February 10, 2023 23:22
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.

Implement Stochastic Update
5 participants