Introduce set_em_solver and use it
This commit is contained in:
parent
40a72a0a63
commit
f1499f99f3
@ -3,6 +3,7 @@
|
|||||||
[{}/1,
|
[{}/1,
|
||||||
clpbn_flag/2,
|
clpbn_flag/2,
|
||||||
set_clpbn_flag/2,
|
set_clpbn_flag/2,
|
||||||
|
set_em_solver/1,
|
||||||
clpbn_flag/3,
|
clpbn_flag/3,
|
||||||
clpbn_key/2,
|
clpbn_key/2,
|
||||||
clpbn_init_graph/1,
|
clpbn_init_graph/1,
|
||||||
@ -179,6 +180,9 @@ clpbn_flag(use_factors,Before,After) :-
|
|||||||
retract(use_parfactors(Before)),
|
retract(use_parfactors(Before)),
|
||||||
assert(use_parfactors(After)).
|
assert(use_parfactors(After)).
|
||||||
|
|
||||||
|
set_em_solver(Solver) :-
|
||||||
|
set_clpbn_flag(em_solver, Solver).
|
||||||
|
|
||||||
{_} :-
|
{_} :-
|
||||||
solver(none), !.
|
solver(none), !.
|
||||||
{Var = Key with Dist} :-
|
{Var = Key with Dist} :-
|
||||||
|
@ -18,9 +18,6 @@ total_students(4096).
|
|||||||
|
|
||||||
:- ensure_loaded('parschema.pfl').
|
:- ensure_loaded('parschema.pfl').
|
||||||
|
|
||||||
:- set_solver(hve).
|
|
||||||
|
|
||||||
|
|
||||||
professor(p0).
|
professor(p0).
|
||||||
professor(p1).
|
professor(p1).
|
||||||
professor(p2).
|
professor(p2).
|
||||||
|
@ -18,9 +18,6 @@ total_students(256).
|
|||||||
|
|
||||||
:- ensure_loaded('parschema.pfl').
|
:- ensure_loaded('parschema.pfl').
|
||||||
|
|
||||||
:- set_solver(hve).
|
|
||||||
|
|
||||||
|
|
||||||
professor(p0).
|
professor(p0).
|
||||||
professor(p1).
|
professor(p1).
|
||||||
professor(p2).
|
professor(p2).
|
||||||
|
@ -18,9 +18,6 @@ total_students(1024).
|
|||||||
|
|
||||||
:- ensure_loaded('parschema.pfl').
|
:- ensure_loaded('parschema.pfl').
|
||||||
|
|
||||||
:- set_solver(hve).
|
|
||||||
|
|
||||||
|
|
||||||
professor(p0).
|
professor(p0).
|
||||||
professor(p1).
|
professor(p1).
|
||||||
professor(p2).
|
professor(p2).
|
||||||
|
@ -2,16 +2,17 @@
|
|||||||
|
|
||||||
/* We do not consider aggregates yet. */
|
/* We do not consider aggregates yet. */
|
||||||
|
|
||||||
|
:- use_module(library(clpbn/learning/em)).
|
||||||
|
|
||||||
:- [pos:train].
|
:- [pos:train].
|
||||||
|
|
||||||
:- ['../../examples/School/parschema.pfl'].
|
:- ['../../examples/School/parschema.pfl'].
|
||||||
|
|
||||||
:- use_module(library(clpbn/learning/em)).
|
:- set_em_solver(ve).
|
||||||
|
%:- set_em_solver(hve).
|
||||||
%:- clpbn:set_clpbn_flag(em_solver,gibbs).
|
%:- set_em_solver(bdd).
|
||||||
%:- clpbn:set_clpbn_flag(em_solver,jt).
|
%:- set_em_solver(bp).
|
||||||
:- clpbn:set_clpbn_flag(em_solver,ve).
|
%:- set_em_solver(cbp).
|
||||||
%:- clpbn:set_clpbn_flag(em_solver,bp).
|
|
||||||
|
|
||||||
debug_school :-
|
debug_school :-
|
||||||
graph(L),
|
graph(L),
|
||||||
|
@ -4,12 +4,11 @@
|
|||||||
|
|
||||||
:- use_module(library(clpbn/learning/em)).
|
:- use_module(library(clpbn/learning/em)).
|
||||||
|
|
||||||
%:- clpbn:set_clpbn_flag(em_solver,gibbs).
|
:- set_em_solver(ve).
|
||||||
%:- clpbn:set_clpbn_flag(em_solver,jt).
|
%:- set_em_solver(hve).
|
||||||
%:- clpbn:set_clpbn_flag(em_solver,hve).
|
%:- set_em_solver(bdd).
|
||||||
:- clpbn:set_clpbn_flag(em_solver,ve).
|
%:- set_em_solver(bp).
|
||||||
%:- clpbn:set_clpbn_flag(em_solver,bp).
|
%:- set_em_solver(cbp).
|
||||||
%:- clpbn:set_clpbn_flag(em_solver,bdd).
|
|
||||||
|
|
||||||
professor(p0).
|
professor(p0).
|
||||||
professor(p1).
|
professor(p1).
|
||||||
|
@ -2,16 +2,17 @@
|
|||||||
|
|
||||||
/* We do not consider aggregates yet. */
|
/* We do not consider aggregates yet. */
|
||||||
|
|
||||||
|
:- use_module(library(clpbn/learning/em)).
|
||||||
|
|
||||||
:- [pos:train].
|
:- [pos:train].
|
||||||
|
|
||||||
:- ['../../examples/School/school_32'].
|
:- ['../../examples/School/school_32'].
|
||||||
|
|
||||||
:- use_module(library(clpbn/learning/em)).
|
:- set_em_solver(ve).
|
||||||
|
%:- set_em_solver(hve).
|
||||||
%:- clpbn:set_clpbn_flag(em_solver,gibbs).
|
%:- set_em_solver(bdd).
|
||||||
%:- clpbn:set_clpbn_flag(em_solver,jt).
|
%:- set_em_solver(bp).
|
||||||
% :- clpbn:set_clpbn_flag(em_solver,ve).
|
%:- set_em_solver(cbp).
|
||||||
:- clpbn:set_clpbn_flag(em_solver,bp).
|
|
||||||
|
|
||||||
timed_main :-
|
timed_main :-
|
||||||
statistics(runtime, _),
|
statistics(runtime, _),
|
||||||
|
@ -4,12 +4,11 @@
|
|||||||
|
|
||||||
:- use_module(library(clpbn/learning/em)).
|
:- use_module(library(clpbn/learning/em)).
|
||||||
|
|
||||||
%:- set_pfl_flag(em_solver,gibbs).
|
:- set_em_solver(ve).
|
||||||
%:- set_pfl_flag(em_solver,jt).
|
%:- set_em_solver(hve).
|
||||||
%:- set_pfl_flag(em_solver,hve).
|
%:- set_em_solver(bdd).
|
||||||
%:- set_pfl_flag(em_solver,bp).
|
%:- set_em_solver(bp).
|
||||||
%:- set_pfl_flag(em_solver,ve).
|
%:- set_em_solver(cbp).
|
||||||
:- set_pfl_flag(em_solver,bdd).
|
|
||||||
|
|
||||||
:- dynamic id/1.
|
:- dynamic id/1.
|
||||||
|
|
||||||
|
@ -22,6 +22,7 @@
|
|||||||
:- reexport(library(clpbn),
|
:- reexport(library(clpbn),
|
||||||
[clpbn_flag/2 as pfl_flag,
|
[clpbn_flag/2 as pfl_flag,
|
||||||
set_clpbn_flag/2 as set_pfl_flag,
|
set_clpbn_flag/2 as set_pfl_flag,
|
||||||
|
set_em_solver/1,
|
||||||
conditional_probability/3,
|
conditional_probability/3,
|
||||||
pfl_init_solver/5,
|
pfl_init_solver/5,
|
||||||
pfl_run_solver/3
|
pfl_run_solver/3
|
||||||
|
Reference in New Issue
Block a user