monad-bayes-1.1.0: A library for probabilistic programming.
Copyright(c) Adam Scibior 2015-2020
LicenseMIT
Maintainerleonhard.markert@tweag.io
Stabilityexperimental
PortabilityGHC
Safe HaskellSafe-Inferred
LanguageHaskell2010

Control.Monad.Bayes.Inference.SMC2

Description

Sequential Monte Carlo squared (SMC²) sampling.

Nicolas Chopin, Pierre E. Jacob, and Omiros Papaspiliopoulos. 2013. SMC²: an efficient algorithm for sequential analysis of state space models. Journal of the Royal Statistical Society Series B: Statistical Methodology 75 (2013), 397-426. Issue 3. https://doi.org/10.1111/j.1467-9868.2012.01046.x

Synopsis

Documentation

smc2 Source #

Arguments

:: MonadDistribution m 
=> Int

number of time steps

-> Int

number of inner particles

-> Int

number of outer particles

-> Int

number of MH transitions

-> Sequential (Traced (Population m)) b

model parameters

-> (b -> Sequential (Population (SMC2 m)) a)

model

-> Population m [(a, Log Double)] 

Sequential Monte Carlo squared.

data SMC2 m a Source #

Helper monad transformer for preprocessing the model for smc2.

Instances

Instances details
MonadTrans SMC2 Source # 
Instance details

Defined in Control.Monad.Bayes.Inference.SMC2

Methods

lift :: Monad m => m a -> SMC2 m a #

Monad m => Applicative (SMC2 m) Source # 
Instance details

Defined in Control.Monad.Bayes.Inference.SMC2

Methods

pure :: a -> SMC2 m a #

(<*>) :: SMC2 m (a -> b) -> SMC2 m a -> SMC2 m b #

liftA2 :: (a -> b -> c) -> SMC2 m a -> SMC2 m b -> SMC2 m c #

(*>) :: SMC2 m a -> SMC2 m b -> SMC2 m b #

(<*) :: SMC2 m a -> SMC2 m b -> SMC2 m a #

Monad m => Functor (SMC2 m) Source # 
Instance details

Defined in Control.Monad.Bayes.Inference.SMC2

Methods

fmap :: (a -> b) -> SMC2 m a -> SMC2 m b #

(<$) :: a -> SMC2 m b -> SMC2 m a #

Monad m => Monad (SMC2 m) Source # 
Instance details

Defined in Control.Monad.Bayes.Inference.SMC2

Methods

(>>=) :: SMC2 m a -> (a -> SMC2 m b) -> SMC2 m b #

(>>) :: SMC2 m a -> SMC2 m b -> SMC2 m b #

return :: a -> SMC2 m a #

MonadDistribution m => MonadDistribution (SMC2 m) Source # 
Instance details

Defined in Control.Monad.Bayes.Inference.SMC2

Monad m => MonadFactor (SMC2 m) Source # 
Instance details

Defined in Control.Monad.Bayes.Inference.SMC2

Methods

score :: Log Double -> SMC2 m () Source #

MonadDistribution m => MonadMeasure (SMC2 m) Source # 
Instance details

Defined in Control.Monad.Bayes.Inference.SMC2