about summary refs log tree commit diff
path: root/sourcecodes/bnt-master/SLP/misc/inference.m
diff options
context:
space:
mode:
Diffstat (limited to 'sourcecodes/bnt-master/SLP/misc/inference.m')
-rw-r--r--sourcecodes/bnt-master/SLP/misc/inference.m25
1 files changed, 25 insertions, 0 deletions
diff --git a/sourcecodes/bnt-master/SLP/misc/inference.m b/sourcecodes/bnt-master/SLP/misc/inference.m
new file mode 100644
index 00000000..3aef9eeb
--- /dev/null
+++ b/sourcecodes/bnt-master/SLP/misc/inference.m
@@ -0,0 +1,25 @@
+function [proba_post, engin2]= inference(bnet, data, node)
+% Make bayesian inference on data
+% [proba_post, engine]= inference(bnet, data, node)
+%
+% INPUTS :
+% - bnet, the structure of the bayesian network gived by mk_bnet.
+% - data(i,m), node i in case m.
+% - node, the node we interrogating.
+%
+% OUTPUTS :
+% - proba_post, the posteriors probabilities.
+% - engine, the inference engine.
+%
+% francois.olivier.c.h@gmail.com
+
+engine=jtree_inf_engine(bnet);
+[N L]=size(data);
+proba_post=zeros(L,bnet.node_sizes(node));
+for i=1:L
+   evidence(1:N)=data(1:N,i);
+   evidence{node}=[];
+   [engin2, ll]=enter_evidence(engine,evidence);
+   marg=marginal_nodes(engin2,node);
+   proba_post(i,:)=marg.T';
+end
\ No newline at end of file