Adapt_delta and chain length

adapt_delta generally requires longer trajectories which manifests as maxing out treedepth. If you max out treedepth regularly, you can increase it and thereby take more timesteps in each trajectory. If you do that, you won’t in theory need to increase number of iterations. A warning about that though, it will generally be the case that until you get into equilibrium, the initial stages of the exploration will be highly oscillatory. Short treedepth tends to bleed kinetic energy out of the system, and get you into the typical set faster. So, it makes sense to do a short run with short treedepth until the lp value stabilizes, and then take these final positions as your initializations for a longer run with longer treedepth.

In practice, the way to set number of iterations is by ensuring that multiple chains converge to the same thing, and that the effective sample size for your parameters is big enough. Once in equilibrium, increasing treedepth gives more effective samples per iteration.

3 Likes