📄 bnmsgpassinitiate.m
字号:
function [nodes, edges] = bnMsgPassInitiate(nodes, edges, root)
% BNMSGPASSINITIATE helper function for lungbayesdemo
% Reference: Neapolitan R., "Learning Bayesian Networks", Pearson Prentice Hall,
% Upper Saddle River, New Jersey, 2004.
N = numel(nodes);
for X = 1:N % for every node
nodes(X).lambda = repmat(1, 1, length(nodes(X).values)); % l(x) = 1
Z = nodes(X).parents;
for pa = 1:length(Z) % for each parent of X
edges(Z(pa),X).lambdaX = ones(1, length(nodes(Z(pa)).values)); % lX(z) = 1
end
Y = nodes(X).children;
for ch = 1:length(Y) % for each child of X
edges(X,Y(ch)).peyeX = ones(1, length(nodes(X).values)); % peyeY(x)
end
end
numRoots = length(root);
for rr = 1:numRoots
for r = 1:length(nodes(root(rr)).values)
nodes(root(rr)).peye(r) = nodes(root(rr)).CPT(r);
nodes(root(rr)).P(r) = nodes(root(rr)).CPT(r);
end
childrenR = nodes(root(rr)).children;
for cr = 1:length(childrenR)
[nodes, edges] = bnMsgPassSendPiMsg(root(rr), childrenR(cr), nodes, edges, []); %A = []
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -