Gen
Last updated
Was this helpful?
Last updated
Was this helpful?
Gen is a new probabilistic programming platform that aims to make it possible to do real-time inference in generative models by combining of model-based search, data-driven neural network inference, and state-of-the-art Monte Carlo techniques. Gen is thus a multi-paradigm platform for probabilistic artificial intelligence research that aims to be efficient and expressive enough for general-purpose use.
The propose of this book is to know more about this new framework from MIT, and know what are the possibilities of this frameworks.
Gen addresses some of the challenges mentioned in the previous section by leveraging a novel architecture that improves upon some of the traditional PPL techniques. Based on the Julia programming language, Gen introduces an architecture that represent models not as program code in a Turing-complete modeling language, but as black boxes that expose capabilities useful for inference via a common interface. These black boxes are called generative functions and include an interface with the following capabilities:
I. Tools for Constructing Models: Gen provides multiple interoperable modeling languages, each striking a different flexibility/efficiency trade-off. A single model can combine code from multiple modeling languages. The resulting generative functions leverage data structures well-suited to the model as well as incremental computation.
II. Tools for Tailoring Inference: Gen provides a high-level library for inference programming, which implements inference algorithm building blocks that interact with models only through generative functions.
III. Evaluation: Gen provides an empirical model to evaluate its performance against alternatives across well-known inference problems.
The following figure illustrates the Gen architecture. As you can see, the frameworks supports difference inference algorithms as well as a layer of abstraction based on the concept of generative functions.