#29 · Primary category: Classical Machine Learning Frameworks

pomegranate

machine-learning probabilistic-graphical-models python pytorch

Fast, flexible and easy to use probabilistic modelling in Python.

Project last updated:03/06/25

GitHub Stars

3.5K

Forks

599

Contributors

75

License

MIT

Why we included this project

Pomegranate takes a different route from most machine-learning libraries: instead of a grab bag of estimators, it treats every model as a probability distribution, and that single decision makes composition unusually easy. A Gaussian mixture is just a normal distribution dropped into a mixture model, and the same trick works with a gamma and a Poisson, or even a Bayesian network. You can also nest a hidden Markov model inside a Bayes classifier to classify sequences directly. The v1.0 rewrite swapped the old Cython backend for PyTorch, which makes most methods faster and GPU-accelerated, at the cost of a new API that will break existing code. If you work with sequence labeling, clustering, anomaly detection, or graphical models and want something higher-level than hand-rolled NumPy, this is a good fit.

Articles for this project

No articles for this project yet.

To suggest a topic or contribute an article, contact us.

Related projects in this category