Thanks for your advise! I guess I had yesterday a similar idea, so I tried to reformulate the model with an integral condition, instead of a differential one. Assuming (at a first glance) a gaussian process as prior for S_t, I obtain the following model:
S_t \sim GP(m(t),k(t,t^\prime)) \\
H_{x,t} = \int_{-\infty}^x(x-s) \, p_{S_t}(s) \, ds \\
\hat{H}_{x,t} \sim N(H_{x,t},\sigma)
For my opinion this is already quite close to the generative structure you have described. However, to implement the integral condition, I have to do two step which are not too intuitive for me:
- I need to evaluate directly the probability density function of S_t - Would this be possible via
tt.exp(s.distribution.logp(s_))
or are there any caveats? (I actually don’t know if this is correctly evaluated during sampling) - In a naive implementation I would discretize the integral at those values s = \hat{x} where I got measurement of \hat{H}_{x,t} and use the trapezoidal rule to approximate H_{x,t} - Or are there any functionalities in Theano that allow to me to treat this integral symbolically?