blob: da265ef552f35b8dfb58e1086df0ecf29d98265a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
function [pot, loglik] = normalize_pot(pot)
% NORMALIZE_POT Convert the SCG potential Pr(X,E) into Pr(X|E) and return log Pr(E).
% [pot, loglik] = normalize_pot(pot)
% Marginalize down to [], so that the normalizing constant becomes Pr(E)
temp = marginalize_pot(pot, []);
[temp2, loglik] = normalize_pot(temp.scgpotc{1});
% Adjust scale factor to reflect the fact that the pot now represents Pr(X | E) instead of Pr(X,E).
scale = -loglik;
if 1
for i=1:pot.dsize
pot.scgpotc{i} = rescale_pot( pot.scgpotc{i}, scale);
end
end
|