enter_evidence.m

来自「Bayes网络工具箱」· M 代码 · 共 25 行

M
25
字号
function [engine, loglik] = enter_evidence(engine, evidence)% ENTER_EVIDENCE Add the specified evidence to the network (jtree)% [engine, loglik] = enter_evidence(engine, evidence)% evidence{i} = [] if if X(i) is hidden, and otherwise contains its observed value (scalar or column vector)bnet = bnet_from_engine(engine);ns = bnet.node_sizes(:);onodes = find(~isemptycell(evidence));pot_type = determine_pot_type(onodes, bnet.cnodes, bnet.dag);if strcmp(pot_type, 'cg')  check_for_cd_arcs(onodes, bnet.cnodes, bnet.dag);end% Evaluate CPDs with evidence, and convert to potentialsN = length(bnet.dag);CPDpot = cell(1,N);for n=1:N  fam = family(bnet.dag, n);  e = bnet.equiv_class(n);  CPDpot{n} = CPD_to_pot(pot_type, bnet.CPD{e}, fam, ns, bnet.cnodes, evidence);end  [clpot, loglik] = enter_soft_evidence(engine, engine.clq_ass_to_node, CPDpot, onodes, pot_type);engine.clpot = clpot; % save the results for marginal_nodes

⌨️ 快捷键说明

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