Probabilistic & Unsupervised Learning Expectation Propagation - - PowerPoint PPT Presentation

probabilistic unsupervised learning expectation
SMART_READER_LITE
LIVE PREVIEW

Probabilistic & Unsupervised Learning Expectation Propagation - - PowerPoint PPT Presentation

Probabilistic & Unsupervised Learning Expectation Propagation Maneesh Sahani maneesh@gatsby.ucl.ac.uk Gatsby Computational Neuroscience Unit, and MSc ML/CSML, Dept Computer Science University College London Term 1, Autumn 2019


slide-1
SLIDE 1

Probabilistic & Unsupervised Learning Expectation Propagation

Maneesh Sahani

maneesh@gatsby.ucl.ac.uk

Gatsby Computational Neuroscience Unit, and MSc ML/CSML, Dept Computer Science University College London Term 1, Autumn 2019

slide-2
SLIDE 2

Intractabilities and approximations

◮ Inference – computational intractability

◮ Gibbs sampling, other MCMC ◮ Factored variational approx ◮ Loopy BP/EP/Power EP ◮ Recognition models

◮ Inference – analytic intractability

◮ Laplace approximation (global) ◮ (Sequential) Monte-Carlo ◮ Parametric variational approx (for special cases). ◮ Message approximations (linearised, sigma-point, Laplace) ◮ Assumed-density methods and Expectation-Propagation ◮ Recognition models

◮ Learning – intractable partition function

◮ Sampling parameters ◮ Constrastive divergence ◮ Score-matching

◮ Posterior estimation and model selection

◮ Laplace approximation / BIC ◮ Monte-Carlo ◮ (Annealed) importance sampling ◮ Reversible jump MCMC ◮ Variational Bayes

Not a complete list!

slide-3
SLIDE 3

Intractabilities and approximations

◮ Inference – computational intractability

◮ Gibbs sampling, other MCMC ◮ Factored variational approx ◮ Loopy BP/EP/Power EP ◮ Recognition models

◮ Inference – analytic intractability

◮ Laplace approximation (global) ◮ (Sequential) Monte-Carlo ◮ Parametric variational approx (for special cases). ◮ Message approximations (linearised, sigma-point, Laplace) ◮ Assumed-density methods and Expectation-Propagation ◮ Recognition models

◮ Learning – intractable partition function

◮ Sampling parameters ◮ Constrastive divergence ◮ Score-matching

◮ Posterior estimation and model selection

◮ Laplace approximation / BIC ◮ Monte-Carlo ◮ (Annealed) importance sampling ◮ Reversible jump MCMC ◮ Variational Bayes

Not a complete list!

slide-4
SLIDE 4

Intractabilities and approximations

◮ Inference – computational intractability

◮ Gibbs sampling, other MCMC ◮ Factored variational approx ◮ Loopy BP/EP/Power EP ◮ Recognition models

◮ Inference – analytic intractability

◮ Laplace approximation (global) ◮ (Sequential) Monte-Carlo ◮ Parametric variational approx (for special cases). ◮ Message approximations (linearised, sigma-point, Laplace) ◮ Assumed-density methods and Expectation-Propagation ◮ Recognition models

◮ Learning – intractable partition function

◮ Sampling parameters ◮ Constrastive divergence ◮ Score-matching

◮ Posterior estimation and model selection

◮ Laplace approximation / BIC ◮ Monte-Carlo ◮ (Annealed) importance sampling ◮ Reversible jump MCMC ◮ Variational Bayes

Not a complete list!

slide-5
SLIDE 5

Intractabilities and approximations

◮ Inference – computational intractability

◮ Gibbs sampling, other MCMC ◮ Factored variational approx ◮ Loopy BP/EP/Power EP ◮ Recognition models

◮ Inference – analytic intractability

◮ Laplace approximation (global) ◮ (Sequential) Monte-Carlo ◮ Parametric variational approx (for special cases). ◮ Message approximations (linearised, sigma-point, Laplace) ◮ Assumed-density methods and Expectation-Propagation ◮ Recognition models

◮ Learning – intractable partition function

◮ Sampling parameters ◮ Constrastive divergence ◮ Score-matching

◮ Posterior estimation and model selection

◮ Laplace approximation / BIC ◮ Monte-Carlo ◮ (Annealed) importance sampling ◮ Reversible jump MCMC ◮ Variational Bayes

Not a complete list!

slide-6
SLIDE 6

Intractabilities and approximations

◮ Inference – computational intractability

◮ Gibbs sampling, other MCMC ◮ Factored variational approx ◮ Loopy BP/EP/Power EP ◮ Recognition models

◮ Inference – analytic intractability

◮ Laplace approximation (global) ◮ (Sequential) Monte-Carlo ◮ Parametric variational approx (for special cases). ◮ Message approximations (linearised, sigma-point, Laplace) ◮ Assumed-density methods and Expectation-Propagation ◮ Recognition models

◮ Learning – intractable partition function

◮ Sampling parameters ◮ Constrastive divergence ◮ Score-matching

◮ Posterior estimation and model selection

◮ Laplace approximation / BIC ◮ Monte-Carlo ◮ (Annealed) importance sampling ◮ Reversible jump MCMC ◮ Variational Bayes

Not a complete list!

slide-7
SLIDE 7

Nonlinear state-space model (NLSSM)

z1 z2 z3 zT x1 x2 x3 xT u1 u2 u3 uT

  • • •

f f f f g g g g

zt+1 = f(zt, ut) + wt xt = g(zt, ut) + vt wt, vt usually still Gaussian. zt f(zt)

slide-8
SLIDE 8

Nonlinear state-space model (NLSSM)

z1 z2 z3 zT x1 x2 x3 xT u1 u2 u3 uT

  • • •

f f f f g g g g

zt+1 = f(zt, ut) + wt xt = g(zt, ut) + vt wt, vt usually still Gaussian. Extended Kalman Filter (EKF): linearise nonlinear functions about current estimate, ˆ zt

t:

zt+1 ≈ f(ˆ zt

t, ut) + ∂f

∂zt

  • ˆ

zt

t

(zt − ˆ

zt

t) + wt

xt ≈ g(ˆ zt−1

t

, ut) + ∂g ∂zt

  • ˆ

zt−1

t

(zt − ˆ

zt−1

t

) + vt

zt f(zt)

ˆ

zt

t

slide-9
SLIDE 9

Nonlinear state-space model (NLSSM)

y1 y2 y3 yT x1 x2 x3 xT u1 u2 u3 uT

  • • •
  • At
  • At
  • At
  • At
  • Ct
  • Ct
  • Ct
  • Ct
  • Bt
  • Bt
  • Bt
  • Bt
  • Dt
  • Dt
  • Dt
  • Dt

zt+1 = f(zt, ut) + wt xt = g(zt, ut) + vt wt, vt usually still Gaussian. Extended Kalman Filter (EKF): linearise nonlinear functions about current estimate, ˆ zt

t:

zt+1 ≈ f(ˆ zt

t, ut)

  • Bt ut

+ ∂f ∂zt

  • ˆ

zt

t

  • At

(zt − ˆ

zt

t) + wt

xt ≈ g(ˆ zt−1

t

, ut)

  • Dt ut

+ ∂g ∂zt

  • ˆ

zt−1

t

  • Ct

(zt − ˆ

zt−1

t

) + vt

zt f(zt)

ˆ

zt

t

Run the Kalman filter (smoother) on non-stationary linearised system ( At, Bt, Ct, Dt):

slide-10
SLIDE 10

Nonlinear state-space model (NLSSM)

y1 y2 y3 yT x1 x2 x3 xT u1 u2 u3 uT

  • • •
  • At
  • At
  • At
  • At
  • Ct
  • Ct
  • Ct
  • Ct
  • Bt
  • Bt
  • Bt
  • Bt
  • Dt
  • Dt
  • Dt
  • Dt

zt+1 = f(zt, ut) + wt xt = g(zt, ut) + vt wt, vt usually still Gaussian. Extended Kalman Filter (EKF): linearise nonlinear functions about current estimate, ˆ zt

t:

zt+1 ≈ f(ˆ zt

t, ut)

  • Bt ut

+ ∂f ∂zt

  • ˆ

zt

t

  • At

(zt − ˆ

zt

t) + wt

xt ≈ g(ˆ zt−1

t

, ut)

  • Dt ut

+ ∂g ∂zt

  • ˆ

zt−1

t

  • Ct

(zt − ˆ

zt−1

t

) + vt

zt f(zt)

ˆ

zt

t

Run the Kalman filter (smoother) on non-stationary linearised system ( At, Bt, Ct, Dt):

◮ Adaptively approximates non-Gaussian messages by Gaussians.

slide-11
SLIDE 11

Nonlinear state-space model (NLSSM)

y1 y2 y3 yT x1 x2 x3 xT u1 u2 u3 uT

  • • •
  • At
  • At
  • At
  • At
  • Ct
  • Ct
  • Ct
  • Ct
  • Bt
  • Bt
  • Bt
  • Bt
  • Dt
  • Dt
  • Dt
  • Dt

zt+1 = f(zt, ut) + wt xt = g(zt, ut) + vt wt, vt usually still Gaussian. Extended Kalman Filter (EKF): linearise nonlinear functions about current estimate, ˆ zt

t:

zt+1 ≈ f(ˆ zt

t, ut)

  • Bt ut

+ ∂f ∂zt

  • ˆ

zt

t

  • At

(zt − ˆ

zt

t) + wt

xt ≈ g(ˆ zt−1

t

, ut)

  • Dt ut

+ ∂g ∂zt

  • ˆ

zt−1

t

  • Ct

(zt − ˆ

zt−1

t

) + vt

zt f(zt)

ˆ

zt

t

Run the Kalman filter (smoother) on non-stationary linearised system ( At, Bt, Ct, Dt):

◮ Adaptively approximates non-Gaussian messages by Gaussians. ◮ Local linearisation depends on central point of distribution ⇒ approximation degrades

with increased state uncertainty.

slide-12
SLIDE 12

Nonlinear state-space model (NLSSM)

y1 y2 y3 yT x1 x2 x3 xT u1 u2 u3 uT

  • • •
  • At
  • At
  • At
  • At
  • Ct
  • Ct
  • Ct
  • Ct
  • Bt
  • Bt
  • Bt
  • Bt
  • Dt
  • Dt
  • Dt
  • Dt

zt+1 = f(zt, ut) + wt xt = g(zt, ut) + vt wt, vt usually still Gaussian. Extended Kalman Filter (EKF): linearise nonlinear functions about current estimate, ˆ zt

t:

zt+1 ≈ f(ˆ zt

t, ut)

  • Bt ut

+ ∂f ∂zt

  • ˆ

zt

t

  • At

(zt − ˆ

zt

t) + wt

xt ≈ g(ˆ zt−1

t

, ut)

  • Dt ut

+ ∂g ∂zt

  • ˆ

zt−1

t

  • Ct

(zt − ˆ

zt−1

t

) + vt

zt f(zt)

ˆ

zt

t

Run the Kalman filter (smoother) on non-stationary linearised system ( At, Bt, Ct, Dt):

◮ Adaptively approximates non-Gaussian messages by Gaussians. ◮ Local linearisation depends on central point of distribution ⇒ approximation degrades

with increased state uncertainty. May work acceptably for close-to-linear systems.

slide-13
SLIDE 13

Nonlinear state-space model (NLSSM)

