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 rng('default'); 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);
Here X is the input matrix and I would like to initialize only the sigma parameter of the GMM to zero. How can i proceed?
I see that you have used the 'Start' argument to initialize your Gaussian Mixture model. Instead of using 'Start' with an array that contains mapping of the observation to its label in which case you cannot specify mu and sigma as they are computed from the result of kmeans operation. You can try to explicitly specify the mu and sigma parameter by using a structure whose field elements are mu and sigma. Also, the documentation for the fitgmdist contains an example where the mu and sigma are initialized manually.
Additionally, I have attached an example code based on your code to get you started where I have assumed a random dataset for X.
dataLength = 5000; muData = [5 30]; stdData = [4 10]; X = [muData(1) + stdData(1)*randn(dataLength/2,1); muData(2) + stdData(2)*randn(dataLength/2,1)]; [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 rng('default'); [~,cInd.mu] = kmeans(X(:), K,'MaxIter', 75536); % fit a GMM model gmInitialVariance = 0.1; initialSigma = cat(3,gmInitialVariance,gmInitialVariance) % cInd.mu=[0;0]; %%if you want to initialize the mu parameter to 0. cInd.Sigma=initialSigma; options = statset('MaxIter', 75536); gmm = fitgmdist(X(:), K,'Start',cInd,'CovarianceType','diagonal','Regularize',1e-5,'Options',options);
Matlabsolutions.com provides guaranteed satisfaction with a
commitment to complete the work within time. Combined with our meticulous work ethics and extensive domain
experience, We are the ideal partner for all your homework/assignment needs. We pledge to provide 24*7 support
to dissolve all your academic doubts. We are composed of 300+ esteemed Matlab and other experts who have been
empanelled after extensive research and quality check.
Matlabsolutions.com provides undivided attention to each Matlab
assignment order with a methodical approach to solution. Our network span is not restricted to US, UK and Australia rather extends to countries like Singapore, Canada and UAE. Our Matlab assignment help services
include Image Processing Assignments, Electrical Engineering Assignments, Matlab homework help, Matlab Research Paper help, Matlab Simulink help. Get your work
done at the best price in industry.