⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 maximize_params.m

📁 基于贝叶斯网络的源程序
💻 M
字号:
function CPD = maximize_params(CPD, temp)% MAXIMIZE_PARAMS Set the params of a CPD to their ML values (Gaussian)% CPD = maximize_params(CPD, temperature)%% Temperature is currently ignored.if ~adjustable_CPD(CPD), return; endif CPD.clamped_mean  cl_mean = CPD.mean;else  cl_mean = [];endif CPD.clamped_cov  cl_cov = CPD.cov;else  cl_cov = [];endif CPD.clamped_weights  cl_weights = CPD.weights;else  cl_weights = [];end[ssz psz Q] = size(CPD.weights);[ss cpsz dpsz] = size(CPD.weights); % ss = self size = sszif cpsz > CPD.nsamples  fprintf('gaussian_CPD/maximize_params: warning: input dimension (%d) > nsamples (%d)\n', ...	  cpsz, CPD.nsamples);endprior =  repmat(CPD.cov_prior_weight*eye(ssz,ssz), [1 1 Q]);[CPD.mean, CPD.cov, CPD.weights] = ...    clg_Mstep(CPD.Wsum, CPD.WYsum, CPD.WYYsum, [], CPD.WXsum, CPD.WXXsum, CPD.WXYsum, ...	      'cov_type', CPD.cov_type, 'clamped_mean', cl_mean, ...	      'clamped_cov', cl_cov, 'clamped_weights', cl_weights, ...	      'tied_cov', CPD.tied_cov, ...	      'cov_prior', prior);if 0CPD.mean = reshape(CPD.mean, [ss dpsz]);CPD.cov = reshape(CPD.cov, [ss ss dpsz]);CPD.weights = reshape(CPD.weights, [ss cpsz dpsz]);end% Bug fix 11 May 2003 KPM% clg_Mstep collapses all discrete parents into one mega-node% but convert_to_CPT needs access to each parent separatelysz = CPD.sizes;ss = sz(end);% Bug fix KPM 20 May 2003: cpsz = sum(sz(CPD.cps));%if isempty(CPD.cps)%  cpsz = 0;%else%  cpsz = sz(CPD.cps);%enddpsz = sz(CPD.dps);CPD.mean = myreshape(CPD.mean, [ss dpsz]);CPD.cov = myreshape(CPD.cov, [ss ss dpsz]);CPD.weights = myreshape(CPD.weights, [ss cpsz dpsz]);

⌨️ 快捷键说明

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