y1 y2 y3 yT x1 x2 x3 xT u1 u2 u3 uT

  • • •
  • At
  • At
  • At
  • At
  • Ct
  • Ct
  • Ct
  • Ct
  • Bt
  • Bt
  • Bt
  • Bt
  • Dt
  • Dt
  • Dt
  • Dt

zt+1 = f(zt, ut) + wt xt = g(zt, ut) + vt wt, vt usually still Gaussian. Extended Kalman Filter (EKF): linearise nonlinear functions about current estimate, ˆ zt

t:

zt+1 ≈ f(ˆ zt

t, ut)

  • Bt ut

+ ∂f ∂zt

  • ˆ

zt

t

  • At

(zt − ˆ

zt

t) + wt

xt ≈ g(ˆ zt−1

t

, ut)

  • Dt ut

+ ∂g ∂zt

  • ˆ

zt−1

t

  • Ct

(zt − ˆ

zt−1

t

) + vt

zt f(zt)

ˆ

zt

t

Run the Kalman filter (smoother) on non-stationary linearised system ( At, Bt, Ct, Dt):

◮ Adaptively approximates non-Gaussian messages by Gaussians. ◮ Local linearisation depends on central point of distribution ⇒ approximation degrades

with increased state uncertainty. May work acceptably for close-to-linear systems. Can base EM-like algorithm on EKF/EKS (or alternatives).

slide-14
SLIDE 14

Other message approximations

Consider the forward messages on a latent chain: P(zt|x1:t) = 1 Z P(xt|zt)

  • dzt–1 P(zt|zt–1)P(zt–1|x1:t–1)

We want to approximate the messages to retain a tractable form (i.e. Gaussian).

˜

P(zt|x1:t) ≈ 1 Z P(xt|zt)

  • dzt–1

P(zt|zt–1)

  • N (f(zt–1), Q)

˜

P(zt–1|x1:t–1)

  • N (ˆ

zt–1, Vt–1)

slide-15
SLIDE 15

Other message approximations

Consider the forward messages on a latent chain: P(zt|x1:t) = 1 Z P(xt|zt)

  • dzt–1 P(zt|zt–1)P(zt–1|x1:t–1)

We want to approximate the messages to retain a tractable form (i.e. Gaussian).

˜

P(zt|x1:t) ≈ 1 Z P(xt|zt)

  • dzt–1

P(zt|zt–1)

  • N (f(zt–1), Q)

˜

P(zt–1|x1:t–1)

  • N (ˆ

zt–1, Vt–1)

◮ Linearisation at the peak (EKF) is only one approach.

slide-16
SLIDE 16

Other message approximations

Consider the forward messages on a latent chain: P(zt|x1:t) = 1 Z P(xt|zt)

  • dzt–1 P(zt|zt–1)P(zt–1|x1:t–1)

We want to approximate the messages to retain a tractable form (i.e. Gaussian).

˜

P(zt|x1:t) ≈ 1 Z P(xt|zt)

  • dzt–1

P(zt|zt–1)

  • N (f(zt–1), Q)

˜

P(zt–1|x1:t–1)

  • N (ˆ

zt–1, Vt–1)

◮ Linearisation at the peak (EKF) is only one approach. ◮ Laplace filter: use mode and curvature of integrand.

slide-17
SLIDE 17

Other message approximations

Consider the forward messages on a latent chain: P(zt|x1:t) = 1 Z P(xt|zt)

  • dzt–1 P(zt|zt–1)P(zt–1|x1:t–1)

We want to approximate the messages to retain a tractable form (i.e. Gaussian).

˜

P(zt|x1:t) ≈ 1 Z P(xt|zt)

  • dzt–1

P(zt|zt–1)

  • N (f(zt–1), Q)

˜

P(zt–1|x1:t–1)

  • N (ˆ

zt–1, Vt–1)

◮ Linearisation at the peak (EKF) is only one approach. ◮ Laplace filter: use mode and curvature of integrand. ◮ Sigma-point (“unscented”) filter:

slide-18
SLIDE 18

Other message approximations

Consider the forward messages on a latent chain: P(zt|x1:t) = 1 Z P(xt|zt)

  • dzt–1 P(zt|zt–1)P(zt–1|x1:t–1)

We want to approximate the messages to retain a tractable form (i.e. Gaussian).

˜

P(zt|x1:t) ≈ 1 Z P(xt|zt)

  • dzt–1

P(zt|zt–1)

  • N (f(zt–1), Q)

˜

P(zt–1|x1:t–1)

  • N (ˆ

zt–1, Vt–1)

◮ Linearisation at the peak (EKF) is only one approach. ◮ Laplace filter: use mode and curvature of integrand. ◮ Sigma-point (“unscented”) filter:

◮ Evaluate f(ˆ

zt–1), f(ˆ zt–1 ±

√ λv) for eigenvalues, eigenvectors ˆ

Vt−1v = λv.

slide-19
SLIDE 19

Other message approximations

Consider the forward messages on a latent chain: P(zt|x1:t) = 1 Z P(xt|zt)

  • dzt–1 P(zt|zt–1)P(zt–1|x1:t–1)

We want to approximate the messages to retain a tractable form (i.e. Gaussian).

˜

P(zt|x1:t) ≈ 1 Z P(xt|zt)

  • dzt–1

P(zt|zt–1)

  • N (f(zt–1), Q)

˜

P(zt–1|x1:t–1)

  • N (ˆ

zt–1, Vt–1)

◮ Linearisation at the peak (EKF) is only one approach. ◮ Laplace filter: use mode and curvature of integrand. ◮ Sigma-point (“unscented”) filter:

◮ Evaluate f(ˆ

zt–1), f(ˆ zt–1 ±

√ λv) for eigenvalues, eigenvectors ˆ

Vt−1v = λv.

◮ “Fit” Gaussian to these 2K + 1 points.

slide-20
SLIDE 20

Other message approximations

Consider the forward messages on a latent chain: P(zt|x1:t) = 1 Z P(xt|zt)

  • dzt–1 P(zt|zt–1)P(zt–1|x1:t–1)

We want to approximate the messages to retain a tractable form (i.e. Gaussian).

˜

P(zt|x1:t) ≈ 1 Z P(xt|zt)

  • dzt–1

P(zt|zt–1)

  • N (f(zt–1), Q)

˜

P(zt–1|x1:t–1)

  • N (ˆ

zt–1, Vt–1)

◮ Linearisation at the peak (EKF) is only one approach. ◮ Laplace filter: use mode and curvature of integrand. ◮ Sigma-point (“unscented”) filter:

◮ Evaluate f(ˆ

zt–1), f(ˆ zt–1 ±

√ λv) for eigenvalues, eigenvectors ˆ

Vt−1v = λv.

◮ “Fit” Gaussian to these 2K + 1 points. ◮ Equivalent to numerical evaluation of mean and covariance by Gaussian quadrature.

slide-21
SLIDE 21

Other message approximations

Consider the forward messages on a latent chain: P(zt|x1:t) = 1 Z P(xt|zt)

  • dzt–1 P(zt|zt–1)P(zt–1|x1:t–1)

We want to approximate the messages to retain a tractable form (i.e. Gaussian).

˜

P(zt|x1:t) ≈ 1 Z P(xt|zt)

  • dzt–1

P(zt|zt–1)

  • N (f(zt–1), Q)

˜

P(zt–1|x1:t–1)

  • N (ˆ

zt–1, Vt–1)

◮ Linearisation at the peak (EKF) is only one approach. ◮ Laplace filter: use mode and curvature of integrand. ◮ Sigma-point (“unscented”) filter:

◮ Evaluate f(ˆ

zt–1), f(ˆ zt–1 ±

√ λv) for eigenvalues, eigenvectors ˆ

Vt−1v = λv.

◮ “Fit” Gaussian to these 2K + 1 points. ◮ Equivalent to numerical evaluation of mean and covariance by Gaussian quadrature. ◮ One form of “Assumed Density Filtering” and EP

.

slide-22
SLIDE 22

Other message approximations

Consider the forward messages on a latent chain: P(zt|x1:t) = 1 Z P(xt|zt)

  • dzt–1 P(zt|zt–1)P(zt–1|x1:t–1)

We want to approximate the messages to retain a tractable form (i.e. Gaussian).

˜

P(zt|x1:t) ≈ 1 Z P(xt|zt)

  • dzt–1

P(zt|zt–1)

  • N (f(zt–1), Q)

˜

P(zt–1|x1:t–1)

  • N (ˆ

zt–1, Vt–1)

◮ Linearisation at the peak (EKF) is only one approach. ◮ Laplace filter: use mode and curvature of integrand. ◮ Sigma-point (“unscented”) filter:

◮ Evaluate f(ˆ

zt–1), f(ˆ zt–1 ±

√ λv) for eigenvalues, eigenvectors ˆ

Vt−1v = λv.

◮ “Fit” Gaussian to these 2K + 1 points. ◮ Equivalent to numerical evaluation of mean and covariance by Gaussian quadrature. ◮ One form of “Assumed Density Filtering” and EP

.

◮ Parametric variational: argmin KL

  • N

ˆ

zt, ˆ Vt

  • dzt–1 . . .
  • . Requires Gaussian

expectations of log

  • ⇒ may be challenging.
slide-23
SLIDE 23

Other message approximations

Consider the forward messages on a latent chain: P(zt|x1:t) = 1 Z P(xt|zt)

  • dzt–1 P(zt|zt–1)P(zt–1|x1:t–1)

We want to approximate the messages to retain a tractable form (i.e. Gaussian).

˜

P(zt|x1:t) ≈ 1 Z P(xt|zt)

  • dzt–1

P(zt|zt–1)

  • N (f(zt–1), Q)

˜

P(zt–1|x1:t–1)

  • N (ˆ

zt–1, Vt–1)

◮ Linearisation at the peak (EKF) is only one approach. ◮ Laplace filter: use mode and curvature of integrand. ◮ Sigma-point (“unscented”) filter:

◮ Evaluate f(ˆ

zt–1), f(ˆ zt–1 ±

√ λv) for eigenvalues, eigenvectors ˆ

Vt−1v = λv.

◮ “Fit” Gaussian to these 2K + 1 points. ◮ Equivalent to numerical evaluation of mean and covariance by Gaussian quadrature. ◮ One form of “Assumed Density Filtering” and EP

.

◮ Parametric variational: argmin KL

  • N

ˆ

zt, ˆ Vt

  • dzt–1 . . .
  • . Requires Gaussian

expectations of log

  • ⇒ may be challenging.

◮ The other KL: argmin KL

  • dzt–1
  • N

ˆ

zt, ˆ Vt

  • needs only first and second moments of

nonlinear message ⇒ EP.

slide-24
SLIDE 24

Variational learning

Free energy:

F(q, θ) = log P(X, Z|θ)q(Z|X) + H[q] = log P(X|θ) − KL[q(Z)P(Z|X, θ)] ≤ ℓ(θ)

slide-25
SLIDE 25

Variational learning

Free energy:

F(q, θ) = log P(X, Z|θ)q(Z|X) + H[q] = log P(X|θ) − KL[q(Z)P(Z|X, θ)] ≤ ℓ(θ)

E-steps:

◮ Exact EM: q(Z) = argmax q

F = P(Z|X, θ)

slide-26
SLIDE 26

Variational learning

Free energy:

F(q, θ) = log P(X, Z|θ)q(Z|X) + H[q] = log P(X|θ) − KL[q(Z)P(Z|X, θ)] ≤ ℓ(θ)

E-steps:

◮ Exact EM: q(Z) = argmax q

