marginal_nodes.m

来自「贝叶斯网络matlab源程序,可用于分类,欢迎大家下载测试」· M 代码 · 共 21 行

M
21
字号
function marginal = marginal_nodes(engine, nodes, t)% MARGINAL_NODES Compute the marginal on the specified query nodes (ff)% marginal = marginal_nodes(engine, i, t)% returns Pr(X(i,t) | Y(1:T)), where X(i,t) is the i'th node in the t'th slice.% If enter_evidence used filtering instead of smoothing, this will return  Pr(X(i,t) | Y(1:t)).if nargin < 3, t = 1; endassert(length(nodes)==1);i = nodes(end);if myismember(i, engine.hnodes)  marginal = pot_to_marginal(engine.marginals{i,t});else  marginal = pot_to_marginal(dpot(i, 1, 1)); % observedendbnet = bnet_from_engine(engine);ss = length(bnet.intra);% we convert the domain to the unrolled numbering system% so that update_ess extracts the right evidence.marginal.domain = nodes+(t-1)*ss;   

⌨️ 快捷键说明

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