diff options
| author | ziejd2 | 2018-09-13 23:59:20 -0500 |
|---|---|---|
| committer | ziejd2 | 2018-09-13 23:59:20 -0500 |
| commit | e3f7237ffcb19f19db3b68777b5a94b89e07f66a (patch) | |
| tree | 554a8013776ebeae3e2976074020c09c2d1af8b0 /sourcecodes/parameter_learning/parameterLearning.m | |
| parent | a7eb61ff7a09f39bee67014bf24b8919eaccfc19 (diff) | |
| download | BNW-e3f7237ffcb19f19db3b68777b5a94b89e07f66a.tar.gz | |
New parameter learning options
The main change here is in the parameter learning methods. The parameters that are learned at first (i.e., if there is no evidence) are the distributions that are found directly in the data. I had to create or significantly modify several BNT files for this. If there is evidence, the parameters are learned using a Dirichlet prior. This only required a couple of small changes to the BNW parameter learning files.
Diffstat (limited to 'sourcecodes/parameter_learning/parameterLearning.m')
| -rw-r--r-- | sourcecodes/parameter_learning/parameterLearning.m | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sourcecodes/parameter_learning/parameterLearning.m b/sourcecodes/parameter_learning/parameterLearning.m index 3ef6c0b3..2c4a1f9f 100644 --- a/sourcecodes/parameter_learning/parameterLearning.m +++ b/sourcecodes/parameter_learning/parameterLearning.m @@ -4,7 +4,7 @@ function [ bnet ] = parameterLearning( bnet,cases,engine_name ) % % This is very basic now. It could be modified to use different engine % types in the future. Now, I always use the 'jtree_inf_engine'. -% +% with dirichlet priors % % parameterLearning is called by runBN_initial.m, % Predictmultiple.m, and Predictmultipleintervention.m @@ -35,7 +35,8 @@ nnodes = size(dnodes,2)+size(cnodes,2); %make dnodes tabular_CPT for i = 1:size(dnodes,2) - bnet.CPD{dnodes(i)} = tabular_CPD(bnet,dnodes(i)); +% bnet.CPD{dnodes(i)} = tabular_CPD(bnet,dnodes(i)); + bnet.CPD{dnodes(i)} = tabular_CPD(bnet,dnodes(i),'prior_type','dirichlet'); end for i = 1:size(cnodes,2) |
