pints-team / pints

Probabilistic Inference on Noisy Time Series
http://pints.readthedocs.io
Other
226 stars 33 forks source link

Add sensitivity for Integrated Gaussian Log-Likelihood #763

Open ben18785 opened 5 years ago

ben18785 commented 5 years ago

I have now worked out a numerically stable sensitivity for this case. See here and so makes sense to add this.

MichaelClerx commented 5 years ago

Brilliant. Will you be able to document this in the docstring, you think, or should we arrange something else for e.g. derivations? With some of the stuff we're getting into it's no longer obvious that stuff is correct from "just" the equations, it seems

ben18785 commented 5 years ago

That's a good point and thanks for raising as I would likely have just implemented it (without complete derivations / equations). I agree this is crucial and so will endeavour to always (for non-trivial cases, that is) include equations or where appropriate, steps in derivations.

On Tue, Mar 12, 2019 at 12:44 AM Michael Clerx notifications@github.com wrote:

Assigned #763 https://github.com/pints-team/pints/issues/763 to @ben18785 https://github.com/ben18785.

— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/pints-team/pints/issues/763#event-2195673745, or mute the thread https://github.com/notifications/unsubscribe-auth/AESFqO9EDmP4Cs_djRShlMJ-22-9-hUzks5vVviAgaJpZM4bp0rN .

MichaelClerx commented 5 years ago

That would be amazing, for error measures / probabilities at least! For the samplers I don't mind so much how they do it, as I know what they do. But choosing the probability function is the user's responsibility so we should provide more insight into their workings, I think

ben18785 commented 5 years ago

Ben note to self: see other question on numerical solution to generalised incomplete gamma here.

Second note: think the below works ok in Python,

scipy.special.gamma(a) *( scipy.special.gammainc(a, b) - scipy.special.gammainc(a, c))