wolffd@0: function [engine, ll, niter] = enter_soft_evidence(engine, local_evidence) wolffd@0: % ENTER_SOFT_EVIDENCE Propagate evidence using belief propagation wolffd@0: % [engine, ll, niter] = enter_soft_evidence(engine, local_evidence) wolffd@0: % wolffd@0: % local_evidence{i}(j) = Pr(observation at node i | S(i)=j) wolffd@0: % wolffd@0: % The log-likelihood is not computed; ll = 0. wolffd@0: % niter contains the number of iterations used wolffd@0: wolffd@0: ll = 0; wolffd@0: mrf2 = engine.mrf2; wolffd@0: [bel, niter] = bp_mrf2(mrf2.adj_mat, mrf2.pot, local_evidence, ... wolffd@0: 'max_iter', engine.max_iter, 'momentum', engine.momentum, ... wolffd@0: 'tol', engine.tol, 'maximize', 0, 'verbose', engine.verbose); wolffd@0: engine.bel = bel;