F = P(Z|X, θ)

◮ Saturates bound: converges to local maximum of likelihood.

slide-27
SLIDE 27

Variational learning

Free energy:

F(q, θ) = log P(X, Z|θ)q(Z|X) + H[q] = log P(X|θ) − KL[q(Z)P(Z|X, θ)] ≤ ℓ(θ)

E-steps:

◮ Exact EM: q(Z) = argmax q

F = P(Z|X, θ)

◮ Saturates bound: converges to local maximum of likelihood.

◮ (Factored) variational approximation:

q(Z) = argmax

q1(Z1)q2(Z2)

F =

argmin

q1(Z1)q2(Z2)

KL[q1(Z1)q2(Z2)P(Z|X, θ)]

slide-28
SLIDE 28

Variational learning

Free energy:

F(q, θ) = log P(X, Z|θ)q(Z|X) + H[q] = log P(X|θ) − KL[q(Z)P(Z|X, θ)] ≤ ℓ(θ)

E-steps:

◮ Exact EM: q(Z) = argmax q

F = P(Z|X, θ)

◮ Saturates bound: converges to local maximum of likelihood.

◮ (Factored) variational approximation:

q(Z) = argmax

q1(Z1)q2(Z2)

F =

argmin

q1(Z1)q2(Z2)

KL[q1(Z1)q2(Z2)P(Z|X, θ)]

◮ Increases bound: converges, but not necessarily to ML.

slide-29
SLIDE 29

Variational learning

Free energy:

F(q, θ) = log P(X, Z|θ)q(Z|X) + H[q] = log P(X|θ) − KL[q(Z)P(Z|X, θ)] ≤ ℓ(θ)

E-steps:

◮ Exact EM: q(Z) = argmax q

F = P(Z|X, θ)

◮ Saturates bound: converges to local maximum of likelihood.

◮ (Factored) variational approximation:

q(Z) = argmax

q1(Z1)q2(Z2)

F =

argmin

q1(Z1)q2(Z2)

KL[q1(Z1)q2(Z2)P(Z|X, θ)]

◮ Increases bound: converges, but not necessarily to ML.

◮ Other approximations: q(Z) ≈ P(Z|X, θ)

slide-30
SLIDE 30

Variational learning

Free energy:

F(q, θ) = log P(X, Z|θ)q(Z|X) + H[q] = log P(X|θ) − KL[q(Z)P(Z|X, θ)] ≤ ℓ(θ)

E-steps:

◮ Exact EM: q(Z) = argmax q

F = P(Z|X, θ)

◮ Saturates bound: converges to local maximum of likelihood.

◮ (Factored) variational approximation:

q(Z) = argmax

q1(Z1)q2(Z2)

F =

argmin

q1(Z1)q2(Z2)

KL[q1(Z1)q2(Z2)P(Z|X, θ)]

◮ Increases bound: converges, but not necessarily to ML.

◮ Other approximations: q(Z) ≈ P(Z|X, θ)

◮ Usually no guarantees, but if learning converges it may be more accurate than the

factored approximation

slide-31
SLIDE 31

Approximating the posterior

Linearisation (or local Laplace, sigma-point and other such approaches) seem ad hoc. A more principled approach might look for an approximate q that is closest to P in some sense. q = argmin

q∈Q

D(P ↔ q)

slide-32
SLIDE 32

Approximating the posterior

Linearisation (or local Laplace, sigma-point and other such approaches) seem ad hoc. A more principled approach might look for an approximate q that is closest to P in some sense. q = argmin

q∈Q

D(P ↔ q) Open choices:

◮ form of the metric D ◮ nature of the constraint space Q

slide-33
SLIDE 33

Approximating the posterior

Linearisation (or local Laplace, sigma-point and other such approaches) seem ad hoc. A more principled approach might look for an approximate q that is closest to P in some sense. q = argmin

q∈Q

D(P ↔ q) Open choices:

◮ form of the metric D ◮ nature of the constraint space Q

◮ Variational methods: D = KL[qP].

slide-34
SLIDE 34

Approximating the posterior

Linearisation (or local Laplace, sigma-point and other such approaches) seem ad hoc. A more principled approach might look for an approximate q that is closest to P in some sense. q = argmin

q∈Q

D(P ↔ q) Open choices:

◮ form of the metric D ◮ nature of the constraint space Q

◮ Variational methods: D = KL[qP].

◮ Choosing Q = {tree-factored distributions} leads to efficient message passing.

slide-35
SLIDE 35

Approximating the posterior

Linearisation (or local Laplace, sigma-point and other such approaches) seem ad hoc. A more principled approach might look for an approximate q that is closest to P in some sense. q = argmin

q∈Q

D(P ↔ q) Open choices:

◮ form of the metric D ◮ nature of the constraint space Q

◮ Variational methods: D = KL[qP].

◮ Choosing Q = {tree-factored distributions} leads to efficient message passing.

◮ Can we use other divergences?

slide-36
SLIDE 36

The other KL

What about the ‘other’ KL (q = argmin KL[Pq])?

slide-37
SLIDE 37

The other KL

What about the ‘other’ KL (q = argmin KL[Pq])? For a factored approximation the (clique) marginals obtained by minimising this KL are correct:

slide-38
SLIDE 38

The other KL

What about the ‘other’ KL (q = argmin KL[Pq])? For a factored approximation the (clique) marginals obtained by minimising this KL are correct: argmin

qi

KL

  • P(Z|X)
  • qj(Zj|X)
  • = argmin

qi

  • dZ P(Z|X) log
  • j

qj(Zj|X)

slide-39
SLIDE 39

The other KL

What about the ‘other’ KL (q = argmin KL[Pq])? For a factored approximation the (clique) marginals obtained by minimising this KL are correct: argmin

qi

KL

  • P(Z|X)
  • qj(Zj|X)
  • = argmin

qi

  • dZ P(Z|X) log
  • j

qj(Zj|X)

= argmin

qi

  • j
  • dZ P(Z|X) log qj(Zj|X)
slide-40
SLIDE 40

The other KL

What about the ‘other’ KL (q = argmin KL[Pq])? For a factored approximation the (clique) marginals obtained by minimising this KL are correct: argmin

qi

KL

  • P(Z|X)
  • qj(Zj|X)
  • = argmin

qi

  • dZ P(Z|X) log
  • j

qj(Zj|X)

= argmin

qi

  • j
  • dZ P(Z|X) log qj(Zj|X)

= argmin

qi

  • dZi P(Zi|X) log qi(Zi|X)
slide-41
SLIDE 41

The other KL

What about the ‘other’ KL (q = argmin KL[Pq])? For a factored approximation the (clique) marginals obtained by minimising this KL are correct: argmin

qi

KL

  • P(Z|X)
  • qj(Zj|X)
  • = argmin

qi

  • dZ P(Z|X) log
  • j

qj(Zj|X)

= argmin

qi

  • j
  • dZ P(Z|X) log qj(Zj|X)

= argmin

qi

  • dZi P(Zi|X) log qi(Zi|X)

= P(Zi|X)

and the marginals are what we need for learning (although if factored over disjoint sets as in the variational approximation some cliques will be missing).

slide-42
SLIDE 42

The other KL

What about the ‘other’ KL (q = argmin KL[Pq])? For a factored approximation the (clique) marginals obtained by minimising this KL are correct: argmin

qi

KL

  • P(Z|X)
  • qj(Zj|X)
  • = argmin

qi

  • dZ P(Z|X) log
  • j

qj(Zj|X)

= argmin

qi

  • j
  • dZ P(Z|X) log qj(Zj|X)

= argmin

qi

  • dZi P(Zi|X) log qi(Zi|X)

= P(Zi|X)

and the marginals are what we need for learning (although if factored over disjoint sets as in the variational approximation some cliques will be missing). Perversely, this means finding the best q for this KL is intractable!

slide-43
SLIDE 43

The other KL

What about the ‘other’ KL (q = argmin KL[Pq])? For a factored approximation the (clique) marginals obtained by minimising this KL are correct: argmin

qi

KL

  • P(Z|X)
  • qj(Zj|X)
  • = argmin

qi

  • dZ P(Z|X) log
  • j

qj(Zj|X)

= argmin

qi

  • j
  • dZ P(Z|X) log qj(Zj|X)

= argmin

qi

  • dZi P(Zi|X) log qi(Zi|X)

= P(Zi|X)

and the marginals are what we need for learning (although if factored over disjoint sets as in the variational approximation some cliques will be missing). Perversely, this means finding the best q for this KL is intractable! But it raises the hope that approximate minimisation might still yield useful results.

slide-44
SLIDE 44

Approximate optimisation

The posterior distribution in a graphical model is a (normalised) product of factors: P(Z|X) = P(Z, X) P(X)

= 1

Z

  • i

P(Zi| pa(Zi)) ∝

N

  • i=1

fi(Zi) where the Zi are not necessarily disjoint. In the language of EP the fi are called sites.

slide-45
SLIDE 45

Approximate optimisation

The posterior distribution in a graphical model is a (normalised) product of factors: P(Z|X) = P(Z, X) P(X)

= 1

Z

  • i

P(Zi| pa(Zi)) ∝

N

  • i=1

fi(Zi) where the Zi are not necessarily disjoint. In the language of EP the fi are called sites. Consider q with the same factorisation, but potentially approximated sites: q(Z)

def

=

N

  • i=1

˜

fi(Zi). We would like to minimise (at least in some sense) KL[Pq].

slide-46
SLIDE 46

Approximate optimisation

The posterior distribution in a graphical model is a (normalised) product of factors: P(Z|X) = P(Z, X) P(X)

= 1

Z

  • i

P(Zi| pa(Zi)) ∝

N

  • i=1

fi(Zi) where the Zi are not necessarily disjoint. In the language of EP the fi are called sites. Consider q with the same factorisation, but potentially approximated sites: q(Z)

def

=

N

  • i=1

˜

fi(Zi). We would like to minimise (at least in some sense) KL[Pq]. Possible optimisations:

slide-47
SLIDE 47

Approximate optimisation

The posterior distribution in a graphical model is a (normalised) product of factors: P(Z|X) = P(Z, X) P(X)

= 1

Z

  • i

P(Zi| pa(Zi)) ∝

N

  • i=1

fi(Zi) where the Zi are not necessarily disjoint. In the language of EP the fi are called sites. Consider q with the same factorisation, but potentially approximated sites: q(Z)

def

=

N

  • i=1

˜

fi(Zi). We would like to minimise (at least in some sense) KL[Pq]. Possible optimisations: min

{˜ fi}

KL

N

  • i=1

fi(Zi)

  • N
  • i=1

˜

fi(Zi)

  • (global: intractable)
slide-48
SLIDE 48

Approximate optimisation

The posterior distribution in a graphical model is a (normalised) product of factors: P(Z|X) = P(Z, X) P(X)

= 1

Z

  • i

P(Zi| pa(Zi)) ∝

N

  • i=1

fi(Zi) where the Zi are not necessarily disjoint. In the language of EP the fi are called sites. Consider q with the same factorisation, but potentially approximated sites: q(Z)

def

=

N

  • i=1

˜

fi(Zi). We would like to minimise (at least in some sense) KL[Pq]. Possible optimisations: min

{˜ fi}

KL

N

  • i=1

fi(Zi)

  • N
  • i=1

˜

fi(Zi)

  • (global: intractable)

min

˜ fi

KL

  • fi(Zi)
  • ˜

fi(Zi)

  • (local, fixed: simple, inaccurate)
slide-49
SLIDE 49

Approximate optimisation

The posterior distribution in a graphical model is a (normalised) product of factors: P(Z|X) = P(Z, X) P(X)

= 1

Z

  • i

P(Zi| pa(Zi)) ∝

N

  • i=1

fi(Zi) where the Zi are not necessarily disjoint. In the language of EP the fi are called sites. Consider q with the same factorisation, but potentially approximated sites: q(Z)

def

=

N

  • i=1

˜

fi(Zi). We would like to minimise (at least in some sense) KL[Pq]. Possible optimisations: min

{˜ fi}

KL

N

  • i=1

fi(Zi)

  • N
  • i=1

˜

fi(Zi)

  • (global: intractable)

min

˜ fi

KL

  • fi(Zi)
  • ˜

fi(Zi)

  • (local, fixed: simple, inaccurate)

min

˜ fi

KL

  • fi(Zi)
  • j=i

˜

fj(Zj)

  • ˜

fi(Zi)

  • j=i

˜

fj(Zj)

  • (local, contextual: iterative, accurate)
slide-50
SLIDE 50

Approximate optimisation

The posterior distribution in a graphical model is a (normalised) product of factors: P(Z|X) = P(Z, X) P(X)

= 1

Z

  • i

P(Zi| pa(Zi)) ∝

N

  • i=1

fi(Zi) where the Zi are not necessarily disjoint. In the language of EP the fi are called sites. Consider q with the same factorisation, but potentially approximated sites: q(Z)

def

=

N

  • i=1

˜

fi(Zi). We would like to minimise (at least in some sense) KL[Pq]. Possible optimisations: min

{˜ fi}

KL

N

  • i=1

fi(Zi)

  • N
  • i=1

˜

fi(Zi)

  • (global: intractable)

min

˜ fi

KL

  • fi(Zi)
  • ˜

fi(Zi)

  • (local, fixed: simple, inaccurate)

min

˜ fi

KL

  • fi(Zi)
  • j=i

˜

fj(Zj)

  • ˜

fi(Zi)

  • j=i

˜

fj(Zj)

  • (local, contextual: iterative, accurate) ← EP
slide-51
SLIDE 51

Expectation? Propagation?

EP is really two ideas:

◮ Approximation of factors.

slide-52
SLIDE 52

Expectation? Propagation?

EP is really two ideas:

◮ Approximation of factors.

◮ Usually by “projection” to exponential families. ◮ This involves finding expected sufficient statistics, hence expectation.

slide-53
SLIDE 53

Expectation? Propagation?

EP is really two ideas:

◮ Approximation of factors.

◮ Usually by “projection” to exponential families. ◮ This involves finding expected sufficient statistics, hence expectation.

◮ Local divergence minimization in the context of other factors.

slide-54
SLIDE 54

Expectation? Propagation?

EP is really two ideas:

◮ Approximation of factors.

◮ Usually by “projection” to exponential families. ◮ This involves finding expected sufficient statistics, hence expectation.

◮ Local divergence minimization in the context of other factors.

◮ This leads to a message passing approach, hence propagation.

slide-55
SLIDE 55

Local updates

Each EP update involves a KL minimisation:

˜

f new

i

(Z) ← argmin

f∈{˜ f}

KL[fi(Zi)q¬i(Z)f(Zi)q¬i(Z)]

  • q¬i(Z)

def

=

  • j=i

˜

fj(Zj)

  • Write q¬i(Z) = q¬i(Zi)q¬i(Z¬i|Zi). Then:

[Z¬i

def

= Z\Zi]

min

f

KL[fi(Zi)q¬i(Z)f(Zi)q¬i(Z)]

= max

f

  • dZidZ¬i fi(Zi)q¬i(Z) log f(Zi)q¬i(Z)

= max

f

  • dZidZ¬i fi(Zi)q¬i(Zi)q¬i(Z¬i|Zi)
  • log f(Zi)q¬i(Zi) + log q¬i(Z¬i|Zi)

= max

f

  • dZi fi(Zi)q¬i(Zi)
  • log f(Zi)q¬i(Zi))
  • dZ¬i q¬i(Z¬i|Zi)

= min

f

KL[fi(Zi)q¬i(Zi)f(Zi)q¬i(Zi)] q¬i(Zi) is sometimes called the cavity distribution.

slide-56
SLIDE 56

Expectation Propagation (EP)

Input f1(Z1) . . . fN(ZN) Initialize˜ f1(Z1) = argmin

f∈{˜ f}

KL[f1(Z1)f1(Z1)], ˜ fi(Zi) = 1 for i > 1, q(Z) ∝

i ˜

fi(Zi) repeat for i = 1 . . . N do Delete: q¬i(Z) ← q(Z)

˜

fi(Zi)

=

  • j=i

˜

fj(Zj) Project: ˜ f new

i

(Z) ← argmin

f∈{˜ f}

KL[fi(Zi)q¬i(Zi)f(Zi)q¬i(Zi)] Include: q(Z) ← ˜ f new

i

(Zi) q¬i(Z)

end for until convergence

slide-57
SLIDE 57

Message Passing

◮ The cavity distribution (in a tree) can be further broken down into a product of terms

from each neighbouring clique: q¬i(Zi) =

  • j∈ne(i)

Mj→i(Zj ∩ Zi)

slide-58
SLIDE 58

Message Passing

◮ The cavity distribution (in a tree) can be further broken down into a product of terms

from each neighbouring clique: q¬i(Zi) =

  • j∈ne(i)

Mj→i(Zj ∩ Zi)

◮ Once the ith site has been approximated, the messages can be passed on to

neighbouring cliques by marginalising to the shared variables (SSM example follows).

⇒ belief propagation.

slide-59
SLIDE 59

Message Passing

◮ The cavity distribution (in a tree) can be further broken down into a product of terms

from each neighbouring clique: q¬i(Zi) =

  • j∈ne(i)

Mj→i(Zj ∩ Zi)

◮ Once the ith site has been approximated, the messages can be passed on to

neighbouring cliques by marginalising to the shared variables (SSM example follows).

⇒ belief propagation.

◮ In loopy graphs, we can use loopy belief propagation. In that case

q¬i(Zi) =

  • j∈ne(i)

Mj→i(Zj ∩ Zi) becomes an approximation to the true cavity distribution (or we can recast the approximation directly in terms of messages ⇒ later lecture).

slide-60
SLIDE 60

Message Passing

◮ The cavity distribution (in a tree) can be further broken down into a product of terms

from each neighbouring clique: q¬i(Zi) =

  • j∈ne(i)

Mj→i(Zj ∩ Zi)

◮ Once the ith site has been approximated, the messages can be passed on to

neighbouring cliques by marginalising to the shared variables (SSM example follows).

⇒ belief propagation.

◮ In loopy graphs, we can use loopy belief propagation. In that case

q¬i(Zi) =

  • j∈ne(i)

Mj→i(Zj ∩ Zi) becomes an approximation to the true cavity distribution (or we can recast the approximation directly in terms of messages ⇒ later lecture).

◮ For some approximations (e.g. Gaussian) may be able to compute true loopy cavity

using approximate sites, even if computing exact message would have been intractable.

slide-61
SLIDE 61

Message Passing

◮ The cavity distribution (in a tree) can be further broken down into a product of terms

from each neighbouring clique: q¬i(Zi) =

  • j∈ne(i)

Mj→i(Zj ∩ Zi)

◮ Once the ith site has been approximated, the messages can be passed on to

neighbouring cliques by marginalising to the shared variables (SSM example follows).

⇒ belief propagation.

◮ In loopy graphs, we can use loopy belief propagation. In that case

q¬i(Zi) =

  • j∈ne(i)

Mj→i(Zj ∩ Zi) becomes an approximation to the true cavity distribution (or we can recast the approximation directly in terms of messages ⇒ later lecture).

◮ For some approximations (e.g. Gaussian) may be able to compute true loopy cavity

using approximate sites, even if computing exact message would have been intractable.

◮ In either case, message updates can be scheduled in any order.

slide-62
SLIDE 62

Message Passing

◮ The cavity distribution (in a tree) can be further broken down into a product of terms

from each neighbouring clique: q¬i(Zi) =

  • j∈ne(i)

Mj→i(Zj ∩ Zi)

◮ Once the ith site has been approximated, the messages can be passed on to

neighbouring cliques by marginalising to the shared variables (SSM example follows).

⇒ belief propagation.

◮ In loopy graphs, we can use loopy belief propagation. In that case

q¬i(Zi) =

  • j∈ne(i)

Mj→i(Zj ∩ Zi) becomes an approximation to the true cavity distribution (or we can recast the approximation directly in terms of messages ⇒ later lecture).

◮ For some approximations (e.g. Gaussian) may be able to compute true loopy cavity

using approximate sites, even if computing exact message would have been intractable.

◮ In either case, message updates can be scheduled in any order. ◮ No guarantee of convergence (but see “power-EP” methods).

slide-63
SLIDE 63

EP for a NLSSM

zi−2 zi−1 zi zi+1 zi+2

  • • •
  • • •

xi−2 xi−1 xi xi+1 xi+2 P(zi|zi−1) = φi(zi, zi−1) e.g. exp(−zi − hs(zi−1)2/2σ2) P(xi|zi) = ψi(zi) e.g. exp(−xi − ho(zi)2/2σ2)

slide-64
SLIDE 64

EP for a NLSSM

zi−2 zi−1 zi zi+1 zi+2

  • • •
  • • •

xi−2 xi−1 xi xi+1 xi+2 P(zi|zi−1) = φi(zi, zi−1) e.g. exp(−zi − hs(zi−1)2/2σ2) P(xi|zi) = ψi(zi) e.g. exp(−xi − ho(zi)2/2σ2) Then fi(zi, zi−1) = φi(zi, zi−1)ψi(zi). As φi and ψi are non-linear, inference is not generally tractable.

slide-65
SLIDE 65

EP for a NLSSM

zi−2 zi−1 zi zi+1 zi+2

  • • •
  • • •

xi−2 xi−1 xi xi+1 xi+2 P(zi|zi−1) = φi(zi, zi−1) e.g. exp(−zi − hs(zi−1)2/2σ2) P(xi|zi) = ψi(zi) e.g. exp(−xi − ho(zi)2/2σ2) Then fi(zi, zi−1) = φi(zi, zi−1)ψi(zi). As φi and ψi are non-linear, inference is not generally tractable. Assume˜ fi(zi, zi−1) is Gaussian. Then, q¬i(zi, zi−1) =

  • z1...zi−2

zi+1...zi

  • i′=i

˜

fi′(zi′, zi′−1) =

  • z1...zi−2
  • i′<i

˜

fi′(zi′, zi′−1)

  • αi−1(zi−1)
  • zi+1...zn
  • i′>i

˜

fi′(zi′, zi′−1)

  • βi(zi)

with both α and β Gaussian.

slide-66
SLIDE 66

EP for a NLSSM

zi−2 zi−1 zi zi+1 zi+2

  • • •
  • • •

xi−2 xi−1 xi xi+1 xi+2 P(zi|zi−1) = φi(zi, zi−1) e.g. exp(−zi − hs(zi−1)2/2σ2) P(xi|zi) = ψi(zi) e.g. exp(−xi − ho(zi)2/2σ2) Then fi(zi, zi−1) = φi(zi, zi−1)ψi(zi). As φi and ψi are non-linear, inference is not generally tractable. Assume˜ fi(zi, zi−1) is Gaussian. Then, q¬i(zi, zi−1) =

  • z1...zi−2

