[mlpack] Degenerate cases and other GMM problems

John Demme jdd at cs.columbia.edu
Tue Apr 9 13:34:15 EDT 2013


Hi All-

I'm trying to use mlpack's GMM with some data I've got. I'm not so familiar
with the statistical tools used here as I should be, so I've run into some
problems that I'm having trouble debugging on my own:

- First, I often get "error: inv(): matrix appears to be singular" during
estimation. It appears that during estimation, one (or more) rows and
columns of a covariance matrix become 0, and I think this causes it to
become non-invertible.

- Second, in cases when estimation completes, I often end up with means,
weights and covariances which are all -nan.

I'm not sure whether I'm mis-using the tool or I've got funny data which
need to be conditioned. It's six-dimensional, values less than 1.0 and one
of the features is very often zero. (I'm wondering if that last bit means
that one good gaussian would be zero mean and zero stdev, resulting in a
degenerate covariance matrix -- though I don't know enough stat and linear
algebra to work this out.) Can someone give some advice?

I've posted a small sub-set of my data which can trigger these problems:
www.cs.columbia.edu/~jdd/gmm_obs0.csv

If I run "./gmm -i gmm_obs0.csv -g 5" I can get the first problem. Changing
the number of gaussians to 8 results in the second problem.

Thanks in advance,
John
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.cc.gatech.edu/pipermail/mlpack/attachments/20130409/9aa44bd0/attachment-0002.html>


More information about the mlpack mailing list