Differences between revisions 5 and 6
Revision 5 as of 2009-11-03 10:41:20
Size: 6133
Comment:
Revision 6 as of 2018-10-17 14:55:36
Size: 6130
Comment:
Deletions are marked like this. Additions are marked like this.
Line 88: Line 88:
$$J(k'|k)\propto \begin{cases} $$
J(k'|k)\propto
\begin{cases}
Line 91: Line 93:
       \end{cases} \end{cases}

Reversible Jump MCMC routines in Dynare

  • Functions

  • Structures

  • Notes on the algorithmrjmcmc

Introduction

Bayesian model selection is performed on the basis of the posterior model probabilities $p(k|y)$ which can be evaluate in this case by considering the models parameters as unknown and updating at each iteration of the MCMC knowing the model index k. To be more precise, the dimensionality of the parameter space represents an unknown parameter.

Let $\theta^k$ be the parameters vector associated with the model of order k. There's three kind of possible move which can be described.

In steps 1 and 2, we go from a model k to an other one of different length k' with the probability $J(k'/k)$. The dimension matching requirement (Green, 1995) set dim(k)+dim(q(u))=dim(k')+dim(q(u')) where the function q(.) is the proposal and u an additional random vector. In the literature, we call a "birth move" the fact that dim(k')>dim(k), otherwise this is a "death move".

In the last step, we stay within a same model. In that case, a standard MH can be run.

Algorithm

I. choose initial values

II. for i=1,N

$J(k'|k)\propto exp(\lambda)$

i. Birth move: if $dim(\theta^{(k')})>dim(\theta^{(k)})$

go from k to k'=k+n by drawing n values from a random vector u of length n

\begin{eqnarray*}
\theta^{(k')}_u \sim p(\theta^{(k')}_u|k') \\
\theta^{(k')}=
\left (
   \begin{array}{c}
      \theta^{(k)}  \\
      \theta^{(k')}_u   \\
   \end{array}
   \right )
\end{eqnarray*}

if $x\sim U(0,1)<=\alpha^{birth}$

  • k=k'

end if

ii. Death move: else if $dim(\theta^{(k')})<dim(\theta^{(k)})$

deterministic step to go from k to k'=k-n

$\theta^{k'}=\theta^{k}_{(1...k-n)}$

if $x\sim U(0,1)<=\alpha^{death}$

  • k=k'

end if

iii. else $\theta^{k'}=\theta^k+N(0,\sigma)$

  • end if

end

footnote: The proposal distribution for changes in model order has the following expression:

$J(k'|k)\propto exp(\lambda)\frac{\lambda}{k!}$

or

latex error! exitcode was 1 (signal 0), transscript follows:

This is pdfTeX, Version 3.14159265-2.6-1.40.17 (TeX Live 2016/Debian) (preloaded format=latex)
entering extended mode
(./latex_d7e83d3c57c4a0e22223baa3a357425926a9db57_p.tex
LaTeX2e <2017/01/01> patch level 3
Babel <3.9r> and hyphenation patterns for 3 language(s) loaded.
(/usr/share/texlive/texmf-dist/tex/latex/base/article.cls
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class
(/usr/share/texlive/texmf-dist/tex/latex/base/size12.clo))
(/usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty
(/usr/share/texlive/texmf-dist/tex/latex/base/utf8.def
(/usr/share/texlive/texmf-dist/tex/latex/base/t1enc.dfu)
(/usr/share/texlive/texmf-dist/tex/latex/base/ot1enc.dfu)
(/usr/share/texlive/texmf-dist/tex/latex/base/omsenc.dfu)))
No file latex_d7e83d3c57c4a0e22223baa3a357425926a9db57_p.aux.
! Misplaced alignment tab character &.
l.10        exp(-\lambda)|k'-k| &
                                 & \text{if } k'\not=k \\
! Misplaced alignment tab character &.
l.10        exp(-\lambda)|k'-k| &&
                                   \text{if } k'\not=k \\
! Undefined control sequence.
l.10        exp(-\lambda)|k'-k| && \text
                                        {if } k'\not=k \\
! Misplaced alignment tab character &.
l.11        0 &
               & \text{if } k'=k
! Misplaced alignment tab character &.
l.11        0 &&
                 \text{if } k'=k
! Undefined control sequence.
l.11        0 && \text
                      {if } k'=k
[1] (./latex_d7e83d3c57c4a0e22223baa3a357425926a9db57_p.aux) )
(see the transcript file for additional information)
Output written on latex_d7e83d3c57c4a0e22223baa3a357425926a9db57_p.dvi (1 page,
 500 bytes).
Transcript written on latex_d7e83d3c57c4a0e22223baa3a357425926a9db57_p.log.

The symmetry of the distribution leads the ratio of model prior densities to be 1

Acceptation Probabilities

we assume here that the proposal distribution is the parameters prior density.

Consider

$$
\theta^{'(i)}\sim (\theta_i|\theta_{-i},k,y) \propto 
\begin{cases}
  p(\theta^{(k')}|y,k',\theta^{(k)}) \mbox{, if } i=k' \\ \\
  p(\theta^{(i)}) \mbox{, if } i\neq k'
\end{cases}
$$

where the proposal distribution is $ p(\theta^{'(k')}|y,k',\theta^{(k)})$ and $p(\theta^{'(i)})$ is called "pseudo-prior".

Under the assumption of a symmetric random-walk proposal distribution, we can derive the acceptance ratio.

\begin{eqnarray*}
\alpha\left((k,\theta^{(k)}\to (k',\theta^{(k')})\right)=
min\left(1,\underbrace{\frac{p(k',\theta^{(k')}|y,\sigma_e)}{p(k,\theta^{(k)}|y,\sigma_e)}}_{target  proba}
\underbrace{\frac{J(k|k')}{J(k'|k)}}_{model prior}
\underbrace{\frac{q(\theta^{(k')}|k')}{q(\theta^{(k)}|k)}}_{proposal ratio}
\right)
\end{eqnarray*}

The Jacobian cancel since the transformation let unchanged the scale of parameters vectors.

\begin{eqnarray*}
\alpha\left((k,\theta^{(k)}\to (k',\theta^{(k')})\right)=
min\left(1,
\frac{p(y|k',\theta^{(k')},\sigma_e)}{p(y|k,\theta^{(k)},\sigma_e)}
\frac{p(k')}{p(k)}
\frac{p(\theta^{(k')}|k')}{p(\theta^{(k)}|k)}
\frac{q(\theta^{(k')}|k')}{q(\theta^{(k)}|k)}
\right)
\end{eqnarray*}

using the definition of joint posterior distribution:

\begin{eqnarray*}
p(k,\theta^{(k)},\sigma_e|y)\propto 
\underbrace{p(y|k,\theta^{(k)},\sigma_e)}_{Likelihood}
\underbrace{p(k)p(\theta^{(k)}|k)p(\sigma_e)}_{priors}
\end{eqnarray*}

Precisely the full posterior distribution for the composite model space can be expressed as

\begin{eqnarray*}
p(k,\theta|y)\propto p(y|k,\theta)p(\theta_k|k)p(\theta_{-k}|\theta_k,k)p(k)
\end{eqnarray*}

It depends only upon the corresponding parameters $\theta_k$, for a particular k. $\theta_{-k}$ represents all parameters not used by model k. Hence, $p(\theta_{-k}|\theta_k,k)$ is this "pseudo-prior" which is not used by k.

Assuming p(k) follows a uniform distribution, the ratio $\frac{p(k')}{p(k)}=1$ and the common parameters prior in the ratio prior densities cancel. If we consider the case where $p(\theta^{(k)}|k)$ is iid gaussian, the priors for the common model terms cancel leaving for a birth move:

\begin{eqnarray*}
\alpha\left((k,\theta^{(k)}\to (k',\theta^{(k')})\right)=
min\left(1,
\frac{p(y|k',\theta^{(k')},\sigma_e)}{p(y|k,\theta^{(k)},\sigma_e)}
p_{\theta}(\theta_u^{(k')}|k')
%\frac{p(\theta^{(k')}|\sigma_e)_\rho}{p(\theta^{(k)}|\sigma_e)\rho}
\frac{q(\theta^{(k')}|k')}{q(\theta^{(k)}|k)}
\right)
\end{eqnarray*}

  • Knowing that $q(\theta_u^{(k')}|\sigma_e)=p(\theta^{(k')}_u|\sigma_e)$ and the fact that

the reverse transformation is deterministic (ie $\theta^{(k)}_u$ is empty and $q(\theta^{(k)}_u)=1$).

  • We have finally:

\begin{eqnarray*}
\alpha ^{birth}\left((k,\theta^{(k)}\to (k',\theta^{(k')})\right)=
min\left(1,
\frac{p(y|k',\theta^{(k')},\sigma_e)}{p(y|k,\theta^{(k)},\sigma_e)}
\right)
\end{eqnarray*}

and

\begin{eqnarray*}
\alpha ^{death}\left((k,\theta^{(k)}\to (k',\theta^{(k')})\right)=
min\left(1,
\frac{p(y|k,\theta^{(k)},\sigma_e)}{p(y|k',\theta^{(k')},\sigma_e)}
\right)
\end{eqnarray*}

DynareWiki: ReversibleJumpMCMC (last edited 2018-10-17 15:56:59 by StéphaneAdjemian)