MATLAB GMM by fitgmdist gives different values even after initializing using kmeans

8 次查看(过去 30 天)
So I am trying to compare two Gaussian Mixture Models with two distributions every time I run the program i get different values even after initializing using k-means. Am I missing something??
X = mat_cell;
[counts,binLocations] = imhist(X);
stem(binLocations, counts, 'MarkerSize', 1 );
xlim([-1 1]);
% inital kmeans step used to initialize EM
K = 2; % number of mixtures/clusters
cInd = kmeans(X(:), K,'MaxIter', 75536);
% fit a GMM model
options = statset('MaxIter', 75536);
gmm = fitgmdist(X(:),K,'Start',cInd,'CovarianceType','diagonal','Regularize',1e-5,'Options',options);
  5 个评论
SAFAA ALQAYSI
SAFAA ALQAYSI 2017-9-13
Adem would you please let me know the way you did with GMM and the hierarchical clustering ????
Thanks
Catherine Davey
Catherine Davey 2023-5-7
K-means is not deterministic. Given that K-means will give a different result each time it is run, you cannot use it to ensure identical runs for the GMM algorithm.

请先登录,再进行评论。

回答(1 个)

the cyclist
the cyclist 2017-6-23
Set the seed for the pseudorandom number generation in your code. For example, put the line
rng 'default'
as the first line.
This will give you a pseudorandom sequence, but it will be reproducible.

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by