zi+1...zi

  • i′=i

˜

fi′(zi′, zi′−1) =

  • z1...zi−2
  • i′<i

˜

fi′(zi′, zi′−1)

  • αi−1(zi−1)
  • zi+1...zn
  • i′>i

˜

fi′(zi′, zi′−1)

  • βi(zi)

with both α and β Gaussian.

˜

fi(zi, zi−1) = argmin

f∈N

KL

  • φi(zi, zi−1)ψi(zi)αi−1(zi−1)βi(zi)
  • f(zi, zi−1)αi−1(zi−1)βi(zi)
slide-67
SLIDE 67

NLSSM EP message updates

˜

fi(zi, zi−1) = argmin

f∈N

KL

  • f(zi, zi−1)q¬i(zi, zi−1)
  • f(zi, zi−1)q¬i(zi, zi−1)
slide-68
SLIDE 68

NLSSM EP message updates

˜

fi(zi, zi−1) = argmin

f∈N

KL

  • φi(zi, zi−1)ψi(zi)αi−1(zi−1)βi(zi)
  • f(zi, zi−1)αi−1(zi−1)βi(zi)
  • zi−1

zi αi−1 βi f q¬i

slide-69
SLIDE 69

NLSSM EP message updates

˜

fi(zi, zi−1) = argmin

f∈N

KL

  • φi(zi, zi−1)ψi(zi)αi−1(zi−1)βi(zi)
  • P(zi−1,zi)
  • f(zi, zi−1)αi−1(zi−1)βi(zi)
  • P(zi−1,zi)
  • zi−1

zi αi−1 βi f q¬i

  • P
slide-70
SLIDE 70

NLSSM EP message updates

˜

fi(zi, zi−1) = argmin

f∈N

KL

  • φi(zi, zi−1)ψi(zi)αi−1(zi−1)βi(zi)
  • P(zi−1,zi)
  • f(zi, zi−1)αi−1(zi−1)βi(zi)
  • P(zi−1,zi)
  • ˜

P(zi−1, zi) = argmin

P∈N

KL

  • P(zi−1, zi)
  • P(zi−1, zi)
  • zi−1

zi αi−1 βi f q¬i

  • P

zi−1 zi

  • P

˜ P

slide-71
SLIDE 71

NLSSM EP message updates

˜

fi(zi, zi−1) = argmin

f∈N

KL

  • φi(zi, zi−1)ψi(zi)αi−1(zi−1)βi(zi)
  • P(zi−1,zi)
  • f(zi, zi−1)αi−1(zi−1)βi(zi)
  • P(zi−1,zi)
  • ˜

P(zi−1, zi) = argmin

P∈N

KL

  • P(zi−1, zi)
  • P(zi−1, zi)
  • ˜

fi(zi, zi−1) =

˜

P(zi−1, zi)

αi−1(zi−1)βi(zi)

zi−1 zi αi−1 βi f q¬i

  • P

zi−1 zi

  • P

˜ P

slide-72
SLIDE 72

NLSSM EP message updates

˜

fi(zi, zi−1) = argmin

f∈N

KL

  • φi(zi, zi−1)ψi(zi)αi−1(zi−1)βi(zi)
  • P(zi−1,zi)
  • f(zi, zi−1)αi−1(zi−1)βi(zi)
  • P(zi−1,zi)
  • ˜

P(zi−1, zi) = argmin

P∈N

KL

  • P(zi−1, zi)
  • P(zi−1, zi)
  • ˜

fi(zi, zi−1) =

˜

P(zi−1, zi)

αi−1(zi−1)βi(zi) αi(zi) =

  • z1...zi−1
  • i′<i+1

˜

fi′(zi′, zi′−1) =

  • zi−1

αi−1(zi−1)˜

fi(zi, zi−1) = 1

βi(zi)

  • zi−1

˜

P(zi−1, zi)

βi−1(zi−1) =

  • zi+1...zi
  • i′>i

˜

fi′(zi′, zi′−1) =

  • zi

βi(zi)˜

fi(zi, zi−1) = 1

αi−1(zi−1)

  • zi

˜

P(zi−1, zi)

zi−1 zi αi−1 βi f q¬i

  • P

zi−1 zi

  • P

˜ P βi−1 αi

slide-73
SLIDE 73

Moment Matching

Each EP update involves a KL minimisation:

˜

f new

i

(Z) ← argmin

f∈{˜ f}

KL[fi(Zi)q¬i(Z)f(Zi)q¬i(Z)] Usually, both q¬i(Zi) and˜ f are in the same exponential family. Let q(x) =

1 Z(θ)eT(x)·θ. Then

argmin

q

KL

  • p(x)
  • q(x)
  • = argmin

θ

KL

  • p(x)
  • 1

Z(θ)eT(x)·θ

  • = argmin

θ

  • dx p(x) log

1 Z(θ)eT(x)·θ

= argmin

θ

  • dx p(x)T(x) · θ + log Z(θ)

∂ ∂θ = −

  • dx p(x)T(x) +

1 Z(θ)

∂ ∂θ

  • dx eT(x)·θ

= −T(x)p +

1 Z(θ)

  • dx eT(x)·θT(x)

= −T(x)p + T(x)q

So minimum is found by matching sufficient stats. This is usually moment matching.

slide-74
SLIDE 74

Numerical issues

How do we calculate T(x)p?

slide-75
SLIDE 75

Numerical issues

How do we calculate T(x)p? Often analytically tractable, but even if not requires a (relatively) low-dimensional integral:

◮ Quadrature methods.

slide-76
SLIDE 76

Numerical issues

How do we calculate T(x)p? Often analytically tractable, but even if not requires a (relatively) low-dimensional integral:

◮ Quadrature methods.

◮ Classical Gaussian quadrature (same Gauss, but nothing to do with the

distribution) gives an iterative version of Sigma-point methods.

slide-77
SLIDE 77

Numerical issues

How do we calculate T(x)p? Often analytically tractable, but even if not requires a (relatively) low-dimensional integral:

◮ Quadrature methods.

◮ Classical Gaussian quadrature (same Gauss, but nothing to do with the

distribution) gives an iterative version of Sigma-point methods.

◮ Positive definite joints, but not guaranteed to give positive definite messages.

slide-78
SLIDE 78

Numerical issues

How do we calculate T(x)p? Often analytically tractable, but even if not requires a (relatively) low-dimensional integral:

◮ Quadrature methods.

◮ Classical Gaussian quadrature (same Gauss, but nothing to do with the

distribution) gives an iterative version of Sigma-point methods.

◮ Positive definite joints, but not guaranteed to give positive definite messages. ◮ Heuristics include skipping non-positive-definite steps, or damping messages by

interpolation or exponentiating to power < 1.

slide-79
SLIDE 79

Numerical issues

How do we calculate T(x)p? Often analytically tractable, but even if not requires a (relatively) low-dimensional integral:

◮ Quadrature methods.

◮ Classical Gaussian quadrature (same Gauss, but nothing to do with the

distribution) gives an iterative version of Sigma-point methods.

◮ Positive definite joints, but not guaranteed to give positive definite messages. ◮ Heuristics include skipping non-positive-definite steps, or damping messages by

interpolation or exponentiating to power < 1.

◮ Other quadrature approaches (e.g. GP quadrature) may be more accurate, and

may allow formal constraint to pos-def cone.

slide-80
SLIDE 80

Numerical issues

How do we calculate T(x)p? Often analytically tractable, but even if not requires a (relatively) low-dimensional integral:

◮ Quadrature methods.

◮ Classical Gaussian quadrature (same Gauss, but nothing to do with the

distribution) gives an iterative version of Sigma-point methods.

◮ Positive definite joints, but not guaranteed to give positive definite messages. ◮ Heuristics include skipping non-positive-definite steps, or damping messages by

interpolation or exponentiating to power < 1.

◮ Other quadrature approaches (e.g. GP quadrature) may be more accurate, and

may allow formal constraint to pos-def cone.

◮ Laplace approximation.

slide-81
SLIDE 81

Numerical issues

How do we calculate T(x)p? Often analytically tractable, but even if not requires a (relatively) low-dimensional integral:

◮ Quadrature methods.

◮ Classical Gaussian quadrature (same Gauss, but nothing to do with the

distribution) gives an iterative version of Sigma-point methods.

◮ Positive definite joints, but not guaranteed to give positive definite messages. ◮ Heuristics include skipping non-positive-definite steps, or damping messages by

interpolation or exponentiating to power < 1.

◮ Other quadrature approaches (e.g. GP quadrature) may be more accurate, and

may allow formal constraint to pos-def cone.

◮ Laplace approximation.

◮ Equivalent to Laplace propagation.

slide-82
SLIDE 82

Numerical issues

How do we calculate T(x)p? Often analytically tractable, but even if not requires a (relatively) low-dimensional integral:

◮ Quadrature methods.

◮ Classical Gaussian quadrature (same Gauss, but nothing to do with the

distribution) gives an iterative version of Sigma-point methods.

◮ Positive definite joints, but not guaranteed to give positive definite messages. ◮ Heuristics include skipping non-positive-definite steps, or damping messages by

interpolation or exponentiating to power < 1.

◮ Other quadrature approaches (e.g. GP quadrature) may be more accurate, and

may allow formal constraint to pos-def cone.

◮ Laplace approximation.

◮ Equivalent to Laplace propagation. ◮ As long as messages remain positive definite will converge to global Laplace

approximation.

slide-83
SLIDE 83

EP for Gaussian process classification

EP provides a succesful framework for Gaussian-process modelling of non-Gaussian

  • bservations (e.g. for classification).
slide-84
SLIDE 84

EP for Gaussian process classification

EP provides a succesful framework for Gaussian-process modelling of non-Gaussian

  • bservations (e.g. for classification).

g1 g2 g3 gn

  • • •

x1 x2 x3 xn

  • • •

Recall:

◮ A GP defines a multivariate Gaussian distribution on any finite subset of random vars

{g1 . . . gn} drawn from a (usually uncountable) potential set indexed by “inputs” xi.

slide-85
SLIDE 85

EP for Gaussian process classification

EP provides a succesful framework for Gaussian-process modelling of non-Gaussian

  • bservations (e.g. for classification).

g1 g2 g3 gn

  • • •

x1 x2 x3 xn

  • • •

K Recall:

◮ A GP defines a multivariate Gaussian distribution on any finite subset of random vars

{g1 . . . gn} drawn from a (usually uncountable) potential set indexed by “inputs” xi.

◮ The Gaussian parameters depend on the inputs: (µ = [µ(xi)], Σ = [K(xi, xj)]).

slide-86
SLIDE 86

EP for Gaussian process classification

EP provides a succesful framework for Gaussian-process modelling of non-Gaussian

  • bservations (e.g. for classification).

g1 g2 g3 gn

  • • •

x1 x2 x3 xn

  • • •

K Recall:

◮ A GP defines a multivariate Gaussian distribution on any finite subset of random vars

{g1 . . . gn} drawn from a (usually uncountable) potential set indexed by “inputs” xi.

◮ The Gaussian parameters depend on the inputs: (µ = [µ(xi)], Σ = [K(xi, xj)]). ◮ If we think of the gs as function values, a GP provides a prior over functions.

slide-87
SLIDE 87

EP for Gaussian process classification

EP provides a succesful framework for Gaussian-process modelling of non-Gaussian

  • bservations (e.g. for classification).

g1 g2 g3 gn

  • • •

x1 x2 x3 xn

  • • •

