To check out this repository please hg clone the following URL, or open the URL using EasyMercurial or your preferred Mercurial client.

Statistics Download as Zip
| Branch: | Revision:

root / _FullBNT / BNT / CPDs / @discrete_CPD / log_prob_node.m @ 8:b5b38998ef3b

History | View | Annotate | Download (493 Bytes)

1
function L = log_prob_node(CPD, self_ev, pev)
2
% LOG_PROB_NODE Compute sum_m log P(x(i,m)| x(pi_i,m), theta_i) for node i (discrete)
3
% L = log_prob_node(CPD, self_ev, pev)
4
%
5
% self_ev(m) is the evidence on this node in case m.
6
% pev(i,m) is the evidence on the i'th parent in case m (if there are any parents).
7
% (These may also be cell arrays.)
8

    
9
[P, p] = prob_node(CPD, self_ev, pev); % P may underflow, so we use p
10
tiny = exp(-700);
11
p = p + (p==0)*tiny; % replace 0s by tiny
12
L = sum(log(p));