Skip to content

ucrbioinfo/deepguide_reborn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DeepGuide Reborn

This is a re-implementation of the original DeepGuide showcased in Baisya, D., Ramesh, A., Schwartz, C. et al. Genome-wide functional screens enable the prediction of high activity CRISPR-Cas9 and -Cas12a guides in Yarrowia lipolytica. Nat Commun 13, 922 (2022). https://doi.org/10.1038/s41467-022-28540-0

This iteration of DeepGuide allows a higher degree of versatility via a configuration file. It also allows pre-training and training the model from scratch by switching modes in config.yaml. Experiments done in our acCRISPR paper were performed using this iteration.

Pre-requisites

  1. Training DeepGuide is orders of magnitude faster on a machine with an Nvidia GPU.
  2. DeepGuide is written in Python. To run it, get Miniconda for your specific operating system https://docs.conda.io/en/main/miniconda.html
  3. Clone this repository by either clicking on the green Code on the top right and clicking "Download ZIP," or downloading Git and then $ git clone https://github.com/AmirUCR/deepguide_reborn.git in your desired directory.
  4. These installation instructions are for Ubuntu 20.04.6 LTS. Create a conda environment and activate it.
conda create -n deepguide python=3.10 -y

conda activate deepguide
  1. Install CUDA and cuDNN with conda and pip.
conda install -c conda-forge cudatoolkit=11.8.0 -y

pip install nvidia-cudnn-cu11==8.6.0.163
  1. Configure the system paths.
mkdir -p $CONDA_PREFIX/etc/conda/activate.d

echo 'CUDNN_PATH=$(dirname $(python -c "import nvidia.cudnn;print(nvidia.cudnn.__file__)"))' >> $CONDA_PREFIX/etc/conda/activate.d/env_vars.sh

echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CONDA_PREFIX/lib/:$CUDNN_PATH/lib' >> $CONDA_PREFIX/etc/conda/activate.d/env_vars.sh
  1. Upgrade pip and install TF.
pip install --upgrade pip

pip install tensorflow==2.12.0

conda install tensorflow-base==2.12.0
  1. Exit the current environment and activate it again. This makes the system paths in step 5 to be initialized.
conda deactivate

conda activate deepguide
  1. Confirm that TF can see the GPU.
python3 -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"

You should see [PhysicalDevice(name='/physical_device:GPU:0', device_type='GPU')] on the last line of the output.

  1. Install the rest of the dependencies for DeepGuide.
conda install pyyaml pandas==2.0.2 scikit-learn matplotlib pydot pydotplus biopython -c conda-forge -y
  1. Run the test input like so: python src/main.py and check the output in data/output/example_run/example_test_cas9_seq_dg1_28nt_predicted_scores.csv
  2. Refer to the config.yaml file where each customizable option of DeepGuide Reborn is explained in detail.

Citation

Genome-wide functional screens enable the prediction of high activity CRISPR-Cas9 and -Cas12a guides in Yarrowia lipolytica. Dipankar Baisya, Adithya Ramesh, Cory Schwartz, Stefano Lonardi, and Ian Wheeldon. Nature Communication, 2022

DOI

About

A reimplementation of the original https://github.com/dDipankar/DeepGuide by Dipankar Ranjan Baisya

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages