elfi-dev / elfi

ELFI - Engine for Likelihood-Free Inference
http://elfi.readthedocs.io
BSD 3-Clause "New" or "Revised" License
262 stars 60 forks source link

Robust surrogate model #483

Open uremes opened 1 month ago

uremes commented 1 month ago

Summary:

This update adds a surrogate model version that can handle numerical errors observed as nan or inf values in the discrepancies between observed and simulated data. This is implemented as a new model class RobustGPyRegression. The two main differences between this and standard GPyRegression are that this version (1) does not use evidence points with non-finite output value to update the regression model and (2) can train a GPy classifier to predict whether given input parameters result in a finite output value or not. These capabilities are demonstrated here.

The new model can be combined with the unreliable simulations wrapper #484 to handle failed simulations in BOLFI as discussed in #433.

Please make sure

If your contribution adds, removes or somehow changes the functional behavior of the package, please check that

and the proposed changes pass all unit tests (check step 6 of CONTRIBUTING.rst for details)

Copyright and Licensing

Please list the copyright holder for the work you are submitting (this will be you or your assignee, such as a university or company):

By submitting this pull request, the copyright holder is agreeing to license the submitted work under the following licenses: