belprop_polytree_discrete.m

来自「贝叶斯网络的matlab实现。可以创建贝叶斯网络、训练模型」· M 代码 · 共 39 行

M
39
字号
% Make the following polytree, where all arcs point down

% 1   2
%  \ /
%   3
%  / \
% 4   5

N = 5;
dag = zeros(N,N);
dag(1,3) = 1;
dag(2,3) = 1;
dag(3, [4 5]) = 1;

ns = 2*ones(1,N); % binary nodes

onodes = [1 5];

bnet = mk_bnet(dag, ns, 'observed', onodes);

if 0
seed = 0;
rand('state', seed);
randn('state', seed);
end

for i=1:N
  %bnet.CPD{i} = tabular_CPD(bnet, i);
  bnet.CPD{i} = noisyor_CPD(bnet, i);
end

engine = {};
engine{end+1} = jtree_inf_engine(bnet);
engine{end+1} = pearl_inf_engine(bnet, 'protocol', 'tree');
engine{end+1} = pearl_inf_engine(bnet, 'protocol', 'parallel');

[err, time] = cmp_inference_static(bnet, engine, 'maximize', 0, 'check_ll', 1);

⌨️ 快捷键说明

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