On 7/19/12 3:16 PM, Michael Betancourt wrote:
>> Just the separate mass matrix and epsilon are not
>> identified. So you can always reascale epsilon
>> and the mass matrix so that epsilon * L = 1 if you're
>> doing HMC. For NUTS, L isn't fixed, plus you sample
>> along the path, not just at the end.
>
> I would argue that the step size and the mass matrix are NOT
> non-identified, even in regular HMC. In the limit \epilson -> 0 that
> might be true, but when \epsilon is non-zero you have to worry about
> the momenta update,
> a la p += -\epsilon * gradV (notice the mass matrix doesn't show up
> here). If \epsilon is too large then the update can be unstable, and
> there's no mass matrix small enough to suppress that instability (you
> know, other than zero).
>
> (Matt and I have discussed this before. He's in Bob's camp, but I'm
> pretty sure the finite step size case is not the same as the ideal
> case).
I didn't even know there were camps! I thought
this was just algebra. But now that I re-read
section 5.4.2.4 in Radford's handbook paper,
where he concludes they're equivalent,
I see that he modifies the epsilons on the
p updates so that they are parameter dependent:
p[i] += - epsilon[i] * gradV[i]
He then concludes that the resulting position/momentum
values "can no longer be interpreted as following Hamiltonian
dynamics at consistent time points" and goes on to
say "but that is of no consequence for the use of these
trajectories in HMC".
From the above, Michael's talking about the natural
mass-based physical update, which takes
p[i] += epsilon * gradV[i]
I'm guessing Matt was talking about Radford's, so you
were considering different definitions of varying step
size.
Now I'll have to dive into our code to see what NUTS is
actually doing, having not recognized this distinction earlier.
> If you've successfully standardized your distribution then it should
> look like a standardized gaussian, where the width of the typical set
> is about 1. In that case the optimal distance to travel is 1 =
> \epsilon * L.
But isn't epsilon * L equal to time, not distance traveled?
With fixed epsilon and L, distance traveled has to depend on
the initial position and initial random momentum.
- Bob