Skip to content

This is a collection of algorithms and models written in Python for probabilistic programming. The main focus of the package is on Bayesian reasoning by using Bayesian networks, Markov networks, and their mixing.

License

Notifications You must be signed in to change notification settings

ax-va/Project-BayesianPy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

BayesianPy

This is a collection of algorithms and models written in Python 3.8 for probabilistic programming. The main focus of the package is on Bayesian reasoning by using Bayesian networks, Markov networks, and their mixing.

The collection contains the following algorithms and models:

  • Factored-inference-related algorithms for probabilistic graphical models with categorical distributions:

    • Belief Propagation (BP) [B12] for efficient inference in trees (pb4ml/inference/factored/belief_propagation.py)

    • Bucket Elimination (BE) [B12] for inference in loopy graphs or computing the joint probability distribution of several query variables (pb4ml/inference/factored/bucket_elimination.py)

    • Greedy Bucket Elimination (GBE) combining Bucket Elimination with an elimination ordering pre-calculated by Greedy Ordering (pb4ml/inference/factored/greedy_elimination.py)

    • Greedy Ordering (GO) [KF09] for greedy search for a near-optimal variable elimination ordering (pb4ml/inference/factored/greedy_ordering.py)

  • Academic probabilistic models in the factor graph representation:

    • Bayesian network "Extended Student" [KF09] (pb4ml/models/academic/extended_student.py)

    • Bayesian network "Student" [KF09] (pb4ml/models/academic/student.py)

    • Markov network "Misconception" [KF09] (pb4ml/models/academic/misconception.py)

See in the tests folder how to use the algorithms. In the models folder, you can see how to create factor graph models.

© 2021-2023 Alexander Vasiliev

References:

  • [B12] David Barber, "Bayesian Reasoning and Machine Learning", Cambridge University Press, 2012;

  • [KF09] Daphne Koller and Nir Friedman, "Probabilistic Graphical Models: Principles and Techniques", The MIT Press, 2009

About

This is a collection of algorithms and models written in Python for probabilistic programming. The main focus of the package is on Bayesian reasoning by using Bayesian networks, Markov networks, and their mixing.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages