

GitHub - uber/pyro: Deep universal probabilistic programming with Python and PyT...
source link: https://github.com/uber/pyro
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Getting Started | Documentation | Community | Contributing
Pyro is a flexible, scalable deep probabilistic programming library built on PyTorch. Notably, it was designed with these principles in mind:
- Universal: Pyro is a universal PPL - it can represent any computable probability distribution.
- Scalable: Pyro scales to large data sets with little overhead compared to hand-written code.
- Minimal: Pyro is agile and maintainable. It is implemented with a small core of powerful, composable abstractions.
- Flexible: Pyro aims for automation when you want it, control when you need it. This is accomplished through high-level abstractions to express generative and inference models, while allowing experts easy-access to customize inference.
Pyro was originally developed at Uber AI and is now actively maintained by community contributors, including a dedicated team at the Broad Institute. In 2019, Pyro became a project of the Linux Foundation, a neutral space for collaboration on open source software, open standards, open data, and open hardware.
For more information about the high level motivation for Pyro, check out our launch blog post. For additional blog posts, check out work on experimental design and time-to-event modeling in Pyro.
Installing
Installing a stable Pyro release
Install using pip:
pip install pyro-ppl
Install from source:
git clone [email protected]:pyro-ppl/pyro.git
cd pyro
git checkout master # master is pinned to the latest release
pip install .
Install with extra packages:
To install the dependencies required to run the probabilistic models included in the examples
/tutorials
directories, please use the following command:
pip install pyro-ppl[extras]
Make sure that the models come from the same release version of the Pyro source code as you have installed.
Installing Pyro dev branch
For recent features you can install Pyro from source.
Install Pyro using pip:
pip install git+https://github.com/pyro-ppl/pyro.git
or, with the extras
dependency to run the probabilistic models included in the examples
/tutorials
directories:
pip install git+https://github.com/pyro-ppl/pyro.git#egg=project[extras]
Install Pyro from source:
git clone https://github.com/pyro-ppl/pyro
cd pyro
pip install . # pip install .[extras] for running models in examples/tutorials
Running Pyro from a Docker Container
Refer to the instructions here.
Citation
If you use Pyro, please consider citing:
@article{bingham2019pyro,
author = {Eli Bingham and
Jonathan P. Chen and
Martin Jankowiak and
Fritz Obermeyer and
Neeraj Pradhan and
Theofanis Karaletsos and
Rohit Singh and
Paul A. Szerlip and
Paul Horsfall and
Noah D. Goodman},
title = {Pyro: Deep Universal Probabilistic Programming},
journal = {J. Mach. Learn. Res.},
volume = {20},
pages = {28:1--28:6},
year = {2019},
url = {http://jmlr.org/papers/v20/18-403.html}
}
</article
Recommend
-
14
A Gentle Introduction to Probabilistic Programming Languages Probabilistic programming is becoming one of the most active areas of development in the machine learning space. What are the top languages we should k...
-
24
PPX is a cross-platform Probabilistic Programming eXecution protocol and API based on flatbuffers. It is intended as an open interoperability protocol between models and inference engines implemented in dif...
-
20
README.rst
-
20
Abstract: Synchronous modeling is at the heart of programming languages like Lustre, Esterel, or Scade used routinely for implementing safety critical control software, e.g., fly-by-wire and engine control in pl...
-
16
Probabilistic programming example with Anglican13 Nov 2017 At the last Amsterdam Clojure Meetup there was a great demostration...
-
10
What’s New:PPL Bench is an open source benchmark framework for evaluating probabilistic programming languages (PPLs) used for statistical modeling. Researchers can use PPL Bench to build their own reference implementations (a number...
-
7
Bayesian Machine Learning: MCMC, Latent Dirichlet Allocation and Probabilistic Programming with PythonBayesian Machine Learning: MCMC, Latent Dirichlet Allocation and Probabilistic Programming with PythonImpleme...
-
6
Introduction.¶ Probabilistic logic programs are logic programs in which some of the facts are annotated with probabilities.
-
8
Probabilistic programming example with Anglican13 Nov 2017 At the last Amsterdam Clojure Meetup there was a great demostration...
-
8
Pyro CMS 3.9 - Server-Side Template Injection (SSTI) (Authenticated)...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK