Moving from nonlinear gaussian ssm, we relax the assumption that the noise is Gaussian. The dynamics may remain Gaussian, but the observation model has a non-Gaussian likelihood:
where
- Poisson:
for count data - Bernoulli:
for classification - Student-t: for heavy-tailed noise
This is used in online learning using ssm for neural network classification.
Inference
Exact Kalman filtering is not possible — the non-Gaussian likelihood means the posterior is no longer Gaussian after the update step. See inference methods.
- Conditional moments Gaussian Filter (CMGF): compute
and and feed into the standard Kalman update. A form of assumed density filtering – projects the true posterior back onto the Gaussian family at each step. In cuthbert: cuthbert.gaussian.momentsorcuthbert.gaussian.taylor. - Particle filter (SMC): no distributional assumptions, just sample from dynamics and evaluate observation likelihood. Asymptotically exact but scales poorly with state dimension. In cuthbert:
cuthbert.smc.particle_filter.