Bindings for EM machines and trainers of Bob
Expectation Maximization Machine Learning Tools
This package is part of the signal-processing and machine learning toolbox Bob. It contains routines for learning probabilistic models via Expectation Maximization (EM).
The EM algorithm is an iterative method that estimates parameters for statistical models, where the model depends on unobserved latent variables. The EM iteration alternates between performing an expectation (E) step, which creates a function for the expectation of the log-likelihood evaluated using the current estimate for the parameters, and a maximization (M) step, which computes parameters maximizing the expected log-likelihood found on the E step. These parameter-estimates are then used to determine the distribution of the latent variables in the next E step.
The package includes the machine definition per se and a selection of different trainers for specialized purposes:
- Maximum Likelihood (ML)
- Maximum a Posteriori (MAP)
- Inter Session Variability Modelling (ISV)
- Joint Factor Analysis (JFA)
- Total Variability Modeling (iVectors)
- Probabilistic Linear Discriminant Analysis (PLDA)
- EM Principal Component Analysis (EM-PCA)
Follow our installation instructions. Then, using the Python interpreter provided by the distribution, bootstrap and buildout this package:
$ python bootstrap-buildout.py $ ./bin/buildout
For questions or reporting issues to this software package, contact our development mailing list.