Fast clustering Expectation Maximization algorithm for Gaussian Mixture Models.
C Python
Switch branches/tags
Nothing to show
Clone or download
Juan Daniel Juan Daniel
Juan Daniel and Juan Daniel Fix heap corruption on 32bit systems.
Latest commit d0d7d7f Jan 28, 2014


Fast C implementation of the clustering Expectation Maximization (EM) algorithm for estimating Gaussian Mixture Models (GMMs).


In statistics, the expectation–maximization (EM) algorithm is an iterative method for finding maximum likelihood or maximum a posteriori (MAP) estimates of parameters in statistical models, where the model depends on unobserved latent variables.

For this reason EM is frequently used for data clustering, verification and identification of the speaker (biometric tasks), author profiling based on his documents, automatic document categorization, and many more applications.



In order to compile this program, you need first compile and install the zlib library from their website, or using your preferred software distribution channels (aptitude, yum, macports, etc) in order to install it (with the dev packages). On some systems this library can be installed by default.

On Mac Os X and Linux distributions you can simple use the make command on the system shell to compile it, and then sudo make install to install it on yout system (by default on /usr/bin). We recommend the use of the lastest version of the GCC compiler (because the code generated by LLVM is, for now, much slower).


Issues and Bugs

Do you have a bug or a feature request? Do not worry, open a new issue. But please, before opening any new issue, search on existing the yours in order to avoid duplicates. And thanks you for your contribution!



 Expectation Maximization for Gaussian Mixture Models.
 Copyright (C) 2012-2014 Juan Daniel Valor Miro

 This program is free software; you can redistribute it and/or
 modify it under the terms of the GNU General Public License as
 published by the Free Software Foundation; either version 2 of
 the License, or (at your option) any later version.

 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 General Public License for more details.