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 + -
显示快捷键?