Skip to content
Archive of entries posted by

Mitzi’s talk on spatial models in Ann Arbor, Thursday 5 April 2018

Mitzi returns to her alma mater to give a talk at joint meeting of the Ann Arbor useR and ASA Meetups: Spatial models in Stan Abstract This case study shows how to efficiently encode and compute an intrinsic conditional autoregressive (ICAR) model in Stan. When data has a neighborhood structure, ICAR models provide spatial smoothing […]

Bob’s talk at Berkeley, Thursday 22 March, 3 pm

It’s at the Institute for Data Science at Berkeley. Hierarchical Modeling in Stan for Pooling, Prediction, and Multiple Comparisons 22 March 2018, 3pm 190 Doe Library. UC Berkeley. And here’s the abstract: I’ll provide an end-to-end example of using R and Stan to carry out full Bayesian inference for a simple set of repeated binary […]

Andrew vs. the Multi-Armed Bandit

Andrew and I were talking about coding up some sequential designs for A/B testing in Stan the other week. I volunteered to do the legwork and implement some examples. The literature is very accessible these days—it can be found under the subject heading “multi-armed bandits.” There’s even a Wikipedia page on multi-armed bandits that lays […]

When to add a feature to Stan? The recurring issue of the compound declare-distribute statement

At today’s Stan meeting (this is Bob, so I really do mean today), we revisited the topic of whether to add a feature to Stan that would let you put distributions on parameters with their declarations. Compound declare-define statements Mitzi added declare-define statements a while back, so you can now write: transformed parameter { real […]

New Stan case studies: NNGP and Lotka-Volterra

It’s only January and we already have two new case studies up on the Stan site. Two new case studies Lu Zhang of UCLA contributed a case study on nearest neighbor Gaussian processes. Bob Carpenter (that’s me!) of Columbia Uni contributed one on Lotka-Volterra population dynamics. Mitzi Morris of Columbia Uni has been updating her […]

We were measuring the speed of Stan incorrectly—it’s faster than we thought in some cases due to antithetical sampling

Aki points out that in cases of antithetical sampling, our effective sample size calculations were unduly truncated above at the number of iterations. It turns out the effective sample size can be greater than the number of iterations if the draws are anticorrelated. And all we really care about for speed is effective sample size […]

Three new domain-specific (embedded) languages with a Stan backend

One is an accident. Two is a coincidence. Three is a pattern. Perhaps it’s no coincidence that there are three new interfaces that use Stan’s C++ implementation of adaptive Hamiltonian Monte Carlo (currently an updated version of the no-U-turn sampler). ScalaStan embeds a Stan-like language in Scala. It’s a Scala package largely (if not entirely […]

Interactive visualizations of sampling and GP regression

You really don’t want to miss Chi Feng‘s absolutely wonderful interactive demos. (1) Markov chain Monte Carlo sampling I believe this is exactly what Andrew was asking for a few Stan meetings ago: Chi Feng’s Interactive MCMC Sampling Visualizer This tool lets you explore a range of sampling algorithms including random-walk Metropolis, Hamiltonian Monte Carlo, […]

How not to compare the speed of Stan to something else

Someone’s wrong on the internet And I have to do something about it. Following on from Dan’s post on Barry Gibb statistical model evaluation, here’s an example inspired by a paper I found on Google Scholar searching for Stan citations. The paper (which there is no point in citing) concluded that JAGS was faster than […]

Computational and statistical issues with uniform interval priors

There are two anti-patterns* for prior specification in Stan programs that can be sourced directly to idioms developed for BUGS. One is the diffuse gamma priors that Andrew’s already written about at length. The second is interval-based priors. Which brings us to today’s post. Interval priors An interval prior is something like this in Stan […]

Stan Roundup, 10 November 2017

We’re in the heart of the academic season and there’s a lot going on. James Ramsey reported a critical performance regression bug in Stan 2.17 (this affects the latest CmdStan and PyStan, not the latest RStan). Sean Talts and Daniel Lee diagnosed the underlying problem as being with the change from char* to std::string arguments—you […]

Stan Roundup, 27 October 2017

I missed two weeks and haven’t had time to create a dedicated blog for Stan yet, so we’re still here. This is only the update for this week. From now on, I’m going to try to concentrate on things that are done, not just in progress so you can get a better feel for the […]

Analyzing New Zealand fatal traffic crashes in Stan with added open-access science

Open-access science I’ll get to the meat of this post in a second, but I just wanted to highlight how the study I’m about to talk about was done in the open and how that helped everyone. Tim Makarios read the study and responded in the blog comments, Hold on. As I first skimmed this […]

Halifax, NS, Stan talk and course Thu 19 Oct

Halfiax, here we come. I (Bob, not Andrew) am going to be giving a talk on Stan and then Mitzi and I will be teaching a course on Stan after that. The public is invited, though space is limited for the course. Here are details if you happen to be in the Maritime provinces. TALK: […]

Stan Roundup, 6 October 2017

I missed last week and almost forgot to add this week’s. Jonah Gabry returned from teaching a one-week course for a special EU research institute in Spain. Mitzi Morris has been knocking out bug fixes for the parser and some pull requests to refactor the underlying type inference to clear the way for tuples, sparse […]

Stan Weekly Roundup, 22 September 2017

This week (and a bit from last week) in Stan: Paul-Christian B├╝rkner‘s paper on brms (a higher-level interface to RStan, which preceded rstanarm and is still widely used and recommended by our own devs) was just published as a JStatSoft article. If you follow the link, the abstract explains what brms does. Ben Goodrich and […]

Will Stanton hit 61 home runs this season?

[edit: Juho Kokkala corrected my homework. Thanks! I updated the post. Also see some further elaboration in my reply to Andrew’s comment. As Andrew likes to say …] So far, Giancarlo Stanton has hit 56 home runs in 555 at bats over 149 games. Miami has 10 games left to play. What’s the chance he’ll […]

Call for papers: Probabilistic Programming Languages, Semantics, and Systems (PPS 2018)

I’m on the program committee and they say they’re looking to broaden their horizons this year to include systems like Stan. The workshop is part of POPL, the big programming language theory conference. Here’s the official link PPS 2018 home page Call for extended abstracts (2 pages) The submissions are two-page extended abstracts and the […]

Stan Weekly Roundup, 7 September 2017

I was out on vacation last week, but now I’m back! While I was gone… Sean Talts released Stan 2.17 (the math library, the core Stan library, and CmdStan 2.17). RStan and PyStan are in the works. Stan 2.17 will be the last pure C++03 release, that opens up pretty much all of C++11 and […]

The fundamental abstractions underlying BUGS and Stan as probabilistic programming languages

Probabilistic programming languages I think of BUGS and Stan as probabilistic programming languages because their variables may be used to denote random variables, with function application doing the right thing in terms of propagating randomness (usually encoding uncertainty in a Bayesian setting). They are not probabilistic programming languages that provide an object language for inference; […]