Skip to content
A Framework for Parallel Bayesian Network Structure Learning
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
doc
net
src
test
.gitignore
README.md
__main__.py
data-cluster-old.json
data-cluster-single.json
data-cluster.json
data-multi.json
data-single.json
machines.list
root.list
start.sh

README.md

PyStruct

A Framework for Parallel Bayesian Network Structure Learning

This is the brain child of 3 college students at Montana State University for a semestor long project for Reasoning under Uncertainty a course taught by Dr. John Sheppard. Feel free to contact any of us for details on the usage and implementation in regards to this algorithm and be sure to check out our paper for more details.

Testing Runbook

python -m cProfile src <dataset name>

Used to test memory impacts and potential pain points when analyzing various datasets.

Cluster Runbook

Server

python net <dataset to run>

Use the <dataset to run> to provide a space separated list of datasets for the system to use. Note: kill can be used to forcefully killed the clients on the cluster.

Client

python src <dataset to run>

To run a single threaded implementation, pass the name of one of the datasets. Otherwise, if no datasets are passed, the client will enter a listening state and attempt to contact the server in hopes for a job

Manager (NOT COMPLETE)

python . (start|stop|update|check|restart)

This can be used to repeatidly update the clients when using the dancer shell configuration.

dsh -f machines.list -r ssh -Mc -- '<command here>’

Use this to execute the commands on each client at the same time. To see further cluster configuration options, please view my scraped together external documentation for details.

Credits

You can’t perform that action at this time.