Hamiltonian MC with different variable dimensions

In that case, dynamic hmc like NUTS is your friend, just called pm.sample(1000, tune=1000) and let pymc3 try taking care of everything :wink:

Yes

Well, you dont need to, as the mass matrix adaptation like pymc3 and Stan use a somewhat complex block sleep-wake update that is a pain to implement yourself (plus we already implemented and tested it)

Yes, in fact in pymc3 currently we are using diagonal mass matrix in the default

As for the arg to init the potential, i think this code snippet should clarify a bit:

But again, DO NOT use this option as it is suboptimal!

1 Like