Stan 2.5, now with MATLAB, Julia, and ODEs
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
As usual, you can find everything on the
Drop us a line on the stan-users group if you have problems with installs or questions about Stan or coding particular models.
New Interfaces
We’d like to welcome two new interfaces:
- MatlabStan by Brian Lau, and
- Stan.jl (for Julia) by Rob Goedman.
The new interface home pages are linked from the Stan home page.
New Features
The biggest new feature is a differential equation solver (Runge-Kutta from Boost’s odeint with coupled sensitivities). We also added new cbind and rbind functions, is_nan and is_inf functions, a num_elements function, a mechanism to throw exceptions to reject samples with printed messages, and two new distributions, the Frechet and 2-parameter Pareto (both contributed by Alexey Stukalov).
Backward Compatibility
Stan 2.5 is fully backward compatible with earlier 2.x releases and will remain so until Stan 3 (which is not yet designed, much less scheduled).
Revised Manual
In addition to the ODE documentation, there is a new chapter on marginalizing discrete latent parameters with several example models, new sections on regression priors for coefficients and noise scale in ordinary, hierarchical, and multivariate settings, along with new chapters on all the algorithms used by Stan for MCMC sampling, optimization, and diagnosis, with configuration information and advice.
Preview of 2.6 and Beyond
Our plans for major features in the near future include stiff ODE solvers, a general MATLAB/R-style array/matrix/vector indexing and assignment syntax, and uncertainty estimates for penalized maximum likelihood estimates via Laplace approximations with second-order autodiff.
Release Notes
Here are the release notes.
v2.5.0 (20 October 2014) ====================================================================== New Features ---------------------------------------- * ordinary differential equation solver, implemented by coupling the user-specified system with its sensitivities (#771) * add reject() statement for user-defined rejections/exceptions (#458) * new num_elements() functions that applies to all containers (#1026) * added is_nan() and is_inf() functions (#592) * nested reverse-mode autodiff, primarily for ode solver (#1031) * added get_lp() function to remove any need for bare lp__ (#470) * new functions cbind() and rbind() like those in R (#787) * added modulus function in a way tht is consistent with integer division across platforms (#577) * exposed pareto_type_2_rng (#580) * added Frechet distribution and multi_gp_cholesky distribution (thanks to Alexey Stukalov for both) Enhancements ---------------------------------------- * removed Eigen code insertion for numeric traits and replaced with order-independent metaprogram (#1065) * cleaned up error messages to provide clearer error context and more informative messages (#640) * extensive tests for higher order autodiff in densities (#823) * added context factory * deprecated lkj_cov density (#865) * trying again with informational/rejection message (#223) * more code moved from interfaces into Stan common libraries, including a var_context factory for configuration * moved example models to own repo (stan-dev/example-models) and included as submodule for stan-dev/stan (#314) * added per-iteration interrupt handler to BFGS optimizer (#768) * worked around unused function warnings from gcc (#796) * fixed error messages in vector to array conversion (#579, thanks Kevin S. Van Horn) * fixed gp-fit.stan example to be as efficient as manual version (#782) * update to Eigen version 3.2.2 (#1087) Builds ---------------------------------------- * pull out testing into Python script for developers to simplify makes * libstan dependencies handled properly and regenerate dependencies, including working around bug in GNU make 3.8.1 (#1058, #1061, #1062) Bug Fixes ---------------------------------------- * deal with covariant return structure in functions (allows data-only variables to alternate with parameter version); involved adding new traits metaprograms promote_scalar and promote_scalar_type (#849) * fixed error message on check_nonzero_size (#1066) * fix arg config printing after random seed generation (#1049) * logical conjunction and disjunction operators short circuit (#593) * clean up parser bug preventing variables starting with reserved names (#866) * fma() function calls underlying platform fma (#667) * remove upper bound on number of function arguments (#867) * cleaned up code to remove compiler warnings (#1034) * share likely() and unlikely() macros to avoid redundancy warnings (#1002) * complete review of function library for NaN behavior and consistency of calls for double and autodiff values, with extensive documentation and extensive new unit tests for this and other, enhances NaN testing in built-in test functions (several dozen issues in the #800 to #902 range) * fixing Eigen assert bugs with NO_DEBUG in tests (#904) * fix to makefile to allow builds in g++ 4.4 (thanks to Ewan Dunbar) * fix precedence of exponentiation in language (#835) * allow size zero inputs in data and initialization (#683) Documentation ---------------------------------------- * new chapter on differential equation solver * new sections on default priors for regression coefficients and scales, including hierarchical and multivariate based on full Cholesky parameterization * new part on algorithms, which chapters on HMC/NUTS, optimization, and diagnostics * new chapter on models with latent discrete parameters * using latexmk through make for LaTeX compilation * changed page numbers to beg contiguous throughout so page numbers match PDF viewer page number * all user-supplied corrections applied from next-manual issue * section on identifiability with priors, including discussion of K-1 parameterization of softmax and IRT * new section on convergence monitoring * extensive corrections from Andrew Gelman on regression models and notation * added discussion of hurdle model in zero inflation section * update built-in function doc to clarify several behaviors (#1025)
The post Stan 2.5, now with MATLAB, Julia, and ODEs appeared first on Statistical Modeling, Causal Inference, and Social Science.
R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.