Why do I get different distribution parameters each run?
1 view (last 30 days)
Show older comments
MAHMOUD ALZIOUD
on 29 Apr 2019
Commented: MAHMOUD ALZIOUD
on 30 Apr 2019
Dear All, I have a column vector of 1000 rows, I tried to fit this data into 2_normal mixture distribution using the below code, my question is: Why do I have different parameters every time I run the code, for example the 1st run the mean were (13 and 17), the 2nd run the means became (15 and 16.5)? is there something wrong with my code?
pd = fitgmdist(data, 2);
0 Comments
Accepted Answer
Adam Danz
on 29 Apr 2019
The default initial value starting method in fitgmdist() uses a k-means alogorithm that is not deterministic; it uses probability to jump around to different cluster centers (see step #4 in previous link). That leads to converging on slightly different centroids every time the process is run.
rngState = rng('shuffle');
fitgmdist(...)
% to repeat the same results
rng(rngState)
fitgmdist(...))
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!