Archive for reversible jump

Handbook of Markov chain Monte Carlo

Posted in Books, R, Statistics, University life with tags , , , , , , , , , , , , , , on September 22, 2011 by xi'an

At JSM, John Kimmel gave me a copy of the Handbook of Markov chain Monte Carlo, as I had not (yet?!) received it. This handbook is edited by Steve Brooks, Andrew Gelman, Galin Jones, and Xiao-Li Meng, all first-class jedis of the MCMC galaxy. I had not had a chance to get a look at the book until now as Jean-Michel Marin took it home for me from Miami, but, as he remarked in giving it back to me last week, the outcome truly is excellent! Of course, authors and editors being friends of mine, the reader may worry about the objectivity of this assessment; however the quality of the contents is clearly there and the book appears as a worthy successor to the tremendous Markov chain Monte Carlo in Practice by Wally Gilks, Sylvia Richardson and David Spiegelhalter. (I can attest to the involvement of the editors from the many rounds of reviews we exchanged about our MCMC history chapter!) The style of the chapters is rather homogeneous and there are a few R codes here and there. So, while I will still stick to our Monte Carlo Statistical Methods book for teaching MCMC to my graduate students next month, I think the book can well be used at a teaching level as well as a reference on the state-of-the-art MCMC technology. Continue reading →

Posterior model probabilities computed from model-specific Gibbs output [arXiv:1012.0073]

Posted in Books, Statistics with tags , , , , , on December 9, 2010 by xi'an

“Expressing RJMCMC as simple Gibbs sampling provides the key innovation of our formulation: it allows us to fit models one at a time using ordinary MCMC and then compute model weights or Bayes factors by post-processing the Monte Carlo output.”

Richard Barker (from the University of Otago, Dunedin, New Zealand) and William Link posted this new paper on arXiv. A point in their abstract attracted my attention, namely that they produce a “representation [that] allows [them] to fit models one at a time using ordinary MCMC and then compute model weights or Bayes factors by post-processing the Monte Carlo output”. This is quite interesting in that most attempts at building Bayes factors approximations from separate chains running each on a separate model have led to erroneous solutions. It appears however that the paper builds upon a technique fully exposed in the book written by the authors. Continue reading →

CoRe in CiRM [end]

Posted in Books, Kids, Mountains, pictures, R, Running, Statistics, Travel, University life with tags , , , , , , , , , , , , , on July 18, 2010 by xi'an

Back home after those two weeks in CiRM for our “research in pair” invitation to work on the new edition of Bayesian Core, I am very grateful for the support we received from CiRM and through it from SMF and CNRS. Being “locked” away in such a remote place brought a considerable increase in concentration and decrease in stress levels. Although I was planning for more, we have made substantial advances on five chapters of the book (out of nine), including a completely new chapter (Chapter 8) on hierarchical models and a thorough rewriting of the normal chapter (Chapter 2), which along with Chapter 1 (largely inspired from  Chapter 1 of Introducing Monte Carlo Methods with R, itself inspired from the first edition of Bayesian Core,!). is nearly done. Chapter 9 on image processing is also quite close from completion, with just the result of a batch simulation running on the Linux server in Dauphine to include in the ABC section. As the only remaining major change is the elimination of reversible jump from the mixture chapter (to be replaced with Chib’s approximation) and from the time-series chapter (to be simplified into a birth-and-death process). Going back to the CiRM environment, I think we were lucky to come during the vacation season as there is hardly anyone on the campus, which means no car and no noise. The (good) feeling of remoteness is not as extreme as in Oberwolfach, but it is truly a quality environment. Besides, being able to work 24/7 in the math library is a major plus. as we could go and grab any reference we needed to check. (Presumably, CiRM is lacking in terms of statistics books, compared with Oberwolfach, still providing most of the references we were looking for.) At last, the freedom to walk right out of the Centre into the national park for a run, a climb or even a swim (in Morgiou, rather than Sugiton) makes working there very tantalising indeed! I thus dearly hope I can enjoy again this opportunity in a near future…

Typo in Bayesian Core [again]

Posted in Books, R, Statistics with tags , , , , , on May 16, 2010 by xi'an

Reza Seirafi from Virginia Tech sent me the following email about Bayesian Core, which alas is pointing out a real typo in the reversible jump acceptance probability for the mixture model:

