We’re happy to announce the release of Stan C++, CmdStan,
RStan, and PyStan 2.1.0. This is a minor feature release,
but it is also an important bug fix release. As always, the
place to start is the (all new) Stan web pages:
Major Bug in 2.0.0, 2.0.1
Stan 2.0.0 and Stan 2.0.1 introduced a bug in the implementation
of the NUTS criterion that led to poor tail exploration and
thus biased the posterior uncertainty downward. There was no
bug in NUTS in Stan 1.3 or earlier, and 2.1 has been extensively tested
and tests put in place so this problem will not recur.
If you are using Stan 2.0.0 or 2.0.1, you should switch to 2.1.0 as
soon as possible and rerun any models you care about.
New Target Acceptance Rate Default for Stan 2.1.0
was an increase in the target acceptance rate during adaptation
from 0.65 to 0.80. The bad news is that iterations will take
around 50% longer because of the reduced step size required to
achieve the higher acceptance rate. The good news is that chains
should be less variable and tails of hierarchical models should
be explored more efficiently (in particular, fewer “stuck” chains).
There are also new configuration parameters that let you control how
long the various phases of adaptation last, with explanations in the
command section of the manual.
The change was motivated by:
The full list can be found in the release notes at:
The highlights in addition to adaptation are a switch to BFGS
as the default optimizer (about an order of magnitude faster and
also more stable), fixes to bugs in bin/print for CmdStan for
matrices, bug fixes to multi_normal_prec(), bernoulli(), bernoulli_logit(),
and Phi(), sd(), var(), all of which are now more stable for vectorization and
arithmetic (former bugs caused crashes, not wrong answers). Windows
now builds in 64-bit mode, and g++ 4.4 now works. There were also many
updates to clarify the manual.
As always, we’d love to hear from you on our mailing lists if
you have suggestions, bug reports, problems installing, etc.
– Stan Development Team