K y1 y2 y3 yn Recall:

◮ A GP defines a multivariate Gaussian distribution on any finite subset of random vars

{g1 . . . gn} drawn from a (usually uncountable) potential set indexed by “inputs” xi.

◮ The Gaussian parameters depend on the inputs: (µ = [µ(xi)], Σ = [K(xi, xj)]). ◮ If we think of the gs as function values, a GP provides a prior over functions. ◮ In a GP regression model, noisy observations yi are conditionally independent given gi.

slide-88
SLIDE 88

EP for Gaussian process classification

EP provides a succesful framework for Gaussian-process modelling of non-Gaussian

  • bservations (e.g. for classification).

g1 g2 g3 gn

  • • •

x1 x2 x3 xn

  • • •

K y1 y2 y3 yn x′ g′ y′ Recall:

◮ A GP defines a multivariate Gaussian distribution on any finite subset of random vars

{g1 . . . gn} drawn from a (usually uncountable) potential set indexed by “inputs” xi.

◮ The Gaussian parameters depend on the inputs: (µ = [µ(xi)], Σ = [K(xi, xj)]). ◮ If we think of the gs as function values, a GP provides a prior over functions. ◮ In a GP regression model, noisy observations yi are conditionally independent given gi. ◮ No parameters to learn (though often hyperparameters); instead, we make predictions

  • n test data directly: [assuming µ = 0, and matrix Σ incorporates diagonal noise]

P(y′|x′, D) = N

  • Σx′,XΣ−1

X,Xz, Σx′,x′ − Σx′,XΣ−1 X,XΣX,x′

slide-89
SLIDE 89

GP EP updates

g1 g2 g3 gn

  • • •

y1 y2 y3 yn

◮ We can write the GP joint on gi and yi as a factor graph:

P(g1 . . . gn, y1, . . . yn) = N (g1 . . . gn|0, K)

  • i

N

  • yi|gi, σ2

i

slide-90
SLIDE 90

GP EP updates

g1 g2 g3 gn

  • • •

y1 y2 y3 yn

◮ We can write the GP joint on gi and yi as a factor graph:

P(g1 . . . gn, y1, . . . yn) = N (g1 . . . gn|0, K)

  • f0(G)
  • i

N

  • yi|gi, σ2

i

  • fi(gi)
slide-91
SLIDE 91

GP EP updates

g1 g2 g3 gn

  • • •

y1 y2 y3 yn

◮ We can write the GP joint on gi and yi as a factor graph:

P(g1 . . . gn, y1, . . . yn) = N (g1 . . . gn|0, K)

  • f0(G)
  • i

N

  • yi|gi, σ2

i

  • fi(gi)

◮ The same factorisation applies to non-Gaussian P(yi|gi) (e.g. P(yi=1) = 1/(1 + e−gi )).

slide-92
SLIDE 92

GP EP updates

g1 g2 g3 gn

  • • •

y1 y2 y3 yn

◮ We can write the GP joint on gi and yi as a factor graph:

P(g1 . . . gn, y1, . . . yn) = N (g1 . . . gn|0, K)

  • f0(G)
  • i

N

  • yi|gi, σ2

i

  • fi(gi)

◮ The same factorisation applies to non-Gaussian P(yi|gi) (e.g. P(yi=1) = 1/(1 + e−gi )). ◮ EP: approximate non-Gaussian fi(gi) by Gaussian˜

fi(gi) = N

  • ˜

µi, ˜ ψ2

i

  • .
slide-93
SLIDE 93

GP EP updates

g1 g2 g3 gn

  • • •

y1 y2 y3 yn

◮ We can write the GP joint on gi and yi as a factor graph:

P(g1 . . . gn, y1, . . . yn) = N (g1 . . . gn|0, K)

  • f0(G)
  • i

N

  • yi|gi, σ2

i

  • fi(gi)

◮ The same factorisation applies to non-Gaussian P(yi|gi) (e.g. P(yi=1) = 1/(1 + e−gi )). ◮ EP: approximate non-Gaussian fi(gi) by Gaussian˜

fi(gi) = N

  • ˜

µi, ˜ ψ2

i

  • .

◮ q¬i(gi) can be constructed by the usual GP marginalisation. If Σ = K + diag

  • ˜

ψ2

1 . . . ˜

ψ2

n

  • q¬i(gi) = N
  • Σi,¬iΣ−1

¬i,¬i ˜

µ¬i, Ki,i − Σi,¬iΣ−1

¬i,¬iΣ¬i,i

slide-94
SLIDE 94

GP EP updates

g1 g2 g3 gn

  • • •

y1 y2 y3 yn

◮ We can write the GP joint on gi and yi as a factor graph:

P(g1 . . . gn, y1, . . . yn) = N (g1 . . . gn|0, K)

  • f0(G)
  • i

N

  • yi|gi, σ2

i

  • fi(gi)

◮ The same factorisation applies to non-Gaussian P(yi|gi) (e.g. P(yi=1) = 1/(1 + e−gi )). ◮ EP: approximate non-Gaussian fi(gi) by Gaussian˜

fi(gi) = N

  • ˜

µi, ˜ ψ2

i

  • .

◮ q¬i(gi) can be constructed by the usual GP marginalisation. If Σ = K + diag

  • ˜

ψ2

1 . . . ˜

ψ2

n

  • q¬i(gi) = N
  • Σi,¬iΣ−1

¬i,¬i ˜

µ¬i, Ki,i − Σi,¬iΣ−1

¬i,¬iΣ¬i,i

  • ◮ The EP updates thus require calculating Gaussian expectations of fi(g)g{1,2}:

˜

f new

i

(gi) = N

  • dg q¬i(g)fi(g)g,
  • dg q¬i(g)fi(g)g2 − (˜

µnew

i

)2

q¬i(gi)

slide-95
SLIDE 95

EP GP prediction

x1 x2 x3 xn

  • • •

K g1 g2 g3 gn

  • • •

y1 y2 y3 yn

◮ Once appoximate site potentials have stabilised, they can be used to make predictions.

slide-96
SLIDE 96

EP GP prediction

x1 x2 x3 xn

  • • •

K g1 g2 g3 gn

  • • •

y1 y2 y3 yn x′

◮ Once appoximate site potentials have stabilised, they can be used to make predictions. ◮ Introducing a test point changes K, but does not affect the marginal P(g1 . . . gn) (by

consistency of the GP).

slide-97
SLIDE 97

EP GP prediction

x1 x2 x3 xn

  • • •

K g1 g2 g3 gn

  • • •

y1 y2 y3 yn x′ g′ y′

◮ Once appoximate site potentials have stabilised, they can be used to make predictions. ◮ Introducing a test point changes K, but does not affect the marginal P(g1 . . . gn) (by

consistency of the GP).

◮ The unobserved output factor provides no information about g′ (⇒ constant factor on g′)

slide-98
SLIDE 98

EP GP prediction

x1 x2 x3 xn

  • • •

K g1 g2 g3 gn

  • • •

y1 y2 y3 yn x′ g′ y′

◮ Once appoximate site potentials have stabilised, they can be used to make predictions. ◮ Introducing a test point changes K, but does not affect the marginal P(g1 . . . gn) (by

consistency of the GP).

◮ The unobserved output factor provides no information about g′ (⇒ constant factor on g′) ◮ Thus no change is needed to the approximating potentials˜

fi.

slide-99
SLIDE 99

EP GP prediction

x1 x2 x3 xn

  • • •

K g1 g2 g3 gn

  • • •

y1 y2 y3 yn x′ g′ y′

◮ Once appoximate site potentials have stabilised, they can be used to make predictions. ◮ Introducing a test point changes K, but does not affect the marginal P(g1 . . . gn) (by

consistency of the GP).

◮ The unobserved output factor provides no information about g′ (⇒ constant factor on g′) ◮ Thus no change is needed to the approximating potentials˜

fi.

◮ Predictions are obtained by marginalising the approximation: [let ˜

Ψ = diag[ ˜ ψ2

1 . . . ˜

ψ2

n]]

P(y′|x′, D) =

  • dg′ P(y′|g′)N
  • g′ | K x′,X(K X,X + ˜

Ψ)−1 ˜ µ,

K x′,x′ − K x′,X(K X,X + ˜

Ψ)−1K X,x′

slide-100
SLIDE 100

Normalisers

◮ As long as our approximating class is a tractable exponential family, normalisers can be

computed as needed.

slide-101
SLIDE 101

Normalisers

◮ As long as our approximating class is a tractable exponential family, normalisers can be

computed as needed.

◮ Consider an approximating class written

˜

fi(Zi) ∝ eT(Z)·θi−Φ(θi) i.e., we use a single sufficient statistic vector on all latents, setting entries in θi to 0 for suff stat functions that take cliques other than Zi.

slide-102
SLIDE 102

Normalisers

◮ As long as our approximating class is a tractable exponential family, normalisers can be

computed as needed.

◮ Consider an approximating class written

˜

fi(Zi) ∝ eT(Z)·θi−Φ(θi) i.e., we use a single sufficient statistic vector on all latents, setting entries in θi to 0 for suff stat functions that take cliques other than Zi.

◮ Then

q(Z) ∝

  • i

˜

fi ∝ eT(Z)·

θi− Φ(θi)

and so we can simply renormalise at the end as usual: q(Z) = eT(Z)·

θi−Φ( θi) .

slide-103
SLIDE 103

Normalisers

◮ As long as our approximating class is a tractable exponential family, normalisers can be

computed as needed.

◮ Consider an approximating class written

˜

fi(Zi) ∝ eT(Z)·θi−Φ(θi) i.e., we use a single sufficient statistic vector on all latents, setting entries in θi to 0 for suff stat functions that take cliques other than Zi.

◮ Then

q(Z) ∝

  • i

˜

fi ∝ eT(Z)·

θi− Φ(θi)

and so we can simply renormalise at the end as usual: q(Z) = eT(Z)·

θi−Φ( θi) . ◮ However, to compute an approximation to the likelihood i fi(Zi) we need to keep track

  • f the site integrals.
slide-104
SLIDE 104

Computing likelihoods – keeping track of normalisers

◮ Define unnormalised ExpFam approximating sites˜

fi = ˜ CieT(Z)·θi . Write θ = θj for the natural parameters of q(Z) and θ¬i =

j=i θj for the natural

parameters of q¬i(Z). Let Φ(θ) = log

  • eT(Z)·θ be the (tractable) ExpFam log normaliser.

◮ Now, at each EP step minimise the “unnormalised KL

”: KL[pq] =

  • dx p(x) log p(x)

q(x) +

  • dx
  • q(x) − p(x)
  • This matches the zeroth moment of fi(Zi)q¬i(Z) as well as the expected sufficient

statistics as before. That is:

  • ˜

CieT(Z)·θi

¬i

˜

CjeT(Z)·θj =

  • fi(Zi)
  • ¬i

˜

CjeT(Z)·θj

⇒ ˜

Ci = eΦi(θ¬i)−Φ(θ) where Φi is the log-normaliser of the “tilted” ExpFam Pi(Z) ∝ f(Zi)eT(Z)·θ.

◮ The likelihood approximation is then:

log

  • N
  • i=1

fi(Zi) ≈ log

  • N
  • i=1

˜

fi(Zi) = Φ(θ) +

  • log ˜

Ci

def

= ˜ ℓ

slide-105
SLIDE 105

Learning

EP yields approximate inferential posteriors. To learn (hyper)parameters we can use:

