-
Notifications
You must be signed in to change notification settings - Fork 17
Home
odunbar edited this page Feb 15, 2021
·
19 revisions
Construct a registered (?) package for black-box uncertainty quantification of parameters in noisy, expensive and non-differentiable models.
- Refactor the code with better data structures as detailed below
- Separate out
Calibrate
intoEnsembleKalmanProcesses.jl
and haveCalibrateEmulateSample.jl
depend upon this - Explore an end-to-end example
- Working with user model instability. (We could also do nothing here, I'm not a fan of modifying priors, but perhaps it needs to be done)
- Public Availability?
- Explore examples from CliMA users to aid development,
- Build example use-case library from CliMA applications?)
- Documentation goals (i recall this good talk in particular that Simon referenced a while back on Slack. We could get some flavour from here perhaps to break down the task - or learn from CliMA experience people have )
- Working Example: Investigate a simple CliMA-based example (Ignacio/Mike)
- Refactor: Move Calibration to EnsembleKalmanProcesses.jl (-)
- Refactor:Interface with EnsembleKalmanProcesses.jl (-)
5 Latest features / Developments (writing a good PR)
- (PR #104) Adds DataContainers for consistent dimensions, tagline "data are columns"
- (PR #101) Adds example for Lorenz96 model, learning periodic forcing function
- (PR #100) Adds EKP examples for Loss minimization
- (PR #89, #94) Adds ParameterDistributions to deal with priors and posteriors
Mind-map form of project.
Here we include the data structures we use in the project
ParameterDistribution(...)
Module contains the additional functions
set_distribution()
get_distribution()
sample_distribution()
transform_constrained_to_unconstrained()
transform_unconstrained_to_constrained()
get_mean()
get_cov()
batch
...
DataContainer(...)
PairedDataContainer(...)
Module contains the additional functions
set_data()
get_data()
get_inputs() (paired data only)
get_outputs() (paired data only)
size()
Here we include the interface with the EnsembleKalmanProcesses.jl
module.
EnsembleKalmanProcess(...)
We extract input-output pairs PairedDataContainer
from this object using get_training_points(...)
GModel(...)
ModelInterface(...)
GaussianProcessEmulator(...)
MarkovChainMonteCarlo(...)
This will be performed through the vizCES.jl
module