Is there a somewhat principled way to include prior information about a target density $f(x)$ in a sampling (MCMC) algorithm? [This is a much better formulated version of this question, which I am going to close/delete.]

Suppose you want to sample from an (unnormalized) target pdf $f(x)$, $x \in \mathbb{R}^d$, and for simplicity we assume a low-dimensional $d \le 20$. $f(x)$ can be mildly expensive to evaluate (e.g., you could evaluate a simple surrogate $10^2\sim10^3$ times in the time it takes to evaluate $f$).

You have some prior information about $f(x)$. This information can be expressed in the following form:

  • An approximated pdf $g \approx f$ (for concreteness, $g$ could be a mixture of Gaussians or $t$ distributions; you can think of it as a point estimate of a pdf over $f$); or
  • A distribution over $f$ (represented, e.g., as a variational finite mixture, or variational DP mixture).

In both cases, we have the advantage that we can directly take samples from $g(x)$ or $\left\langle g(x) \right\rangle$. (We could use other more flexible forms to express a prior over $f$, such as a square-root GP, but then we would lose the ability to directly sample from it, and GPs become unwieldy very quickly).

In my previous, not that well-formulated question I suggested that clearly one can use $g(x)$ (or $\left\langle g(x) \right\rangle$) as a proposal for an independent Metropolis sampler. This is going to work well if our prior information is very tight about $f$, but it can clearly become very inefficient (e.g., prior information might be good for the bulk but vague or unreliable for the tails of $f$).

I can imagine various hacks or ad-hoc ways to incorporate bits and pieces of $g$ into the sampling (as some form of surrogate function, or as a testbed to tune hyperparameters for transition operators to deploy on $f$), but I am wondering if there is some approach that is more principled (or more effective) than others.

PS: As brought up in the answer by @pehup, one of the things I have been doing in practice, and that seems to work well, is alternating between an independent Metropolis proposal and a set of a few local transition operators (in particular, I am using slice sampling with random direction and window size chosen according to global information from $g$, and I am playing around with similar ideas). However, this seems like a hack -- I can see why it is a sensible thing to do, but it doesn't feel particularly principled.

| cite | improve this question | | | | |
  • $\begingroup$ I find hard to do literature search about this topic because "prior information" gets confounded with typical Bayesian priors over $x$, but here I want to express a prior over $f$. The only somewhat related topic I could find is Bayesian Monte Carlo, also known as Bayesian quadrature (BQ), but the point of BQ is to evaluate a given integral, as opposed to obtain samples from a pdf. $\endgroup$ – lacerbi May 26 '16 at 13:54

I suggest you to use as proposal a mixture of your independent "prior" proposal and a classical random walk proposal so that you can use them alternatively and benefit alternatively from the rough characterization of the target density and of random walk to explore more largely the space. In practice, for such a purpose you can simply select your proposal distribution randomly at each step of the MCMC using a bernouilli trial (eventually using an adaptive scheme for optimising its parameter) and use the corresponding proposal to update (or not) the current sample. This procedure does not break MCMC convergence conditions.

| cite | improve this answer | | | | |
  • $\begingroup$ (+1) Thanks. Yes, that's a good suggestion. In fact, a mix-and-match of independent Metropolis and one or more local transition operators is one of the things I have already been doing in practice and it works well (I will mention it in the post). However, I was wondering if there was something more principled, like a proper Bayesian approach. $\endgroup$ – lacerbi May 26 '16 at 15:23
  • $\begingroup$ @lacerbi.Thks but I am not sure about what you mean by "a proper Bayesian approach". MCMC is a method to get samples from a distribution and is not related to Bayesian statistics (in fact, it is a fully frequentist approach). The fact is that MCMC is widely used to perform Bayesian inference but can be also use to build classical confidence interval. $\endgroup$ – peuhp May 26 '16 at 18:16
  • $\begingroup$ I am aware of the issue; see e.g. here and the BMC paper. The fact that a method is non-Bayesian does not mean that it cannot be interpreted in a Bayesian manner (see the emerging field of probabilistic numerics); that's why I mentioned a Bayesian approach. But a principled approach could also be information-theoretical. I am just wondering if I can't do better than throwing transition operators at the problem. $\endgroup$ – lacerbi May 26 '16 at 19:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.