Arianna: A Domain-Specific Language for MCMC Algorithms


Type Research Project

Duration Jan. 6, 2020 - Dec. 30, 2022

  • Finance, Accounting and Statistics DP (Details)
  • Institute for Retailing & Data Science IN (Details)
  • Institute for Information Systems and New Media IN (Details)

Tags

Press 'enter' for creating the tag
  • Bayesian Computation
  • Domain-Specific Language
  • MCMC
  • Adelsberger, Stephan (Details) Project Head
  • Frühwirth-Schnatter, Sylvia (Details) Project Head
  • Winkler, Daniel (Details) Project Head
 

Abstract (English)

The development of MCMC algorithms involves an implementation in a mathematical language, in addition to one in a programming language. Often further versions are written in faster, lower-level languages (e.g., C++). This development cycle comes with obvious drawbacks (e.g., multiple manual implementations).

We contribute “Arianna” (honoring Rosenbluth), a system for MCMC algorithms based on domain-specific languages (DSLs; special-purpose languages like SQL). Our DSL allows the implementation of algorithms using mathematical notation, which can be translated to different programming languages.

Our DSL constitutes a concise, easily comprehensible, and extensible yet powerful system to streamline MCMC development. We highlight different non-trivial MCMC algorithms including global-local shrinkage priors for factor models.

While researchers retain complete control over the algorithm (no black box), highly optimized backends (e.g., GPU) can be provided by domain specialists. In our presentation we will highlight several backends (Rust for speed, Javascript for in-browser execution, etc.).

Publications