Tools for Bayesian modeling.
Project description
Boom stands for 'Bayesian object oriented modeling'.
It is also the sound your computer makes when it crashes.
The main part of the Boom library is formulated in terms of abstractions
for Model, Data, Params, and PosteriorSampler. A Model is primarily an
environment where parameters can be learned from data. The primary
learning method is Markov chain Monte Carlo, with custom samplers defined
for specific models.
The archetypal Boom program looks something like this:
import BayesBoom as Boom
some_data = 3 * np.random.randn(100) + 7
model = Boom.GaussianModel()
model.set_data(some_data)
precision_prior = Boom.GammaModel(0.5, 1.5)
mean_prior = Boom.GaussianModel(0, 10**2)
poseterior_sampler = Boom.GaussianSemiconjugateSampler(
model, mean_prior, precision_prior)
model.set_method(poseterior_sampler)
niter = 100
mean_draws = np.zeros(niter)
sd_draws = np.zeros(niter)
for i in range(100):
model.sample_posterior()
mean_draws[i] = model.mu()
sd_draws[i] = model.sigma()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
BayesBoom-0.1.7.tar.gz
(2.4 MB
view hashes)