General-purpose statistical modeling tools such as OpenBugs and Stan allow using easy-to-build modular likelihood models to fit models to data through MCMC or other techniques. Crucial to the efficiency of such tools, especially as parameter dimensions increase, are tools like HMC, which allow use differentiation and/or conjugacy for continuous parameters, so that fitting is not solely a matter of getting lucky with random Metropolis-Hastings proposals. Yet some models, especially nonparametric ones, also require discrete parameters and/or hand-written jump steps; and existing tools for HMC generally don't play well with discrete parameters. My project is intended to generally improve the Julia toolchain for MCMC when there is a mix of continuous and discrete parameters. My work will be based on Mamba.jl; though when I can make something that will be useful to Klara.jl too, even better. To make that plan concrete, I'll be implementing CrossCat, a general-purpose nonparametric model for "medium-size" tabular data including missingness and various data types. (Roughly speaking, "medium-size" might mean p<1e3, n<1e5).



Jameson Quinn


  • Benjamin Deonovic