Neal (2000) Markov Chain Sampling Methods for Dirichlet Process Mixture Models

dirichlet-processmixture-modelmcmcgibbs-samplermetropolis-hastingsauxiliary-variablenon-conjugatedensity-estimation

Summary

Neal reviews the existing Markov chain Monte Carlo methods for the posterior of a Dirichlet process mixture (DPM) model and adds two new classes designed for the hard case — non-conjugate priors, where the standard Gibbs sampler requires an intractable integral over the base measure. The first uses Metropolis-Hastings updates of the component indicators (optionally supplemented with partial Gibbs); the second — the widely-used "Algorithm 8" — augments the state with temporary auxiliary components drawn from the base measure G0G_0, so that a new cluster can be proposed by ordinary Gibbs sampling without any integration. Both are simple to implement and more efficient than prior non-conjugate methods.

Key Claims

Concepts Introduced or Extended

Entities Mentioned

Quotes

"This article reviews Markov chain methods for sampling from the posterior distribution of a Dirichlet process mixture model and presents two new classes of methods."

"These methods are simple to implement and are more efficient than previous ways of handling general Dirichlet process mixture models with non-conjugate priors."

My Take

This is the paper that made Dirichlet-process mixtures practical for the models people actually want to fit — the ones where the base measure is not conjugate to the kernel, so the tidy Escobar-West collapse doesn't apply. Algorithm 8's trick is beautifully simple: you can't integrate over "a new cluster's parameters," so instead sample a few candidate new clusters from the prior and let ordinary Gibbs choose among them, with mm a dial between cost and mixing. It sits directly downstream of Sethuraman's (1994) stick-breaking (which makes the DP concrete) and Antoniak's (1974) CRP cluster structure (which the samplers traverse), and it is the reference every applied DPM paper cites for "how we did the MCMC." For the wiki it completes the computational leg of the DPM concept: Sethuraman gives the object, Neal gives the algorithm.