diff options
Diffstat (limited to 'sourcecodes/parameter_learning/Predictmultiple.m')
| -rw-r--r-- | sourcecodes/parameter_learning/Predictmultiple.m | 87 |
1 files changed, 51 insertions, 36 deletions
diff --git a/sourcecodes/parameter_learning/Predictmultiple.m b/sourcecodes/parameter_learning/Predictmultiple.m index 692c6b24..f03568ef 100644 --- a/sourcecodes/parameter_learning/Predictmultiple.m +++ b/sourcecodes/parameter_learning/Predictmultiple.m @@ -1,57 +1,72 @@ function Predictmultiple(pre) - dfile=strcat(pre,'structure_input.txt'); sfile=dfile; dfile=strcat(pre,'continuous_input.txt'); nnodefile=strcat(pre,'nnode.txt'); + fnnode = fopen(nnodefile,'r'); nnodes = fscanf(fnnode,'%d'); - - -%nnodes=5; Std_flag=true; [labels,cases,bnet]=readInput(dfile,sfile,nnodes,Std_flag); - -%name -%labels -%map - [bnet]=parameterLearning(bnet,cases); -%[predict_mean,predict_sd,q_sq]=looCrossValid(bnet,cases); -fvarfile=strcat(pre,'var.txt'); -fvar = fopen(fvarfile,'r'); - +fvarfile=strcat(pre,'var.txt'); +fvar = fopen(fvarfile,'r'); select_var_new = fscanf(fvar,'%d'); fvardfile=strcat(pre,'vardata.txt'); - fvard = fopen(fvardfile,'r'); - select_var_data_new = fscanf(fvard,'%f'); +means_orig = cell(1,nnodes); +stdevs_orig = cell(1,nnodes); +labels_orig = cell(1,nnodes); +%Read in original means and standard deviations +mapfile = strcat(pre,'map.txt'); +fmap = fopen(mapfile,'r'); +for i=1:nnodes + buffer = fgetl(mapfile); + temp = cell(1,4); + for j=1:4 + [next,buffer] = strtok(buffer); + temp{j} = next; + end + labels_orig{i} = temp{1}; + means_orig{i} = str2num(temp{4}); + stdevs_orig{i} = str2num(temp{3}); +end +fclose(fmap); + +%Need to map the means and stdevs to the correct labels +means = cell(1,nnodes); +stdevs = cell(1,nnodes); +%Read in labels in new order. +labelsnew = cell(1,nnodes); +mapdatafile = strcat(pre,'mapdata.txt'); +fmapdata = fopen(mapdatafile,'r'); +buffer = fgetl(fmapdata); +for i = 1:nnodes + [next,buffer ] = strtok(buffer); + labelsnew{i} = next; +end +fclose(fmapdata); +for i = 1:nnodes + for j = 1:nnodes + if strcmp(labelsnew{i},labels_orig{j}) + means{i} = means_orig{j}; + stdevs{i} = stdevs_orig{j}; + break + end + end +end + + filename=strcat(pre,'net_figure_new.txt'); -drawFigureM(nnodes,bnet,labels,filename,cases,select_var_new,select_var_data_new); - -%quit force; -%marginal_nodes(engine,2) -%marginal_nodes(engine,3) -%marginal_nodes(engine,4) -%marginal_nodes(engine,5) -%evidence{1}=2; -%[engine,loglik]=enter_evidence(engine,evidence) -%marginal_nodes(engine,1) -%marginal_nodes(engine,2) -%marginal_nodes(engine,3) -%marginal_nodes(engine,4) -%marginal_nodes(engine,5) -%evidence{2}=0.6; -%evidence{1}=[]; -%[engine,loglik]=enter_evidence(engine,evidence); -%marginal_nodes(engine,3); -%marginal_nodes(engine,4); -%marginal_nodes(engine,5); -end \ No newline at end of file +drawFigureM(nnodes,bnet,labels,filename,cases,stdevs,means,select_var_new,select_var_data_new); + +writeParameters_ev(pre,bnet,nnodes,labels,cases,stdevs,means,select_var_new,select_var_data_new); + +end |
