# Problem on Clustering Discrete Input using GMM

I want to do clustering using Gaussian Mixture modeling (GMM) on a set of data which is a 5-dimension vector of real values $(x_1,x_2,x_3,x_4,x_5)$. However the clustering result were pretty bad, despite the fact that the cluster seems very clear to human.

After verifying inital parameters and prior settings, I found a possible reason why I wouldn't get a good result. The gaussian mean learned by the GMM are the actually mean I want, however the variance does not represent the true variance of the cluster. It always gives a very small value.

After checking the distribution of the input, I think the reason why a small variance was givin by the Training was due to the fact that my data are pretty "discrete", there were a lot of huge peaks in it. Those input are indeed result of a linear transformation happended on a interger input.

Example of the pdf of part of the data on all the dimensions for all classes:

I was wondering if there is anyway for me to transform data look like that where there are so much discrete peaks, in order to use it in GMM in a better way? Or perhaps I should try other method?