problog
This commit is contained in:
parent
b64853fd1a
commit
290ee932ed
@ -549,7 +549,8 @@ init_learning :-
|
|||||||
(
|
(
|
||||||
(user:example(_,_,P,_),P<1,P>0)
|
(user:example(_,_,P,_),P<1,P>0)
|
||||||
->
|
->
|
||||||
set_problog_flag(alpha,1.0);
|
set_problog_flag(alpha,1.0)
|
||||||
|
;
|
||||||
(
|
(
|
||||||
succeeds_n_times((user:example(_,_,P,=),P=:=1.0),Pos_Count),
|
succeeds_n_times((user:example(_,_,P,=),P=:=1.0),Pos_Count),
|
||||||
succeeds_n_times((user:example(_,_,P,=),P=:=0.0),Neg_Count),
|
succeeds_n_times((user:example(_,_,P,=),P=:=0.0),Neg_Count),
|
||||||
@ -557,6 +558,8 @@ init_learning :-
|
|||||||
set_problog_flag(alpha,Alpha)
|
set_problog_flag(alpha,Alpha)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
;
|
||||||
|
true
|
||||||
),
|
),
|
||||||
|
|
||||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||||
@ -592,6 +595,9 @@ set_default_gradient_method :-
|
|||||||
!,
|
!,
|
||||||
format_learning(2,'Theory uses tabling.~nWill use problog_exact/3 as initalization method.~2n',[]),
|
format_learning(2,'Theory uses tabling.~nWill use problog_exact/3 as initalization method.~2n',[]),
|
||||||
set_problog_flag(init_method,(Query,Probability,BDDFile,ProbFile,problog_exact_save(Query,Probability,_Status,BDDFile,ProbFile))).
|
set_problog_flag(init_method,(Query,Probability,BDDFile,ProbFile,problog_exact_save(Query,Probability,_Status,BDDFile,ProbFile))).
|
||||||
|
set_default_gradient_method :-
|
||||||
|
problog_flag(init_method,(gene(X,Y),N,Bdd,graph2bdd(X,Y,N,Bdd))),
|
||||||
|
!.
|
||||||
set_default_gradient_method :-
|
set_default_gradient_method :-
|
||||||
set_problog_flag(init_method,(Query,1,BDD,
|
set_problog_flag(init_method,(Query,1,BDD,
|
||||||
problog_kbest_as_bdd(user:Query,1,BDD))).
|
problog_kbest_as_bdd(user:Query,1,BDD))).
|
||||||
@ -618,6 +624,7 @@ init_one_query(QueryID,Query,Type) :-
|
|||||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||||
% if BDD file does not exist, call ProbLog
|
% if BDD file does not exist, call ProbLog
|
||||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||||
|
trace,
|
||||||
(
|
(
|
||||||
recorded(QueryID, _, _)
|
recorded(QueryID, _, _)
|
||||||
->
|
->
|
||||||
@ -628,7 +635,6 @@ init_one_query(QueryID,Query,Type) :-
|
|||||||
Query =.. [_,X,Y]
|
Query =.. [_,X,Y]
|
||||||
->
|
->
|
||||||
Bdd = bdd(Dir, Tree, MapList),
|
Bdd = bdd(Dir, Tree, MapList),
|
||||||
% trace,
|
|
||||||
graph2bdd(X,Y,N,Bdd),
|
graph2bdd(X,Y,N,Bdd),
|
||||||
rb_new(H0),
|
rb_new(H0),
|
||||||
maplist_to_hash(MapList, H0, Hash),
|
maplist_to_hash(MapList, H0, Hash),
|
||||||
@ -651,7 +657,6 @@ init_one_query(QueryID,Query,Type) :-
|
|||||||
writeln(QueryID),
|
writeln(QueryID),
|
||||||
tree_to_grad(Tree, Hash, [], Grad),
|
tree_to_grad(Tree, Hash, [], Grad),
|
||||||
recordz(QueryID,bdd(Dir, Grad, MapList),_)
|
recordz(QueryID,bdd(Dir, Grad, MapList),_)
|
||||||
)
|
|
||||||
).
|
).
|
||||||
init_one_query(_QueryID,_Query,_Type) :-
|
init_one_query(_QueryID,_Query,_Type) :-
|
||||||
throw(unsupported_init_method).
|
throw(unsupported_init_method).
|
||||||
|
@ -54,6 +54,7 @@ load_mega_clause( Stream ) :-
|
|||||||
*/
|
*/
|
||||||
prolog:load_db(Fs) :-
|
prolog:load_db(Fs) :-
|
||||||
'$current_module'(M0),
|
'$current_module'(M0),
|
||||||
|
retractall(dbloading(_Na,_Arity,_M,_T,_NaAr,_)),
|
||||||
prolog_flag(agc_margin,Old,0),
|
prolog_flag(agc_margin,Old,0),
|
||||||
dbload(Fs,M0,load_db(Fs)),
|
dbload(Fs,M0,load_db(Fs)),
|
||||||
load_facts,
|
load_facts,
|
||||||
@ -76,7 +77,7 @@ dbload(F, _, G) :-
|
|||||||
'$do_error'(type_error(atom,F),G).
|
'$do_error'(type_error(atom,F),G).
|
||||||
|
|
||||||
do_dbload(F0, M0, G) :-
|
do_dbload(F0, M0, G) :-
|
||||||
'$full_filename'(F0, F, G),
|
'$full_filename'(F0, F),
|
||||||
assert(dbprocess(F, M0)),
|
assert(dbprocess(F, M0)),
|
||||||
open(F, read, R),
|
open(F, read, R),
|
||||||
check_dbload_stream(R, M0),
|
check_dbload_stream(R, M0),
|
||||||
@ -92,7 +93,7 @@ check_dbload_stream(R, M0) :-
|
|||||||
).
|
).
|
||||||
|
|
||||||
dbload_count(T0, M0) :-
|
dbload_count(T0, M0) :-
|
||||||
get_module(T0,M0,T,M),
|
gemodule(T0,M0,T,M),
|
||||||
functor(T,Na,Arity),
|
functor(T,Na,Arity),
|
||||||
% dbload_check_term(T),
|
% dbload_check_term(T),
|
||||||
(
|
(
|
||||||
|
Reference in New Issue
Block a user