Modern Bayesian inference involves a mixture of computational techniques for estimating, validating, and drawing conclusions from probabilistic models as part of principled workflows for data analysis. Typical problems in Bayesian workflows are the approximation of intractable posterior distributions for diverse model types and the comparison of competing models of the same process in terms of their complexity and predictive performance. This manuscript introduces the Python library BayesFlow for simulation-based training of established neural network architectures for amortized data compression and inference. Amortized Bayesian inference, as implemented in BayesFlow, enables users to train custom neural networks on model simulations and re-use these networks for any subsequent application of the models. Since the trained networks can perform inference almost instantaneously, the upfront neural network training is quickly amortized.
翻译:现代贝叶斯推断融合了多种计算技术,用于估计、验证和从概率模型中得出结论,构成数据分析原则性工作流的一部分。贝叶斯工作流中的典型问题包括:对各类模型难以处理的(intractable)后验分布进行近似,以及在同一过程的竞争模型之间比较其复杂性和预测性能。本文介绍了用于模拟训练的Python库BayesFlow,该库能够对成熟的神经网络架构进行摊销(amortized)数据压缩与推断训练。通过BayesFlow实现的摊销贝叶斯推断,用户可以在模型模拟数据上训练定制神经网络,并在后续任何模型应用中重复使用这些网络。由于训练后的网络几乎可以即时执行推断,前期的神经网络训练成本会迅速得到摊销(amortized)。