gmmb_em_init_cmeans1.m

来自「关于高斯混合模型(GMM)的matlab源代码:」· M 代码 · 共 47 行

M
47
字号
 % GMMB_EM_INIT_CMEANS1
 %
 % initS = gmmb_em_init_cmeans1(data, C)
 %
 % Create an initialization structure for EM,
 % called from gmmb_em, see gmmb_em.
 %
 % C-means clustering means, uniform weight and covariance
 %
 % Author(s):
 %    Pekka Paalanen <pekka.paalanen@lut.fi>
 %
 % Copyright:
 %
 %   Bayesian Classifier with Gaussian Mixture Model Pdf
 %   functionality is Copyright (C) 2004 by Pekka Paalanen and
 %   Joni-Kristian Kamarainen.
 %
 %   $Name:  $ $Revision: 1.1 $  $Date: 2004/08/16 15:06:44 $
 
 function initS = gmmb_em_init_cmeans1(data, C)
 
 D = size(data,2);    % dimensions
 if C>1
     [lbl, mu] = gmmb_cmeans(data, C, 15);
     % initialization has random nature, results will vary
 else
     %lbl = ones(size(data, 1), 1);
     mu = mean(data, 1);
 end

 % covariances initialization
 nsigma = covfixer2(diag(diag(cov(data))));
 sigma = zeros(D,D,C);
 for c = 1:C
     sigma(:,:,c) = nsigma;
 end
 
 % weights initialization
 weight = ones(C,1) * (1/C);
 
 initS = struct(...
     'mu', mu.', ...
     'sigma', sigma, ...
     'weight', weight ...
     );

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?