A tool to facilitate uncertainity quantification and sensitivity methods.
Project description
IBIS
LLNL's Interactive Bayesian Inference and Sensitivity, or IBIS, is designed to be used after a number of simulations have run to completion, to predict the results of future simulation runs.
Assessment of system performance variation induced by uncertain parameter values is referred to as uncertainty quantification (UQ). Typically, the Monte Carlo method is used to perform UQ by assigning probability distributions to uncertain input variables from which to draw samples in order to calculate corresponding output values using surrogate models. Based on the ensemble of output results, the output distribution should statistically describe the output's uncertainty.
Sensitivity analysis refers to the study of how uncertainty in the output of a mathematical model or system can be attributed to different sources of uncertainty in the inputs. In the data science space, sensitivity analysis is often called feature selection.
In general, we have some function $f
$ that we want to model. This is usually some sort of computer simulation where we vary a set of parameters $X
$ to produce a set of outputs $Y=f(X)
$.
We then ask the questions, "How does $Y
$ change as $X
$ changes?" and "Which parts of $X
$ is $Y
$ sensitive to?", this is often done so that we can choose to ignore the parameters of $X
$ which don't affect $Y
$ in subsequent analyses.
The IBIS package contains 7 modules:
- filter
- likelihoods
- mcmc
- mcmc_diagnostics
- sensitivity
- pce_model
- plots
Getting Started
To get the latest public version:
pip install llnl-ibis
To get the latest stable from a cloned repo, simply run:
pip install .
Alternatively, add the path to this repo to your PYTHONPATH environment variable or in your code with:
import sys
sys.path.append(path_to_ibis_repo)
Documentation
The documentation can be built from the docs
directory using:
make html
Read the Docs coming soon.
Contact Info
IBIS maintainer can be reached at: olson59@llnl.gov
Contributing
Contributing to IBIS is relatively easy. Just send us a pull request. When you send your request, make develop the destination branch on the IBIS repository.
Your PR must pass IBIS's unit tests and documentation tests, and must be PEP 8 compliant. We enforce these guidelines with our CI process. To run these tests locally, and for helpful tips on git, see our Contribution Guide.
IBIS's develop
branch has the latest contributions. Pull requests should target develop
, and users who want the latest package versions, features, etc. can use develop
.
Contributions should be submitted as a pull request pointing to the develop
branch, and must pass IBIS's CI process; to run the same checks locally, use:
pytest tests/test_*.py
Releases
See our change log for more details.
Code of Conduct
Please note that IBIS has a Code of Conduct. By participating in the IBIS community, you agree to abide by its rules.
License
IBIS is distributed under the terms of the MIT license. All new contributions must be made under the MIT license. See LICENSE and NOTICE for details.
LLNL-CODE-838977
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file llnl_ibis-1.1.0.tar.gz
.
File metadata
- Download URL: llnl_ibis-1.1.0.tar.gz
- Upload date:
- Size: 31.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ac7516e7acd593130a6efd7fb2f8e7ba8087af6e5d60ceb0d858226e152de505 |
|
MD5 | 22f740772afa0913927f3f40f69ab6e5 |
|
BLAKE2b-256 | f51f0c7bc0f895a10d1a62d73019b18c2523d75746df1794d144a663430c605a |
File details
Details for the file llnl_ibis-1.1.0-py3-none-any.whl
.
File metadata
- Download URL: llnl_ibis-1.1.0-py3-none-any.whl
- Upload date:
- Size: 33.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 12a755196d4a41a16de45ba52d4069f23d8866630502e1a32a57e261f40e8474 |
|
MD5 | 43c87083eeb84121b294244c5dc65195 |
|
BLAKE2b-256 | f9bf91198a6737d23ac342a0d7292d4662c70ad219f523908194852ca8cf88d0 |