With respect to the expression provided on page 178 for the acceptance probability of the split move, I was wondering if the omission of the density of the auxiliary parameters u1, u2, and u3 — specially u2, since its density is not necessarily equal to 1 contrary to the other two — is a case of typo.

This is truly a typo, the acceptance probability at the bottom of page 178 should be

\min\left( \dfrac{\widetilde\pi_{(k+1)k}}{\widetilde\pi_{k(k+1)} }\,\dfrac{\varrho(k+1)}{\varrho(k)}\,\dfrac{\pi_{k+1}(\theta_{k+1})\ell_{k+1}(\theta_{k+1})}{pi(u_2)\pi_{k}(\theta_{k})\ell_{k}(\theta_{k})}\,\dfrac{p_{jk}}{(1-u_1)^2}\,\sigma_{jk}^2,1\right)

since u2 is indeed distributed from a non-uniform density. The physical reason for this (unacceptable!) typo is that I cut-and-pasted the LaTeX code from Monte Carlo Statistical Methods: (page 439) where u2 is a uniform variate! (Incidentally, there is a minor typo a few lines above: when defining

\mu_{(j+1)(k+1)} = \mu_{jk} - \dfrac{p_{j(k+1)}u_2}{p_{jk}-p_{j)(k+1)}},

it should be

\mu_{(j+1)(k+1)} = \mu_{jk} - \dfrac{p_{j(k+1)}u_2}{p_{jk}-p_{j(k+1)}},

another side casualty of cut-and-paste!) Obviously, this could also affect the associated R code but I checked it and found the line

jacob=(kprop-2)*log(1-propp[kprop]) - singleprior(propmix,kprop)

which I think is correcting for the normal proposal.

This typo will obviously be corrected in the next printing of Bayesian Core as well as in the new edition we plan to write in July. It also illustrates the folk theorem “One can never write the reversible jump acceptance probability right” that make me avoid using reversible jump each time I am facing a small enough collection of models to consider the exhaustive list of those models.

Two more handbook chapters

Posted in Books, Statistics with tags , , , , , , , , , on February 16, 2010 by xi'an

As mentioned in my earlier post, I had to write a revised edition to my chapter Bayesian Computational Methods in the Handbook of Computational Statistics (second edition), edited by J. Gentle, W. Härdle and Y. Mori. And in parallel I was asked for a second chapter in a handbook on risk analysis, Bayesian methods and expert elicitation, edited by Klaus Böckner. So, on Friday, I went over the first edition of this chapter of the Handbook of Computational Statistics and added the most recent developments I deemed important to mention, like ABC, as well as recent SMC and PMC algorithms, increasing the length by about ten pages. Simultaneously, Jean-Michel Marin completed my draft for the other handbook and I submitted both chapters, as well as arXived one and then the other.

It is somehow interesting (on a lazy blizzardly Sunday afternoon with nothing better to do!) to look for the differences between those chapters aiming at the same description of important computational techniques for Bayesian statistics (and based on the same skeleton). The first chapter is broader and, with its  60 pages, it functions as a (very) short book on the topic. Given that the first version was written in 2003, the focus is more on latent variables with mixture models being repeatedly used as examples. Reversible jump also stands preeminently. In my opinion, it reads well and could be used as a primary entry for a short formal course on computational methods. (Even though Introducing Monte Carlo Methods with R is presumably more appropriate for a short course.)

The second chapter started from the skeleton of the earlier version of the first chapter with the probit model as the benchmark example. I worked on a first draft during the last vacations and then Jean-Michel took over to produce this current version, where reversible jump has been removed and ABC introduced with greater details. In particular, we used a very special version of ABC with the probit model, resorting to the distance between the expectations of the binary observables, namely

\sum_{j=1}^n (\Phi(x_j^\text{T} \beta) - \Phi(x_j^\text{T} \hat\beta) )^2,

where \hat\beta is the MLE of \beta based on the observations, instead of the difference between the simulated and the observed binary observables

\sum_{j=1}^n (y_j-y_j^0)^2

which incorporates a useless randomness. With this choice, and when using for \epsilon a .01 quantile, the difference with the true posterior on \beta is very small, as shown by the figure (obtained for the Pima Indian dataset in R). Obviously, this stabilising trick only works in specific situations where a predictive of sorts can be computed.