◮ Approximate Bayesian inference (analagous to VB)

slide-106
SLIDE 106

Learning

EP yields approximate inferential posteriors. To learn (hyper)parameters we can use:

◮ Approximate Bayesian inference (analagous to VB)

◮ may be difficult to construct a coherent normalisable exponential family

approximation on both latents and parameters.

slide-107
SLIDE 107

Learning

EP yields approximate inferential posteriors. To learn (hyper)parameters we can use:

◮ Approximate Bayesian inference (analagous to VB)

◮ may be difficult to construct a coherent normalisable exponential family

approximation on both latents and parameters.

◮ Approximate EM – maximize log P(X, Z)qEP(Z).

slide-108
SLIDE 108

Learning

EP yields approximate inferential posteriors. To learn (hyper)parameters we can use:

◮ Approximate Bayesian inference (analagous to VB)

◮ may be difficult to construct a coherent normalisable exponential family

approximation on both latents and parameters.

◮ Approximate EM – maximize log P(X, Z)qEP(Z).

◮ Practical, but no coherent cost function (unlike variational inference), so no

guarantee of convergence even if EP itself converges.

slide-109
SLIDE 109

Learning

EP yields approximate inferential posteriors. To learn (hyper)parameters we can use:

◮ Approximate Bayesian inference (analagous to VB)

◮ may be difficult to construct a coherent normalisable exponential family

approximation on both latents and parameters.

◮ Approximate EM – maximize log P(X, Z)qEP(Z).

◮ Practical, but no coherent cost function (unlike variational inference), so no

guarantee of convergence even if EP itself converges.

◮ Direct maximisation of EP log-likelihood estimate.

slide-110
SLIDE 110

Learning

EP yields approximate inferential posteriors. To learn (hyper)parameters we can use:

◮ Approximate Bayesian inference (analagous to VB)

◮ may be difficult to construct a coherent normalisable exponential family

approximation on both latents and parameters.

◮ Approximate EM – maximize log P(X, Z)qEP(Z).

◮ Practical, but no coherent cost function (unlike variational inference), so no

guarantee of convergence even if EP itself converges.

◮ Direct maximisation of EP log-likelihood estimate.

◮ Consistent, although convergence guarantees still difficult.

slide-111
SLIDE 111

Learning

EP yields approximate inferential posteriors. To learn (hyper)parameters we can use:

◮ Approximate Bayesian inference (analagous to VB)

◮ may be difficult to construct a coherent normalisable exponential family

approximation on both latents and parameters.

◮ Approximate EM – maximize log P(X, Z)qEP(Z).

◮ Practical, but no coherent cost function (unlike variational inference), so no

guarantee of convergence even if EP itself converges.

◮ Direct maximisation of EP log-likelihood estimate.

◮ Consistent, although convergence guarantees still difficult. ◮ Seems challenging as we need to differentiate through (iteration-based)

dependence of approximate q(Z) and ˜ Cis.

slide-112
SLIDE 112

Learning

EP yields approximate inferential posteriors. To learn (hyper)parameters we can use:

◮ Approximate Bayesian inference (analagous to VB)

◮ may be difficult to construct a coherent normalisable exponential family

approximation on both latents and parameters.

◮ Approximate EM – maximize log P(X, Z)qEP(Z).

◮ Practical, but no coherent cost function (unlike variational inference), so no

guarantee of convergence even if EP itself converges.

◮ Direct maximisation of EP log-likelihood estimate.

◮ Consistent, although convergence guarantees still difficult. ◮ Seems challenging as we need to differentiate through (iteration-based)

dependence of approximate q(Z) and ˜ Cis.

◮ However, proves to be simpler than it sounds.

slide-113
SLIDE 113

EP log-likelihood optimisation for learning

Let true potentials fi depend on model (hyper)parameters η.

slide-114
SLIDE 114

EP log-likelihood optimisation for learning

Let true potentials fi depend on model (hyper)parameters η. We have

∇η˜ ℓ = ∇ηΦ(θ) +

N

  • i=1

∇η log ˜

Ci

slide-115
SLIDE 115

EP log-likelihood optimisation for learning

Let true potentials fi depend on model (hyper)parameters η. We have

∇η˜ ℓ = ∇ηΦ(θ) +

N

  • i=1

∇η log ˜

Ci = µ · ∇ηθ +

N

  • i=1

∇η log ˜

Ci using the standard ExpFam moment-generating result with mean parameters

µ = T(Z)q(Z).

slide-116
SLIDE 116

EP log-likelihood optimisation for learning

Let true potentials fi depend on model (hyper)parameters η. We have

∇η˜ ℓ = ∇ηΦ(θ) +

N

  • i=1

∇η log ˜

Ci = µ · ∇ηθ +

N

  • i=1

∇η log ˜

Ci using the standard ExpFam moment-generating result with mean parameters

µ = T(Z)q(Z).

Now, zeroth-moment matching implies that at EP convergence: log ˜ Ci = Φi(θ¬i) − Φ(θ)

slide-117
SLIDE 117

EP log-likelihood optimisation for learning

Let true potentials fi depend on model (hyper)parameters η. We have

∇η˜ ℓ = ∇ηΦ(θ) +

N

  • i=1

∇η log ˜

Ci = µ · ∇ηθ +

N

  • i=1

∇η log ˜

Ci using the standard ExpFam moment-generating result with mean parameters

µ = T(Z)q(Z).

Now, zeroth-moment matching implies that at EP convergence: log ˜ Ci = Φi(θ¬i) − Φ(θ) ⇒ ∇η log ˜ Ci = ∇ηΦi(θ¬i) − µ · ∇ηθ

slide-118
SLIDE 118

EP log-likelihood optimisation for learning

Let true potentials fi depend on model (hyper)parameters η. We have

∇η˜ ℓ = ∇ηΦ(θ) +

N

  • i=1

∇η log ˜

Ci = µ · ∇ηθ +

N

  • i=1

∇η log ˜

Ci using the standard ExpFam moment-generating result with mean parameters

µ = T(Z)q(Z).

Now, zeroth-moment matching implies that at EP convergence: log ˜ Ci = Φi(θ¬i) − Φ(θ) ⇒ ∇η log ˜ Ci = ∇ηΦi(θ¬i) − µ · ∇ηθ but Φi(θ¬i) = log

  • fi(Zi)eT(Z)·θ¬i depends on η in two ways: directly through fi and

indirectly through the converged θ¬i.

slide-119
SLIDE 119

EP log-likelihood optimisation for learning

Let true potentials fi depend on model (hyper)parameters η. We have

∇η˜ ℓ = ∇ηΦ(θ) +

N

  • i=1

∇η log ˜

Ci = µ · ∇ηθ +

N

  • i=1

∇η log ˜

Ci using the standard ExpFam moment-generating result with mean parameters

µ = T(Z)q(Z).

Now, zeroth-moment matching implies that at EP convergence: log ˜ Ci = Φi(θ¬i) − Φ(θ) ⇒ ∇η log ˜ Ci = ∇ηΦi(θ¬i) − µ · ∇ηθ but Φi(θ¬i) = log

  • fi(Zi)eT(Z)·θ¬i depends on η in two ways: directly through fi and

indirectly through the converged θ¬i.

∇ηΦi(θ¬i) = ∂θ¬i Φi(θ¬i) · ∇ηθ¬i + e−Φi(θ¬i)

  • ∇ηfi(Zi)eT(Z)·θ¬i
slide-120
SLIDE 120

EP log-likelihood optimisation for learning

Let true potentials fi depend on model (hyper)parameters η. We have

∇η˜ ℓ = ∇ηΦ(θ) +

N

  • i=1

∇η log ˜

Ci = µ · ∇ηθ +

N

  • i=1

∇η log ˜

Ci using the standard ExpFam moment-generating result with mean parameters

µ = T(Z)q(Z).

Now, zeroth-moment matching implies that at EP convergence: log ˜ Ci = Φi(θ¬i) − Φ(θ) ⇒ ∇η log ˜ Ci = ∇ηΦi(θ¬i) − µ · ∇ηθ but Φi(θ¬i) = log

  • fi(Zi)eT(Z)·θ¬i depends on η in two ways: directly through fi and

indirectly through the converged θ¬i.

∇ηΦi(θ¬i) = ∂θ¬i Φi(θ¬i) · ∇ηθ¬i + e−Φi(θ¬i)

  • ∇ηfi(Zi)eT(Z)·θ¬i

= T(Z)

Pi · ∇ηθ¬i +

  • ∇η log fi(Zi)fi(Zi)eT(Z)·θ¬i−Φi(θ¬i)
slide-121
SLIDE 121

EP log-likelihood optimisation for learning

Let true potentials fi depend on model (hyper)parameters η. We have

∇η˜ ℓ = ∇ηΦ(θ) +

N

  • i=1

∇η log ˜

Ci = µ · ∇ηθ +

N

  • i=1

∇η log ˜

Ci using the standard ExpFam moment-generating result with mean parameters

µ = T(Z)q(Z).

Now, zeroth-moment matching implies that at EP convergence: log ˜ Ci = Φi(θ¬i) − Φ(θ) ⇒ ∇η log ˜ Ci = ∇ηΦi(θ¬i) − µ · ∇ηθ but Φi(θ¬i) = log

  • fi(Zi)eT(Z)·θ¬i depends on η in two ways: directly through fi and

indirectly through the converged θ¬i.

∇ηΦi(θ¬i) = ∂θ¬i Φi(θ¬i) · ∇ηθ¬i + e−Φi(θ¬i)

  • ∇ηfi(Zi)eT(Z)·θ¬i

= T(Z)

Pi · ∇ηθ¬i +

  • ∇η log fi(Zi)fi(Zi)eT(Z)·θ¬i−Φi(θ¬i)

= µ · ∇ηθ¬i + ∇η log fi(Zi)

Pi

by EP moment matching at convergence!

slide-122
SLIDE 122

EP log-likelihood optimisation for learning

Let true potentials fi depend on model (hyper)parameters η. We have

∇η˜ ℓ = ∇ηΦ(θ) +

N

  • i=1

∇η log ˜

Ci = µ · ∇ηθ +

N

  • i=1

∇η log ˜

Ci using the standard ExpFam moment-generating result with mean parameters

µ = T(Z)q(Z).

Now, zeroth-moment matching implies that at EP convergence: log ˜ Ci = Φi(θ¬i) − Φ(θ) ⇒ ∇η log ˜ Ci = ∇ηΦi(θ¬i) − µ · ∇ηθ but Φi(θ¬i) = log

  • fi(Zi)eT(Z)·θ¬i depends on η in two ways: directly through fi and

indirectly through the converged θ¬i.

∇ηΦi(θ¬i) = ∂θ¬i Φi(θ¬i) · ∇ηθ¬i + e−Φi(θ¬i)

  • ∇ηfi(Zi)eT(Z)·θ¬i

= T(Z)

Pi · ∇ηθ¬i +

  • ∇η log fi(Zi)fi(Zi)eT(Z)·θ¬i−Φi(θ¬i)

= µ · ∇ηθ¬i + ∇η log fi(Zi)

Pi

by EP moment matching at convergence! So putting it all together:

∇η˜ ℓ = µ · ∇ηθ +

N

  • i=1

∇η log ˜

Ci

slide-123
SLIDE 123

EP log-likelihood optimisation for learning

Let true potentials fi depend on model (hyper)parameters η. We have

∇η˜ ℓ = ∇ηΦ(θ) +

N

  • i=1

∇η log ˜

Ci = µ · ∇ηθ +

