Skip to content

Latest commit

 

History

History
34 lines (28 loc) · 2.86 KB

readme.rst

File metadata and controls

34 lines (28 loc) · 2.86 KB

Monte-Carlo Experiment

MCEx is an experimental package designed to be allow experimentation with MCMC package design. It's goal is to be simple to use, understand, extend and improve, while still being fast. The hope is that some of the lessons learned in this experimental package lead to improvements in PyMC. People are encouraged to fork MCEx to try out their own designs and improvements as well as make criticisms.

For a tutorial on basic inference, see tutorial.py in the examples folder.

Some design decisions

Design decision Advantages Disadvantages
Computational core outsourced to Theano
  • Simple package code (<400 lines)
  • Efficient
  • Improvements to Theano improve MCEx
  • GPU enabled
  • Automatic Differentiation
  • Supporting arbitrary stochastics/deterministics more difficult in complex cases
Random variables, distributions, chains, chain history, and model all distinct
  • Easy to understand design
  • Reflects the mathematical structure
  • Adding new functionality can be done independently from the rest of the package
  • More verbose
Functional style design
  • Allows easier exchange of components
  • Design less similar to Object Oriented design