1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
|
This file will provide an overview of the BNW code. It is not completely up to date. The information should be correct, but some files might be missing.
At this point, BNW requires three packages that are not currently included in the BNW directory.
These are dot/graphviz; octave; and plotly. The BNW code assumes:
a) dot can be executed using /usr/bin/dot
b) octave can be executed using /usr/bin/octave
c) plotly:
Plotly runs through a python environment for BNW. The python version is 3.6.8 and the plotly version is 4.13.0.
The python environment files are in bnw-env.
The files that need plotly are: cv_plotly.py, kfold_plotly.py, ts_plotly.py, violin_plotly.py, violin_ev_plotly.py, and violin_int_plotly.py.
BNW is currently located at /var/www/html/compbio/BNW_x.x
(The current development version is BNW_1.3).
The main BNW directory contains two basic files (index.html and home.php) and two directories.
A couple of lines in home.php should be modified/updated to point to the correct BNW directory.
downloads: This contains the downloadable version of the BNW structure learning package.
sourcecodes: This contains the files and codes that are used by the webserver.
The main purpose of this file is to provide a brief overview of the files that are contained in 'sourcecodes'.
bnw-env: The python environment for BNW.
1. Directories within sourcecodes:
a) bnt-master: This contains the code for BayesNetToolbox which is used in parameter learning in BNW.
It has been slightly modified to work with Octave instead of MATLAB.
I have also made a couple of changes to ensure that initial parameters are taken directly from the data for discrete nodes.
b) parameter_learning: This contains the MATLAB/Octave code that we have written for parameter_learning.
It also prepares data that has been uploaded to BNW for use with the structure learning code.
c) BNW_workflow_test_files, example_datasets, and examples: These three directories contain files that are used by the tutorials and examples on the BNW homepage.
d) data: The data for files generated by using BNW is written to this directory. It also contains several sub-directories that contain example data and networks.
e) run_scripts: Scripts that run Octave calculations.
f) scripts: Javascript libraries and associated files.
2. Files within sourcecodes:
a) Major BNW php files:
Many of these will be described in BNW_data_flow.txt.
bn_file_load_gom.php: Used in uploading data to be used for structure learning.
create_tiers_gom_part1.php and create_tiers_gom_part2.php: Structural constraint interface.
home_upload.php: Used in uploading a data file and a structure file when the structure is known.
layout_example.php: Main php file for displaying/making predictions with network using example data.
layout.php: Main php file for displaying/making predictions with network using user uploaded data.
net_structure.php: Used in uploading structure file when the network structure is known.
layout_svg_wt.php: Initial display of network structure with edge weights.
layout_svg_no.php: Initial display of network structure without edge weights.
layout_cyto.php: Network visualization that can be used to modify the network structure.
upload_structure_file.php: Used in uploading structure file when the network structure is known.
faq.php
getting_started.php
help.php
home.php
workflow.php
b) Files related to the structure learning package:
build.sh
network_score
structure
run.sh
c) Files related to home page, help files, example data sets, and tutorials:
BNW_overview_new.png
BNW_workflow_net1.htm
BNW_workflow_sci.htm
index.html
example.php
examplefilecopy.sh
d) General html/css/inc files:
header_batchsearch.inc
header_new.inc
js-graph-it.css
js-graph-it.js
my_new_style.css
sf-homepage.css
graph-creator.css
graph-creator.js
e) PHP files that support layout.php:
add_evd.php
add_inv.php
network_layout_evd_2.php
network_layout_evd.php
network_layout_inv_2.php
network_layout_inv.php
f) Files used for cross-validation/making predictions using a test set:
cv_predictions.php, cv_predictions_example.php
-Cross-validations overview page
cross_valid.php, cross_valid_example.php, cv_plotly.py
-Used for leave-one-out cross-validation
kfold_cv_example.php, kfold_cv.php, kfold_plotly.py
-Used for k-fold cross-validation
test_set_predictions.php, test_set_predictions_example.php, ts_plotly.py
-Used with test set predictions.
g) Files used in input checking/error processing
input_error.php
input_error_no_menu.php
input_validate.php
keyval_error.php
h) Files that perform specific functions:
tier_description_processing_gom.php
-Used by create_tiers_gom.php for the structure constraint interface.
clear_example.php, clear.php, filecopy.sh, examplefilecopy.sh
-Used by layout.php to clear entered evidence/intervention
execute_bn_gom.php
-Runs the script (run.sh) that performs structure learning after uploading data/adding constraints
-It is actually called by executionprogress.php
executionprogress.php, runtime_check.php, k_only_table.txt, and maxparent_table.txt
-Used to provide an estimate of how long structure learning will take.
graphviz_structure.php
-Called by net_structure.php and used to generate files when users upload data with a known structure.
mat_structure.php
-Called by add_inv.php and add_inv_example.php when making predictions after an intervention.
-Interventions can change the network structure and this file help account for these changes.
matrix.php
-Allows for display of the structure matrix file.
input_check.php
-Allows for display of the input file and variable description files.
parameter_display.php
-Allows for display of the network parameters of the original data set and after entering evidence/intervention.
enter_netID.php
-Allows for returning to old network after entering the netID.
modify_structure_learning.php, bn_after_upload_gom.php
-Allows for modification of structure learning settings without having to upload the file again.
modified_network.php
-Allows for the direct modification of network structure using the Cytoscape layout.
remove_variables.php, remove_variables_processing.php, remove_variables_processing_default.php
-Allows for the removal of variables after uploading an input file.
-remove_variables_processing_default.php performs structure learning using defail settings.
-remove_variables_processing.php goes to the structural constraint interface.
|