This repository has been archived on 2023-08-20. You can view files and clone it, but cannot push or open issues or pull requests.
yap-6.3/packages/CLPBN/examples/learning/prof_params.pfl

55 lines
1015 B
Plaintext
Raw Normal View History

2012-12-12 15:16:30 +00:00
/* Learn distribution for professor database. */
2012-07-03 19:48:13 +01:00
:- use_module(library(pfl)).
:- use_module(library(clpbn/learning/em)).
2012-12-12 15:16:30 +00:00
%:- clpbn:set_clpbn_flag(em_solver,gibbs).
%:- clpbn:set_clpbn_flag(em_solver,jt).
%:- clpbn:set_clpbn_flag(em_solver,hve).
:- clpbn:set_clpbn_flag(em_solver,ve).
%:- clpbn:set_clpbn_flag(em_solver,bp).
%:- clpbn:set_clpbn_flag(em_solver,bdd).
2012-07-03 19:48:13 +01:00
bayes abi(K)::[h,m,l] ; abi_table ; [professor(K)].
bayes pop(K)::[h,m,l], abi(K) ; pop_table ; [professor(K)].
2012-12-12 15:16:30 +00:00
abi_table([0.3, 0.3, 0.4]).
2012-07-03 19:48:13 +01:00
2012-12-12 15:16:30 +00:00
pop_table([0.3, 0.3, 0.4, 0.3, 0.3, 0.4, 0.3, 0.3, 0.4]).
2012-07-03 19:48:13 +01:00
2012-12-12 15:16:30 +00:00
goal_list([
/*
abi(p0,h),
2012-07-03 19:48:13 +01:00
abi(p1,m),
abi(p2,m),
2012-12-12 15:16:30 +00:00
abi(p3,m),
*/
2012-08-13 15:23:36 +01:00
abi(p4,l),
2012-07-03 19:48:13 +01:00
pop(p5,h),
abi(p5,_),
abi(p6,_),
pop(p7,_)]).
2012-08-15 22:01:45 +01:00
professor(p0).
2012-07-03 19:48:13 +01:00
professor(p1).
professor(p2).
professor(p3).
professor(p4).
professor(p5).
professor(p6).
professor(p7).
professor(p8).
timed_main :-
statistics(runtime, _),
main(Lik),
statistics(runtime, [T,_]),
format('Took ~d msec and Lik ~3f~n',[T,Lik]).
main(Lik) :-
goal_list(L),
2012-12-12 15:16:30 +00:00
em(L,0.01,10,_,Lik).
2012-07-03 19:48:13 +01:00