Probabilistic programming: A review for environmental modellers. (April 2019) - Krapu, Christopher; Borsuk, Mark
Abstract: The development process for an environmental model involves multiple iterations of a planning-implementation-assessment cycle. Probabilistic programming languages (PPLs) are designed to expedite this process with general-purpose methods for implementing models, efficiently inferring their parameters, and generating probabilistic predictions. Probabilistic programming exists at the intersection of Bayesian statistics, machine learning, and process-based modelling and therefore can be of value to the environmental modelling community. In this review article, we explain how it can be used to accelerate model development and allow for statistical inference using more complicated models and larger data sets than previously possible. Specific challenges and limitations to employing such frameworks are also raised. We provide guidance to help modellers decide whether incorporating probabilistic programming in their work may improve the efficiency and quality of their analyses. Highlights: Probabilistic programming languages offer modellers generic components for specifying stochastic and deterministic models. Advances in Bayesian estimation methods allow for model fitting and uncertainty quantification in a range of scenarios. Probabilistic programming approaches can help bridge the gap between statistics, environmental modelling and machine learning.