Skip to content
Jesse Lingeman edited this page Sep 29, 2013 · 8 revisions

Network Inference Workbench

About

The Network Inference Workbench is a collection of tools and algorithms with a wrapper around them that allows you to run a dataset across a collection of algorithms without writing parsers for each one. It also aims to streamline the process of pipelining algorithms into each other, and of creating consensus networks between algorithms. The interface is small python scripts. There are many demo scripts included that can be used to provide examples of how to load in your data and run the network inference algorithms. The goal is to make an easy to use and flexible solution for bioinformaticians with some programming knowledge.

Installation

Using the virtual machine

NOTE: The VM does not include a version of Matlab, and instead includes Octave. However, several of the algorithms require Matlab run, so a personal or instutional copy of Matlab will have to be installed on the VM before using these algorithms.

The virtual machine is a Ubuntu Linux 12.04 LTS VirtualBox virtual machine. To run it first download a copy of the VirtualBox and install it for your operating system. Then, download a copy of the virtual machine. Unzip the downloaded zip file to where you would like to store the virtual machine. Open VirtualBox and select File->Import Appliance and browse to where the virtual machine was unzipped, and select the .ovf file to import.

After the import process is complete, boot the virtual machine and enter the following user credentials when prompted:

Username: netinf

Password: network

Installing fresh

####Installing on Linux: These instuctions assume that a valid compilation toolchain has been set up for your Linux distribution. Since installation utilities vary by Linux distribution, it is also assumed that you will know how to acquire the various packages necessary via a tool such as apt-get or emerge, or by compiling and installing the packages yourself. As long as the binaries for each package are on your users' PATH, it shouldn't matter how they were installed.

  1. Python 2.5 or greater.

  2. Matlab 2010a or greater.

  3. R

  4. Graphviz

  5. Python requires several other packages to be installed. These are most easily done through the pip tool. To install pip, run:

sudo easy_install pip

Next install the required python packages with the next command:

sudo pip install scipy numpy yard networkx pyparsing=1.5.7 pydot scikit-learn

The installation of scipy and numpy may require other dependencies. If errors are encountered while installing them please try to install them using a package for your distribution from the Scipy Website.

  1. Next we have to make sure that the Matlab binaries are on your PATH. See if they are by simply trying to run the matlab command from the command line. If it works then you are all set. If it does not work then we have to put it on the PATH manually. The best way to do this is to just run the following commands, assuming you are using BASH as your command line:
echo export PATH=$PATH:/path/to/matlab/bin >> ~/.bashrc
source ~/.bashrc

Matlab is usually installed in /opt/matlab-version or something similar. When matlab was installed you should have been asked to select the directory. Replace /path/to/matlab/ with the path to your Matlab install that contains the bin folder.

  1. Install both R and Graphviz, preferably from your distribution's package manager or from the links above.
  2. Install dependency for the Inferelator Pipeline. The Inferelator Pipeline has a specific dependency that is not in the R CRAN database, mi. To install this from the directory you downloaded this software to, run the following two commands:
cd algorithms/inferelator-dream4
R CMD INSTALL mi
  1. Finally, test everything using one of the included demo scripts. To run the MCZ demo script from a terminal in the Network Inference Workspace's main directory, use:
python demo_scripts/TestMCZ.py dream410

This will test the MCZ algorithm on the 10 gene DREAM4 dataset and a series of analysis that will be placed into the output folder with the name being the time and date it was run on.

####Installing on OSX: There are several basic dependencies that need to be set up.

  1. If you haven't already, download and install the OSX command line tools. These are included as part of Apple's XCode, to install from within XCode go to File -> Preferences -> Downloads and click on the "install" button next to "Command Line Tools". If you don't want to install Xcode you can download from Apple's Developer Website after creating a developer account.
  2. Install the SciPy Superpack. This is the easiest way to install Scipy on a Mac.
  3. Install Matlab. Any recent version will do, but make sure that the command line files are on your PATH variable. These can be found in "/Applications/MATLAB_VERSION.app/bin". To add these to your path you can add a line to your .bashrc (or the corresponding file for whichever shell you use). To do this open a terminal and enter the following command:
echo export PATH=$PATH:/Applications/MATLAB_*/bin >> ~/.bashrc

You should test to make sure that this works by opening up a new terminal and typing in the command matlab. It should drop into matlab's command line interface.

  1. Install R. The installation package will set up all of the necessary commandline tools.
  2. Install Graphviz. This tool enables all of the graph visualization tools that this package heavily relies on.
  3. Install python package dependencies. This is done in two steps. First install the python package manager pip with the following command.
sudo easy_install pip

Next install the required python packages with the next command:

sudo pip install yard networkx pyparsing=1.5.7 pydot scikit-learn
  1. Install dependency for the Inferelator Pipeline. The Inferelator Pipeline has a specific dependency that is not in the R CRAN database, mi. To install this from the directory you downloaded this software to, run the following two commands:
cd algorithms/inferelator-dream4
R CMD INSTALL mi
  1. Finally, test everything using one of the included demo scripts. To run the MCZ demo script from a terminal in the software's main directory, use:
python demo_scripts/TestMCZ.py dream410

This will test the MCZ algorithm on the 10 gene DREAM4 dataset and a series of analysis that will be placed into the output folder with the name being the time and date it was run on.

Requirements:

Linux or OSX

Python

SciPy NumPy

R

Matlab

Java

Algorithms

Algorithms for Time-Series Data

Algorithms for Genetic Perturbation Data

Algorithms for Other Data