C library for mixtures of exponential families (fork of oschwand's libmef)
root
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
LIBMEF – A LIBRARY FOR MIXTURES OF EXPONENTIAL
FAMILIES
Olivier Schwander
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1 Description
═════════════
`libmef' is a C library allowing to manipulate, learn, simplify and
compare mixtures of exponential families. It is designed to ease the
use of various exponential families in mixture models.
See also [jMEF] for a Java implementation of the same kind of library
and [pyMEF] for a Python version.
The C implementation allows to build easily bindings to other language
and thus to put mixtures of exponential families into /your/
application.
[jMEF] http://www.lix.polytechnique.fr/~nielsen/MEF/
[pyMEF] http://www.lix.polytechnique.fr/~schwander/pyMEF/
2 What are exponential families?
════════════════════════════════
An exponential family is a generic set of probability distributions
that admit the following canonical distribution:
\[ p_F(x; \theta) = \exp \left( \langle t(x) | \theta \rangle -
F(\theta) + k(x) \right) \]
Exponential families are characterized by the log normalizer function
F, and include the following well-known distributions: Gaussian
(generic, isotropic Gaussian, diagonal Gaussian, rectified Gaussian or
Wald distributions, lognormal), Poisson, Bernoulli, binomial,
multinomial, Laplacian, Gamma (incl. chi-squared), Beta, exponential,
Wishart, Dirichlet, Rayleigh, probability simplex, negative binomial
distribution, Weibull, von Mises, Pareto distributions, skew logistic,
etc.
Mixtures of exponential families provide a generic framework for
handling Gaussian mixture models (GMMs also called MoGs for mixture of
Gaussians), mixture of Poisson distributions, and Laplacian mixture
models as well.
3 Documentation
═══════════════
3.1 Algorithms
──────────────
• Bregman Soft Clustering
• Bregman Hard Clustering (soon)
• Kernel Density Estimator (soon)
• $k$-MLE
• $k$-MLE for Gamma mixtures
• $k$-MLE for generalized Gaussian mixtures
3.2 Families
────────────
• Univariate Gaussian
• Gamma
• Generalized Gaussian
Do not hesitate to contribute with your own family (tutorial to come)
3.3 Examples
────────────
See the `examples/' sub-directory inside the sources.
4 Downloads
═══════════
• [file:libmef-0.1.tar.gz] (as used in the SIMBAD 2013 paper)
4.1 Darcs repository
────────────────────
• Get: `darcs get
http://www.lix.polytechnique.fr/~schwander/darcs/libmef/'
• Browse: [http://hub.darcs.net/oschwand/libmef]
4.2 Installation
────────────────
You will need [cmake] and the [GNU Scientific Library] in order to
compile `libmef'.
╭────
│ cmake .
│ make
│ cd examples; make # for the examples
╰────
[cmake] http://cmake.org/
[GNU Scientific Library] http://www.gnu.org/software/gsl/
5 Bibliography
══════════════
• Olivier Schwander and Frank Nielsen, *Fast learning of Gamma mixture
models with k-MLE*, SIMBAD 2013
• Olivier Schwander, Frank Nielsen, Aurélien Schutz and Yannick
Berthoumieu, *k-MLE for mixtures of generalized Gaussians*, , ICPR
2012
• Olivier Schwander and Frank Nielsen, *Learning Mixtures by
Simplifying Kernel Density Estimators*, in [Matrix Information
Geometry], Springer, 2012
• Olivier Schwander and Frank Nielsen, *pyMEF - A framework for
Exponential Families in Python*, in *Proceedings of the 2011 IEEE
Workshop on Statistical Signal Processing*
• Vincent Garcia, Frank Nielsen, and Richard Nock, *Levels of details
for Gaussian mixture models*, in *Proceedings of the Asian
Conference on Computer Vision, Xi'an, China, September 2009*
• Frank Nielsen and Vincent Garcia, *Statistical exponential families:
A digest with flash cards*, arXiV, [http://arxiv.org/abs/0911.4863],
November 2009
• Frank Nielsen and Richard Nock, *Sided and symmetrized Bregman
centroids*, in *IEEE Transactions on Information Theory, 2009, 55,
2048-2059*
• Frank Nielsen, Jean-Daniel Boissonnat and Richard Nock, *On Bregman
Voronoi diagrams*, in *ACM-SIAM Symposium on Data Mining, 2007,
746-755*
• A. Banerjee, S. Merugu, I. Dhillon, and J. Ghosh, *Clustering with
Bregman divergences*, in *Journal of Machine Learning Research,
2005, 6, 234-245*
[Matrix Information Geometry]
http://www.springer.com/engineering/signals/book/978-3-642-30231-2
6 Contacts
══════════
Please send any comment or bug report to [Olivier Schwander].
[Olivier Schwander] mailto:schwander@lix.polytechnique.fr