Table of Contents
Fetching ...

Elements of Sequential Monte Carlo

Christian A. Naesseth, Fredrik Lindsten, Thomas B. Schön

TL;DR

This work surveys sequential Monte Carlo as a flexible, recursive framework for Bayesian inference that builds approximations to complex posteriors via weighted particle systems. It connects classical importance sampling to SMC, analyzes convergence properties, and addresses practical design choices for proposals and intermediate targets, including data and likelihood tempering and twisting. A core contribution is outlining methods to learn proposals and twisting potentials, plus nested and distributed SMC variants, with proofs of unbiasedness and CLTs, and applications to probabilistic programming and Bayesian nonparametrics. The tutorial emphasizes evaluating inference quality, leveraging backwards and lookahead strategies, and shows how SMC and its extensions enable scalable, parallel inference across modern probabilistic models. It also positions SMC as a versatile component in broader inference and learning pipelines, including PMH, PIMH, and variational/SMC hybrids, with practical guidelines for implementation and debugging.

Abstract

A core problem in statistics and probabilistic machine learning is to compute probability distributions and expectations. This is the fundamental problem of Bayesian statistics and machine learning, which frames all inference as expectations with respect to the posterior distribution. The key challenge is to approximate these intractable expectations. In this tutorial, we review sequential Monte Carlo (SMC), a random-sampling-based class of methods for approximate inference. First, we explain the basics of SMC, discuss practical issues, and review theoretical results. We then examine two of the main user design choices: the proposal distributions and the so called intermediate target distributions. We review recent results on how variational inference and amortization can be used to learn efficient proposals and target distributions. Next, we discuss the SMC estimate of the normalizing constant, how this can be used for pseudo-marginal inference and inference evaluation. Throughout the tutorial we illustrate the use of SMC on various models commonly used in machine learning, such as stochastic recurrent neural networks, probabilistic graphical models, and probabilistic programs.

Elements of Sequential Monte Carlo

TL;DR

This work surveys sequential Monte Carlo as a flexible, recursive framework for Bayesian inference that builds approximations to complex posteriors via weighted particle systems. It connects classical importance sampling to SMC, analyzes convergence properties, and addresses practical design choices for proposals and intermediate targets, including data and likelihood tempering and twisting. A core contribution is outlining methods to learn proposals and twisting potentials, plus nested and distributed SMC variants, with proofs of unbiasedness and CLTs, and applications to probabilistic programming and Bayesian nonparametrics. The tutorial emphasizes evaluating inference quality, leveraging backwards and lookahead strategies, and shows how SMC and its extensions enable scalable, parallel inference across modern probabilistic models. It also positions SMC as a versatile component in broader inference and learning pipelines, including PMH, PIMH, and variational/SMC hybrids, with practical guidelines for implementation and debugging.

Abstract

A core problem in statistics and probabilistic machine learning is to compute probability distributions and expectations. This is the fundamental problem of Bayesian statistics and machine learning, which frames all inference as expectations with respect to the posterior distribution. The key challenge is to approximate these intractable expectations. In this tutorial, we review sequential Monte Carlo (SMC), a random-sampling-based class of methods for approximate inference. First, we explain the basics of SMC, discuss practical issues, and review theoretical results. We then examine two of the main user design choices: the proposal distributions and the so called intermediate target distributions. We review recent results on how variational inference and amortization can be used to learn efficient proposals and target distributions. Next, we discuss the SMC estimate of the normalizing constant, how this can be used for pseudo-marginal inference and inference evaluation. Throughout the tutorial we illustrate the use of SMC on various models commonly used in machine learning, such as stochastic recurrent neural networks, probabilistic graphical models, and probabilistic programs.

Paper Structure

This paper contains 79 sections, 9 theorems, 202 equations, 10 figures, 1 table, 16 algorithms.

Key Result

Theorem 2.3.1

Figures (10)

  • Figure 1: Five sample paths of $y_{1:T}$ from our running example for $T=100$.
  • Figure 2: Weight degeneracy of the method. The size of the disks represent the size of the corresponding weights $w_t^i$.
  • Figure 3: Diversity of samples in the method. The size of the disks represent the size of the weights $w_t^i$, and the grey arrows represent resampling.
  • Figure 4: Path degeneracy of the method for smoothing approximation. The size of the disks represent the size of the weights $w_t^i$, and the grey arrows represent resampling.
  • Figure 5: Violinplots for the log of the estimate of the normalization constant divided by the true value, i.e. $\log \widehat{Z}_T -\log Z_T$. The number of particles are $N=20$, length of the data is $T=100$, and we study five different settings of $\beta =(0.001, 0.1, 0.5, 0.7, 0.99)$.
  • ...and 5 more figures

Theorems & Definitions (39)

  • Example 1.2.1: Non-Markovian Gaussian Sequence Model
  • Example 1.2.2: Stochastic Recurrent Neural Network
  • Example 2.1.1: SIS for \ref{['ex:running']}
  • Example 2.1.2: SIS variance of $\widehat{Z}_t$
  • Example 2.1.3: SIS weight degeneracy
  • Example 2.2.1: SMC sample diversity
  • Example 2.2.2: SMC path degeneracy
  • Remark 2.2.1
  • Theorem 2.3.1: Unbiasedness
  • proof
  • ...and 29 more