ProbNumDiffEq.jl
ProbNumDiffEq.jl copied to clipboard
workflow: linear_gaussian_filtering_smoothing
While exploring this library I wondered if a workflow like the following is possible within the current implementation:
https://probnum.readthedocs.io/en/latest/tutorials/filtsmooth/discrete_linear_gaussian_filtering_smoothing.html
Basically, we would like to incorporate observations into our Bayesian estimations. Any comments, or hints are appreciated.
cheers!
Hi! General Gaussian filtering and smoothing is unfortunately not really the scope of this package - the package is mostly aimed to provid an as-fast-as-possible implementation of the common ODE filters, in the DiffEq.jl ecosystem. For the time being, I think the best approach is to build your own state-space model for joint inference from ODEs and data. Though I am not familiar enough with existing filtering libraries so I can't recommend any specific package for inference.
To build your own ODE filter, this small example might be helpful: https://nathanaelbosch.github.io/KalmanFilterToolbox.jl/dev/odefilter/. Basically, instead of just doing an EKF update on the vector field, you would need to also update on the data. I will try to add a small example for inference on both ODE information and data; but then again, the resulting code would not be optimized at all, so depending on what you have in mind it might not be helpful for you.
Hope this helps a bit, let me know if you have any other questions!
I will try to add a small example for inference on both ODE information and data.
Thanks for the pointers. Looking forward for the example, even is not optimised.