Hi, I’ve been working on a time series model with unobserved components. For now, I’ve been running things with only one chain before scaling the problem to more chains, but I have found something that is puzzling me and that is likely a result of my own ignorance.
Specifically, I get the “low BFMI” warning. As far as I understand one should get sucha a warning only if E-BFMI < 0.3. Nonetheless, when I use the get_bfmi( stan_object ) function I get that my E-BFMI = 0.71 and if I use check_energy( stan_object ) I get “E-BFMI indicated no pathological behavior”. Hence, these statistics seem to suggest that E-BMFI is not low (contradicting the warning I get). Am I interpreting something totally wrong about the “low BFMI” warning or could it be possible that there is something “funny” going on in RStan?
Wow, it looks like the code that throws this warning is just straight-up doing the wrong thing. If true, I’m stunned that this hasn’t been noticed and fixed, since this particular bit of code has been around for a while:
Presumably we want to use rstan::get_bfmi here @bgoodri@jonah