mdn2gmm.m

来自「The goal of SPID is to provide the user 」· M 代码 · 共 42 行

M
42
字号
function gmmmixes = mdn2gmm(mdnmixes)%MDN2GMM Converts an MDN mixture data structure to array of GMMs.%%	Description%	GMMMIXES = MDN2GMM(MDNMIXES) takes an MDN mixture data structure%	MDNMIXES containing three matrices (for priors, centres and%	variances) where each row represents the corresponding parameter%	values for a different mixture model  and creates an array of GMMs.%	These can then be used with the standard Netlab Gaussian mixture%	model functions.%%	See also%	GMM, MDN, MDNFWD%%	Copyright (c) Ian T Nabney (1996-2001)%	David J Evans (1998)% Check argument for consistencyerrstring = consist(mdnmixes, 'mdnmixes');if ~isempty(errstring)  error(errstring);endnmixes = size(mdnmixes.centres, 1);% Construct ndata structures containing the mixture model information.% First allocate the memory.tempmix = gmm(mdnmixes.dim_target, mdnmixes.ncentres, 'spherical');f = fieldnames(tempmix);gmmmixes = cell(size(f, 1), 1, nmixes);gmmmixes = cell2struct(gmmmixes, f,1);% Then fill each structure in turn using gmmunpak.  Assume that spherical% covariance structure is used.for i = 1:nmixes  centres = reshape(mdnmixes.centres(i, :), mdnmixes.dim_target, ...    mdnmixes.ncentres)';  gmmmixes(i) = gmmunpak(tempmix, [mdnmixes.mixcoeffs(i,:), ...      centres(:)', mdnmixes.covars(i,:)]);end

⌨️ 快捷键说明

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