I came across a problem for Gibbs sampler.

Suppose I want to draw samples from $f(x,y,z)$, Can I use the following scheme to draw samples?

Step 1, draw $f(x^{2t-1},y^t|z^{t-1})$.

Step 2, draw $ f(x^{2t},z^t|y^{t-1})$.

Then, after $T$ steps, we have $2T$ samples for $x$, and $T$ samples for $y$ and $z$.

Is the above procedure appropriate? Could you provide me some references?


  • $\begingroup$ I made a mistake, in step 2, it should be conditional on $y^t$ $\endgroup$ – Ryan Feb 14 '17 at 5:59
  • $\begingroup$ The parameter of interest is $x$. $\endgroup$ – Ryan Feb 14 '17 at 6:00

The method is correct by the following reasoning:

Start with $$(x,y,z)\sim f(x,y,z)$$ and apply Step 1. $$ (x',y') \sim f(x,y|z)$$ then $$(x',y',z)\sim f(x,y,z)$$ Now apply Step 2 $$ (x'',z') \sim f(x,z|y')$$ then $$(x'',y',z')\sim f(x,y,z)$$ This means $f$ is stationary for this two-step Gibbs algorithm.

Note: the title should be corrected as "fixing one parameter" is confusing. You could say Gibbs sampling/sampler with two block conditionals.

| cite | improve this answer | |
  • $\begingroup$ @Ryan: can you please change the title? $\endgroup$ – Xi'an Feb 17 '17 at 8:25

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.