N

  • i=1

∇η log ˜

Ci using the standard ExpFam moment-generating result with mean parameters

µ = T(Z)q(Z).

Now, zeroth-moment matching implies that at EP convergence: log ˜ Ci = Φi(θ¬i) − Φ(θ) ⇒ ∇η log ˜ Ci = ∇ηΦi(θ¬i) − µ · ∇ηθ but Φi(θ¬i) = log

  • fi(Zi)eT(Z)·θ¬i depends on η in two ways: directly through fi and

indirectly through the converged θ¬i.

∇ηΦi(θ¬i) = ∂θ¬i Φi(θ¬i) · ∇ηθ¬i + e−Φi(θ¬i)

  • ∇ηfi(Zi)eT(Z)·θ¬i

= T(Z)

Pi · ∇ηθ¬i +

  • ∇η log fi(Zi)fi(Zi)eT(Z)·θ¬i−Φi(θ¬i)

= µ · ∇ηθ¬i + ∇η log fi(Zi)

Pi

by EP moment matching at convergence! So putting it all together:

∇η˜ ℓ = µ · ∇ηθ +

N

  • i=1
  • ∇ηΦi(θ¬i) − µ · ∇ηθ
slide-124
SLIDE 124

EP log-likelihood optimisation for learning

Let true potentials fi depend on model (hyper)parameters η. We have

∇η˜ ℓ = ∇ηΦ(θ) +

N

  • i=1

∇η log ˜

Ci = µ · ∇ηθ +

N

  • i=1

∇η log ˜

Ci using the standard ExpFam moment-generating result with mean parameters

µ = T(Z)q(Z).

Now, zeroth-moment matching implies that at EP convergence: log ˜ Ci = Φi(θ¬i) − Φ(θ) ⇒ ∇η log ˜ Ci = ∇ηΦi(θ¬i) − µ · ∇ηθ but Φi(θ¬i) = log

  • fi(Zi)eT(Z)·θ¬i depends on η in two ways: directly through fi and

indirectly through the converged θ¬i.

∇ηΦi(θ¬i) = ∂θ¬i Φi(θ¬i) · ∇ηθ¬i + e−Φi(θ¬i)

  • ∇ηfi(Zi)eT(Z)·θ¬i

= T(Z)

Pi · ∇ηθ¬i +

  • ∇η log fi(Zi)fi(Zi)eT(Z)·θ¬i−Φi(θ¬i)

= µ · ∇ηθ¬i + ∇η log fi(Zi)

Pi

by EP moment matching at convergence! So putting it all together:

∇η˜ ℓ = µ · ∇ηθ +

N

  • i=1
  • µ · ∇ηθ¬i − µ · ∇ηθ + ∇η log fi(Zi)

Pi

slide-125
SLIDE 125

EP log-likelihood optimisation for learning

Let true potentials fi depend on model (hyper)parameters η. We have

∇η˜ ℓ = ∇ηΦ(θ) +

N

  • i=1

∇η log ˜

Ci = µ · ∇ηθ +

N

  • i=1

∇η log ˜

Ci using the standard ExpFam moment-generating result with mean parameters

µ = T(Z)q(Z).

Now, zeroth-moment matching implies that at EP convergence: log ˜ Ci = Φi(θ¬i) − Φ(θ) ⇒ ∇η log ˜ Ci = ∇ηΦi(θ¬i) − µ · ∇ηθ but Φi(θ¬i) = log

  • fi(Zi)eT(Z)·θ¬i depends on η in two ways: directly through fi and

indirectly through the converged θ¬i.

∇ηΦi(θ¬i) = ∂θ¬i Φi(θ¬i) · ∇ηθ¬i + e−Φi(θ¬i)

  • ∇ηfi(Zi)eT(Z)·θ¬i

= T(Z)

Pi · ∇ηθ¬i +

  • ∇η log fi(Zi)fi(Zi)eT(Z)·θ¬i−Φi(θ¬i)

= µ · ∇ηθ¬i + ∇η log fi(Zi)

Pi

by EP moment matching at convergence! So putting it all together:

∇η˜ ℓ = µ · ∇η

  • θ +

N

  • i=1

(θ¬i − θ)

  • +

N

  • i=1

∇η log fi(Zi)

Pi

slide-126
SLIDE 126

EP log-likelihood optimisation for learning

Let true potentials fi depend on model (hyper)parameters η. We have

∇η˜ ℓ = ∇ηΦ(θ) +

N

  • i=1

∇η log ˜

Ci = µ · ∇ηθ +

N

  • i=1

∇η log ˜

Ci using the standard ExpFam moment-generating result with mean parameters

µ = T(Z)q(Z).

Now, zeroth-moment matching implies that at EP convergence: log ˜ Ci = Φi(θ¬i) − Φ(θ) ⇒ ∇η log ˜ Ci = ∇ηΦi(θ¬i) − µ · ∇ηθ but Φi(θ¬i) = log

  • fi(Zi)eT(Z)·θ¬i depends on η in two ways: directly through fi and

indirectly through the converged θ¬i.

∇ηΦi(θ¬i) = ∂θ¬i Φi(θ¬i) · ∇ηθ¬i + e−Φi(θ¬i)

  • ∇ηfi(Zi)eT(Z)·θ¬i

= T(Z)

Pi · ∇ηθ¬i +

  • ∇η log fi(Zi)fi(Zi)eT(Z)·θ¬i−Φi(θ¬i)

= µ · ∇ηθ¬i + ∇η log fi(Zi)

Pi

by EP moment matching at convergence! So putting it all together:

∇η˜ ℓ = µ · ∇η

  • N
  • i=1

θi +

N

  • i=1

(θ¬i − θ)

  • +

N

  • i=1

∇η log fi(Zi)

Pi

slide-127
SLIDE 127

EP log-likelihood optimisation for learning

Let true potentials fi depend on model (hyper)parameters η. We have

∇η˜ ℓ = ∇ηΦ(θ) +

N

  • i=1

∇η log ˜

Ci = µ · ∇ηθ +

N

  • i=1

∇η log ˜

Ci using the standard ExpFam moment-generating result with mean parameters

µ = T(Z)q(Z).

Now, zeroth-moment matching implies that at EP convergence: log ˜ Ci = Φi(θ¬i) − Φ(θ) ⇒ ∇η log ˜ Ci = ∇ηΦi(θ¬i) − µ · ∇ηθ but Φi(θ¬i) = log

  • fi(Zi)eT(Z)·θ¬i depends on η in two ways: directly through fi and

indirectly through the converged θ¬i.

∇ηΦi(θ¬i) = ∂θ¬i Φi(θ¬i) · ∇ηθ¬i + e−Φi(θ¬i)

  • ∇ηfi(Zi)eT(Z)·θ¬i

= T(Z)

Pi · ∇ηθ¬i +

  • ∇η log fi(Zi)fi(Zi)eT(Z)·θ¬i−Φi(θ¬i)

= µ · ∇ηθ¬i + ∇η log fi(Zi)

Pi

by EP moment matching at convergence! So putting it all together:

∇η˜ ℓ = µ · ∇η

N

  • i=1

(θ − θ) +

N

  • i=1

∇η log fi(Zi)

Pi

slide-128
SLIDE 128

EP log-likelihood optimisation for learning

Let true potentials fi depend on model (hyper)parameters η. We have

∇η˜ ℓ = ∇ηΦ(θ) +

N

  • i=1

∇η log ˜

Ci = µ · ∇ηθ +

N

  • i=1

∇η log ˜

Ci using the standard ExpFam moment-generating result with mean parameters

µ = T(Z)q(Z).

Now, zeroth-moment matching implies that at EP convergence: log ˜ Ci = Φi(θ¬i) − Φ(θ) ⇒ ∇η log ˜ Ci = ∇ηΦi(θ¬i) − µ · ∇ηθ but Φi(θ¬i) = log

  • fi(Zi)eT(Z)·θ¬i depends on η in two ways: directly through fi and

indirectly through the converged θ¬i.

∇ηΦi(θ¬i) = ∂θ¬i Φi(θ¬i) · ∇ηθ¬i + e−Φi(θ¬i)

  • ∇ηfi(Zi)eT(Z)·θ¬i

= T(Z)

Pi · ∇ηθ¬i +

  • ∇η log fi(Zi)fi(Zi)eT(Z)·θ¬i−Φi(θ¬i)

= µ · ∇ηθ¬i + ∇η log fi(Zi)

Pi

by EP moment matching at convergence! So putting it all together:

∇η˜ ℓ =

N

  • i=1

∇η log fi(Zi)

Pi and the gradient can be computed if EP converges.

slide-129
SLIDE 129

Alpha divergences and Power EP

◮ Alpha divergences Dα[pq] =

1

α(1 − α)

  • dx αp(x) + (1 − α)q(x) − p(x)αq(x)1−α
slide-130
SLIDE 130

Alpha divergences and Power EP

◮ Alpha divergences Dα[pq] =

1

α(1 − α)

  • dx αp(x) + (1 − α)q(x) − p(x)αq(x)1−α

D−1[pq] = 1 2

  • dx (p(x) − q(x))2

p(x) lim

α→0 Dα[pq] = KL[qp]

Note: lim

α→0

(p(x)/q(x))α α = log p(x)

q(x) D 1

2 [pq] = 2

  • dx (p(x)

1 2 − q(x) 1 2 )2

lim

α→1 Dα[pq] = KL[pq]

D2[pq] = 1 2

  • dx (p(x) − q(x))2

q(x)

slide-131
SLIDE 131

Alpha divergences and Power EP

◮ Alpha divergences Dα[pq] =

1

α(1 − α)

  • dx αp(x) + (1 − α)q(x) − p(x)αq(x)1−α

D−1[pq] = 1 2

  • dx (p(x) − q(x))2

p(x) lim

α→0 Dα[pq] = KL[qp]

Note: lim

α→0

(p(x)/q(x))α α = log p(x)

q(x) D 1

2 [pq] = 2

  • dx (p(x)

1 2 − q(x) 1 2 )2

lim

α→1 Dα[pq] = KL[pq]

D2[pq] = 1 2

  • dx (p(x) − q(x))2

q(x)

◮ Local (EP) minimisation gives fixed-point updates that blend messages (to power α) with

previous site approximations.

˜

f new

i

= argmin

f∈{˜ f}

KL

  • fi(Zi)α˜

fi(Zi)1−αq¬i(Z)

  • f(Zi)q¬i(Z)
slide-132
SLIDE 132

Alpha divergences and Power EP

◮ Alpha divergences Dα[pq] =

1

α(1 − α)

  • dx αp(x) + (1 − α)q(x) − p(x)αq(x)1−α

D−1[pq] = 1 2

  • dx (p(x) − q(x))2

p(x) lim

α→0 Dα[pq] = KL[qp]

Note: lim

α→0

(p(x)/q(x))α α = log p(x)

q(x) D 1

2 [pq] = 2

  • dx (p(x)

1 2 − q(x) 1 2 )2

lim

α→1 Dα[pq] = KL[pq]

D2[pq] = 1 2

  • dx (p(x) − q(x))2

q(x)

◮ Local (EP) minimisation gives fixed-point updates that blend messages (to power α) with

previous site approximations.

˜

f new

i

= argmin

f∈{˜ f}

KL

  • fi(Zi)α˜

fi(Zi)1−αq¬i(Z)

  • f(Zi)q¬i(Z)
  • ◮ Small changes (for α < 1) lead to more stable updates, and more reliable convergence.