Getting Started

The BEELINE pipeline interfaces with the implementations of various algorithms through Docker containers. Please follow this tutorial on how to install docker on Ubuntu 18.04.

Tip

Setup docker to run without sudo using the following shell command

sudo usermod -aG docker $USER

See more details here.

Once docker has been set up correctly, the next step is to create the docker containers for each of the algorithms. The script utils/initialize.sh pulls or builds these containers. Run the following in the terminal

. utils/initialize.sh

Note

This step may take a while!

We recommend using Anaconda for Python. Run the following command to automatically create an Anaconda virtual environment named BEELINE and install necessary libraries

. utils/setupAnacondaVENV.sh

To compute proposed reconstructions using the 14 GRN algorithms on the example dataset, run

python BLRunner.py --config config-files/config.yaml

To compute areas under the ROC and PR curves for the proposed reconstructions, run

python BLEvaluator.py --config config-files/config.yaml --auc

To display the complete list of evaluation options, run

python BLEvaluator.py --help

Project Outline

This tutorial will first explain the structure of the BEELINE repository, with a walkthrough of the different components that the user can customize.

BEELINE
|-- inputs/
|-- config-files/
|   `-- config.yaml
|-- BLRun/
|   |-- runner.py
|   |-- sinceritiesRunner.py
|   `-- ...
|-- BLPlot/
|   |-- plotter.py
|   |-- PlotAUPRC.py
|   |-- PlotAUROC.py
|   |-- PlotEPR.py
|   `-- ...
|-- BLEval/
|   |-- evaluator.py
|   |-- BLTime.py
|   `-- ...
|-- Algorithms/
|     |-- SINCERITIES/
|     `-- ...
|-- utils/
|   |-- initialize.sh
|   `-- setupAnacondaVENV.sh
|-- LICENSE
|-- BLRunner.py
|-- BLEvaluator.py
`-- README.md