SPFlow: An Easy and Extensible Library for Deep Probabilistic Learning using Sum-Product Networks
arXiv:1901.03704
Abstract
We introduce SPFlow, an open-source Python library providing a simple interface to inference, learning and manipulation routines for deep and tractable probabilistic models called Sum-Product Networks (SPNs). The library allows one to quickly create SPNs both from data and through a domain specific language (DSL). It efficiently implements several probabilistic inference routines like computing marginals, conditionals and (approximate) most probable explanations (MPEs) along with sampling as well as utilities for serializing, plotting and structure statistics on an SPN. Moreover, many of the algorithms proposed in the literature to learn the structure and parameters of SPNs are readily available in SPFlow. Furthermore, SPFlow is extremely extensible and customizable, allowing users to promptly distill new inference and learning routines by injecting custom code into a lightweight functional-oriented API framework. This is achieved in SPFlow by keeping an internal Python representation of the graph structure that also enables practical compilation of an SPN into a TensorFlow graph, C, CUDA or FPGA custom code, significantly speeding-up computations.
4 pages, 1 figure, code
References in corpus (2)
Cited by in corpus (14)
- SPPL: Probabilistic Programming with Fast Exact Symbolic Inference
- Einsum Networks: Fast and Scalable Learning of Tractable Probabilistic Circuits
- Bayesian Learning of Sum-Product Networks
- DeepDB: Learn from Data, not from Queries!
- Tractable Regularization of Probabilistic Circuits
- Flow Models for Arbitrary Conditional Likelihoods
- CryptoSPN: Privacy-preserving Sum-Product Network Inference
- Sum-product networks: A survey
- GRAPHOPT: constrained-optimization-based parallelization of irregular graphs
- A Compositional Atlas of Tractable Circuit Operations: From Simple Transformations to Complex Information-Theoretic Queries
- Random Sum-Product Forests with Residual Links
- Recurrent Sum-Product-Max Networks for Decision Making in Perfectly-Observed Environments
- Fast Private Parameter Learning and Inference for Sum-Product Networks
- Explaining Deep Tractable Probabilistic Models: The sum-product network case