At times, when fitting a stan model involves a low E-BFMI problem, I am provided with the usual warning :
> fit.binom <- stan('simu_CAR.stan', data = dat_binom_stan,
+ iter = niter, chains = nchains, verbose = FALSE)
Warning messages:
1: There were 1 chains where the estimated Bayesian Fraction of Missing Information was low.
See http://mc-stan.org/misc/warnings.html#bfmi-low
2: Examine the pairs() plot to diagnose sampling problems
However if I call check_energy()
, I see no trace of the initial warning :
> check_energy(fit.binom)
E-BFMI indicated no pathological behavior.
It seems that the stan()
main function will raise a warning if E-BFMI is lower than 0.3. (as inidcated in 6.1 - A Conceptual Intorduction to Hamiltonian Monte Carlo, p. 44) whereas the check_energy()
function will considered 0.2 as a threshold for pathological behaviors as one can see in the help file ?
Is that indeed the case and is there a practical reason to that ? (Not an earth-shattering problem, but still tickling my curiousity)
PS : R version 3.5.0 and rstan version 2.17.3