将Stan编译为生成式概率语言及其对深度概率编程的扩展
机器学习
2021-04-13 v5 人工智能
编程语言
机器学习
摘要
Stan是一种在统计学界流行的 probabilistic programming language(概率编程语言),具有表达概率模型的高级语法。Stan在本质上不同于Church、Anglican或Pyro等生成式概率编程语言。本文提出一种全面的编译方案,可将任意Stan模型编译为生成式语言并证明其正确性。我们利用该编译方案为Stanc3编译器构建面向Pyro和NumPyro的两个新后端。实验结果表明,在26个基准测试上,NumPyro后端相比Stan的几何平均加速了2.3倍。基于Pyro,我们扩展Stan以支持显式变分推断引导与深度概率模型。如此,熟悉Stan的用户无需学习一种全新的语言即可获得新特性。
引用
@article{arxiv.1810.00873,
title = {Compiling Stan to Generative Probabilistic Languages and Extension to Deep Probabilistic Programming},
author = {Guillaume Baudart and Javier Burroni and Martin Hirzel and Louis Mandel and Avraham Shinnar},
journal= {arXiv preprint arXiv:1810.00873},
year = {2021}
}