-
Notifications
You must be signed in to change notification settings - Fork 10
HM refactor #504
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
HM refactor #504
Conversation
…t compat with experimental emulators
Check out this pull request on See visual diffs & provide feedback on Jupyter Notebooks. Powered by ReviewNB |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #504 +/- ##
==========================================
+ Coverage 76.52% 77.43% +0.90%
==========================================
Files 113 117 +4
Lines 8270 8637 +367
==========================================
+ Hits 6329 6688 +359
- Misses 1941 1949 +8 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Coverage reportClick to see where and how coverage changed
This report was generated by python-coverage-comment-action |
Co-authored-by: Sam Greenbury <[email protected]>
Co-authored-by: Sam Greenbury <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the revised HistoryMatchingWorkflow
with the new distinct methods and updated run()
looks really great! The workflow looks like it reflects paper to me (I had one small query regarding the update). I also had one suggestion regarding the potential additional method but I think this looks good to me to merge without that too.
@sgreenbury this should be ready now but it would be great if you could have one last look over it. Specifically:
|
Looks great!
Good point and looks good! I opened #562 to explore adding a test for My only other minor thought was about the additional handling on the |
Add test for device to history matching
|
Sounds good!
I think adding this as a method on an probabilistic/gaussian emulator sounds like a great option - perhaps this would work well as an addition to #561 where there is a From looking at the notebook, I had one other minor comment: in cell 8, should I think this looks really great and good to merge otherwise! |
Closes #406
Overview
This PR:
experimental
based onHistoryMatching
in mainHistoryMatching
is a metric that takes in observations and returns implausibility for provided predictionsHistoryMatchingWorkflow
captures the iterative process of using an emulator to choose what simulations to run and then updating that emulator with the newly simulated dataSimulator
andGaussianProcessExact
emulators as inputrun()
is called, it now executes just one "wave", because the method stores state, the user can simply callrun()
repeatedly if they want to run multiple wavessimulator.param_bounds
get updated to the NROY min/max, this way we can just keep using the simulatorsample_inputs
method without having to have a separate method for samplingexperimental/exploratory/hm_refactor.ipynb
that shows the two HM classes and how they integrate with the dahsboardFor reviewers:
experimental/exploratory/hm_refactor.ipynb
notebook is a good place to startHistoryMatchingWorkflow.run()
, it is based on what I understood of what is described in this paper, it'd be great to see if we all agree on this.